Cloudopt Next 更新至 2.0.8.0-BETA
Cloudopt Next 是一个非常轻量级且现代的、基于 Kotlin 编写的全栈开发框架,同时支持 Java 和 Kotlin,您可以处理Url的解析,数据的封装,Json的输出等等,从根本上减少开发时间、提升开发体验。
官网: https://next.cloudopt.net
Cloudopt Next 主要拥有以下特点:
简单 极简设计,几乎不要任何配置,不依赖 Tomcat、Jetty 等 Web 容器。
异步 基于 vertx 轻松实现高性能的异步服务。
扩展 支持 vertx 体系的各种组件,同时支持通过插件扩展功能,官方也提供了大量好用的插件。
中文 全中文文档、中文社区,帮助中文开发者快速上手。
性能
测试电脑的 CPU 是 2.2 GHz 六核 Intel Core i7,内存为 16 GB 2400 MHz DDR4。
吞吐量参数为用户数 10,循环 10000 次。
框架名称 | 吞吐量 |
Cloudopt Next | 20267.5/sec |
Spring Boot | 10698.2/sec |
Flask | 440.8/sec |
根据性能测试结果:Cloudopt Next 的性能是 Flask 的 50 倍,是 Spring Boot 的两倍。
示例
您可以通过访问Cloudopt Next的官网来查看文档,也可以前往Example查看简单的示例。
路由
让我们来看看一个简单的基于Cloudopt Next的路由:
@API("/") class IndexController : Resource() { @GET fun get(){ renderHtml(view = "index") } }
@API(value = "/") public class IndexController extends Resource { @GET public void get(){ View v = new View(); v.setView("index"); renderHtml(v); } }
启动
fun main(args: Array<String>) { NextServer.run() }
public static void main(String args[]) { NextServer.run(); }
WebSocket
@WebSocket("/websocket") class WebSocketController : WebSocketResource { override fun handler(userWebSocketConnection: ServerWebSocket) { println("Connected!") userWebSocketConnection.writeTextMessage("Hello World") userWebSocketConnection.frameHandler { frame -> println(frame.textData()) } } }
SockJS
@SocketJS("/socket/api/*") class SocketController : SocketJSResource { override fun handler(userSocketConnection: SockJSSocket) { println(userSocketConnection) userSocketConnection.handler {message-> println(message) userSocketConnection.write("Hello world!") } } }
插件
fun main(args: Array<String>) { NextServer.addPlugin(TestPlugin()) NextServer.addPlugin(EventPlugin()) NextServer.run() }
2.0.8.0-BETA
- EventBus 支持 map 类型和 fastjson 的常用对象。
- 修复在读取配置文件 json 对象时,如果取空值会引发报错的问题。
- 获取配置时会去读取配置文件的 json 对象,现在在获取类似 "net.cloudopt.next" 这种多级别的值的之前会将配置文件的 json 对象新生成一份再读取。
- 重命名 NextServer 的 controllers 对象为 resourceTables。
- 优化 Handler 的生命周期,现在执行 afterCompletion 会一定在请求结束后执行,之前在请求时间较长时可能会出现事件丢失的问题。
- 优化了 Handler 的生命周期后,现在错误拦截器也已经支持全局的 Handler。
- 重构了 Handler 类,将其从抽象类改为接口,同时支持 afterRender(),支持在渲染后运行、支持通过返回的布尔值控制是否进行下一步还是直接返回数据。
- 自带的 Handler 都已经对新的 Handler 接口进行了适配。
- 现在如果 Handler 类中没有声明结束请求的话,Next 在执行相关方法时会自动关闭请求。
- 升级 fastjson 的相关依赖。
- 关闭 fastjson 的安全模式,使用白名单模式(目前已内置 Next 相关包名)。
- 增加 cloudopt-next-cache 插件。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
feilong 3.0.9 发布了,让 Java 开发更简便的工具库
feilong 3.0.9 发布了,feilong 是一个让Java开发更简便的工具库。 让你从大量重复的底层代码中脱身,提高开发效率; 让你的代码更简炼,易写、易读、易于维护; 文档地址:http://feilong-core.mydoc.io/ 单元测试数增加至2259个,单元测试覆盖率增加至91%,javadoc比率83% 本次升级共有2处变更, 具体参见3.0.9 milestone 其他 #298修改 SftpFileTransferBeanDefinitionParser javadoc [javadoc] #297✨新增 feilong-net-wxwork 企业微信机器人 [enhancement] 使用feilong 发企业微信机器人 企业微信机器人在日常的使用场景中越来越多, 比如服务器关键任务告警,定时发通知提醒等等, 和短信相比即免费又不像短信逐渐只有接收验证码的功能, 那么问题来了,如何使用feilong来发送企业微信机器人呢? 简单 3 步 第1步: jar 依赖 必要依赖 <dependency> <groupId>com.g...
- 下一篇
Omdia交易观察:IT供应商蜂拥进入托管云服务
来自市场研究公司Omdia的最新报告称,IT供应商过去常常为企业提供云技术,并雇用另外的承包商进行集成和支持服务。IT服务合同分析(ITSCA)看到了一股交易热潮,这些公司提供了自己的托管云,并将多种服务捆绑在其中。 技术供应商围绕托管云展开竞争 专有技术供应商已经接受了混合云服务的新常态。越来越多地,只有通过在托管云解决方案中容纳不同的公共云资源,才能构建规模化的私有云解决方案,正如2020年5月签署的两项主要交易所强调的那样: 印度巴帝电信(Bharti Airtel)选择了IBM和红帽来构建其新的电信网络云。巴帝电信将在这个基于开放标准的云平台上构建其下一代核心网、分析工具以及新的消费者和企业服务。通过使用IBM和红帽的混合云和感知企业能力的组合,巴帝电信计划采用一种开放云架构,该架构使用红帽OpenStack平台用于所有网络工作负载,并将红帽OpenShift用于较新的容器化工作负载。根据包含此类服务的可比行业交易,Omdia估算该交易在五年内的价值为4.75亿美元。 Unisys扩大了与加州州立大学(CSU)关于CloudForte和安全管理服务的合同,通过新的CloudFo...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS7设置SWAP分区,小内存服务器的救世主
- Docker快速安装Oracle11G,搭建oracle11g学习环境