🎉smart-http v1.3.0 版本发布
1、smart-http 简介
smart-http 是一款可编程式 HTTP 应用微内核。它是目前市面上为数不多即能严格准守 RFC2616 规范,又兼顾卓越性能的 Http 服务器。
smart-http 建立在自研的通信框架 smart-socket 之上,使其有着纯正的国产化血统。该项目对标的是 nginx,高性能、轻量化是其追求和坚持的目标。
模块介绍
模块 | 说明 | 代码量 |
---|---|---|
smart-http-common | 基础通用模块,包括枚举、日志、工具类 | 2300+ |
smart-http-client | HTTP Client编解码和响应式编程设计 | 1400+ |
smart-http-server | HTTP Server和WebSocket的编解码和应用层接口设计 | 2800+ |
smart-http-restful | 基于smart-http-server的简易版 MVC模块(实验性) | 680 |
smart-http-restful-mybatis | 类似mybatis-spring(实验性) | 25 |
smart-http-test | 单测模块 | 1600+ |
2、 版本更新
Maven
<dependency> <groupId>org.smartboot.http</groupId> <artifactId>smart-http-server</artifactId> <version>1.3.0</version> </dependency> <dependency> <groupId>org.smartboot.http</groupId> <artifactId>smart-http-client</artifactId> <version>1.3.0</version> </dependency>
本次更新内容:
-
改进 HttpClient 的 chunked 判定依据。
-
移除默认的 gzip 适配,改由用户自主编码实现。
-
新增 smart-http-restful-mybatis 模块,支持 Mapper 的 Bean 实例化注入。
-
smart-http-restufl 支持自定义注解的 Bean 实例化。
-
smart-http-restufl 支持反序列化 JSON 数组的请求体。
-
优化 Http 服务异常响应处理逻辑。
-
新增单元测试用例。
-
smart-socket 升级至 1.5.33
3、快速上手
3.1 HTTP 服务端
public class SimpleSmartHttp { public static void main(String[] args) { HttpBootstrap bootstrap = new HttpBootstrap(); bootstrap.httpHandler(new HttpServerHandler() { @Override public void handle(HttpRequest request, HttpResponse response) throws IOException { response.write("hello smart-http<br/>".getBytes()); } }).setPort(8080).start(); } }
3.2 WebSocket 服务端
public class WebSocketDemo { public static void main(String[] args) { //1. 实例化路由Handle WebSocketRouteHandler routeHandle = new WebSocketRouteHandler(); //2. 指定路由规则以及请求的处理实现 routeHandle.route("/", new WebSocketDefaultHandler() { @Override public void handleTextMessage(WebSocketRequest request, WebSocketResponse response, String data) { response.sendTextMessage("接受到客户端消息:" + data); } }); // 3. 启动服务 HttpBootstrap bootstrap = new HttpBootstrap(); bootstrap.webSocketHandler(routeHandle); bootstrap.start(); } }
3.3 Http 客户端
public class HttpGetDemo { public static void main(String[] args) { HttpClient httpClient = new HttpClient("www.baidu.com", 80); httpClient.get("/").header().keepalive(false).done() .onSuccess(response -> System.out.println(response.body())) .onFailure(Throwable::printStackTrace) .done(); } }
3.4 Restful
<dependency> <groupId>org.smartboot.http</groupId> <artifactId>smart-http-restful</artifactId> <version>${smarthttp.version}</version> </dependency>
@Controller public class RestfulDemo { @RequestMapping(value = "/hello", method = RequestMethod.GET) public String helloworld() { return "hello world"; } public static void main(String[] args) throws Exception { RestfulBootstrap bootstrap = RestfulBootstrap.getInstance().controller(RestfulDemo.class); bootstrap.bootstrap().setPort(8080).start(); } }
smartboot 开源组织,一个容易被误认为是在 “重复造轮子” 的低调组织。曾获得 2020 年度 OSC 中国开源项目「优秀 Gitee 组织 」荣誉。
该组织内的明星项目包括:
smart-socket
历时 5 年精炼出 2 千多行代码,轻松实现百万级长连接的 AIO 通信框架。smart-http
基于 smart-socket 实现的 HTTP/1.1 web 服务。smart-servlet
基于 smart-http 实现的 Servlet 3.1 容器服务。smart-mqtt
基于 smart-socket 实现的 MQTT 3.1.1/5.0 Broker&Client 服务。smart-flow
一款具备可观测性的轻量级业务编排框架。组织地址:https://smartboot.tech/
代码仓库:https://gitee.com/smartboot
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
智能制造一体化 v3.10.10 发布,学校模块更新
智能制造一体化管理系统[SpringBoot2 - 快速开发平台],适用于制造业、建筑业、汽车行业、互联网、教育、政府机关等机构的管理。包含文件在线操作、工作日志、多班次考勤、CRM、ERP 进销存、项目管理、EHR、拖拽式生成问卷、日程、笔记、工作计划、行政办公、薪资模块、动态表单、知识库、公告模块、企业论坛、云售后模块、生产模块、系统模块化同步模块等多种复杂业务功能。 有一些小伙伴很好奇最近更新的内容和智能制造有什么关系? 答:目前 Skyeye 整体在做重构,优先从底层的一些功能开始,所以现在大家看到的和智能制造的联系不是很大,也希望大家能够理解,一个大型的智能制造对底层的依赖性也是非常高的。 智能制造一体化 v3.10.10 发布,更新内容如下: 学校模块:学校管理,院系管理,专业管理,班级管理,学生管理,科目管理,教研室管理,章节管理,知识点管理 售后服务模块:工人管理 基础服务模块:讨论贴管理 CRM模块:关联讨论贴 项目模块:关联讨论贴 组件:新增地图组件 解决若干问题。 Skyeye 具备低代码、快捷开发、可视化设计、微服务等特点,方便客户二次开发,极大的提高了开发效率...
- 下一篇
ShopXO 免费开源商城系统 v3.0 版本震撼发布
更新日志 1.【新增】新增微信小程序可以提示完善头像及昵称 2.【新增】用户资料修改支持指定字段 3.【新增】删除商品可以选择仅商品或加图片 4.【新增】用户添加增加前钩子 5.【新增】插件管理新增分类 6.【新增】多语言支持绑定顶级域名、默认语言翻译内容添加 7.【新增】支持独立域名绑定对应语言自动识别 8.【新增】前后端页面body新增唯一标识 9.【新增】动态数据列表新增二维码生成并展示支持 10.【新增】动态数据列表进度条支持 11.【新增】动态数据列表星星评分支持 12.【新增】插件支持快速加入左侧菜单 13.【新增】易票联支付宝和微信支付 14.【新增】OceanPayment信用卡支付 15.【新增】后台操作记录日志 16.【新增】默认主题样式配置插件 17.【新增】商品分类商品模式支持一级分类商品展示 18.【新增】插件入口快速增加 19.【优化】PC用户端整体UI及体验优化 20.【优化】订单提交商品数量限制修复 21.【优化】汇率跟随系统语言自动识别 22.【优化】支付方式支持默认汇率 23.【优化】图片预览组建优化 24.【优化】图片验证码默认传参无效修复 25....
相关文章
文章评论
共有0条评论来说两句吧...