🎉smart-http v1.1.21 版本发布
1、smart-http 简介
smart-http 是一款可编程式HTTP应用微内核。它是目前市面上为数不多即能严格准守 RFC2616 规范,又兼顾卓越性能的 Http 服务器。
smart-http 完全建立在自研的通信框架 smart-socket 之上,使其有着纯正的国产化血统。该项目对标的是 nginx,高性能、轻量化是其追求和坚持的目标。
严格意义上 smart-http 算不上是一个框架,它更像一个工具类库。开发人员可以基于它封装出契合特定场景的应用框架或解决方案。
模块介绍
模块 | 说明 | 代码量 |
---|---|---|
smart-http-common | 基础通用模块,包括枚举、日志、工具类 | 2300+ |
smart-http-client | HTTP Client编解码和响应式编程设计 | 1400+ |
smart-http-server | HTTP Server和WebSocket的编解码和应用层接口设计 | 2700+ |
smart-http-restful | 基于smart-http-server的简易版 MVC模块(实验性) | 380+ |
smart-http-test | 单测模块 | 1200+ |
2、 版本更新
Maven
<dependency> <groupId>org.smartboot.http</groupId> <artifactId>smart-http-server</artifactId> <version>1.1.21</version> </dependency> <dependency> <groupId>org.smartboot.http</groupId> <artifactId>smart-http-client</artifactId> <version>1.1.21</version> </dependency>
本次更新内容:
httpClient 支持链路复用。
重构httpClient接口设计,改进编码体验。
websocket支持大消息体解码。
websocket支持继续帧解码。
smart-socket版本号调整为:1.5.24
提升restful模块稳定性。
修复静态资源文件缓存时间精度问题。
修复特定情况下出现多个Content-Length的问题。
支持链路复用情况下普通Http请求升级为Websocket。
补充单侧用例。
3、快速上手
3.1 HTTP 服务端
publicclass 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 服务端
publicclass 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客户端
publicclass 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 publicclass 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-broker
基于 smart-socket 实现的 MQTT 3.1.1/5.0 Broker 服务。smart-flow
一款具备可观测性的轻量级业务编排框架。组织地址:?https://smartboot.tech/
代码仓库:?https://gitee.com/smartboot

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
智能制造一体化 v3.9.4 发布,基础服务更新
智能制造一体化管理系统[SpringBoot2 - 快速开发平台],适用于制造业、建筑业、汽车行业、互联网、教育、政府机关等机构的管理。包含文件在线操作、工作日志、多班次考勤、CRM、ERP 进销存、项目管理、EHR、拖拽式生成问卷、日程、笔记、工作计划、行政办公、薪资模块、动态表单、知识库、公告模块、企业论坛、云售后模块、生产模块、系统模块化同步模块等多种复杂业务功能。 有一些小伙伴很好奇最近更新的内容和智能制造有什么关系? 答:目前Skyeye整体在做重构,优先从底层的一些功能开始,所以现在大家看到的和智能制造的联系不是很大,也希望大家能够理解,一个大型的智能制造对底层的依赖性也是非常高的。 智能制造一体化 v3.9.4 发布,更新内容如下: 已完成测试的组件:输入框,下拉框,文本框,上传组件,枚举卡槽,文字分割线,编码规则 已托管到表单布局的功能:角色管理,桌面管理,前台服务配置,编码管理 业务对象新增团队权限控制的参数 表格布局优化,支持template复杂脚本的编写 erp:https://gitee.com/doc_wei01/erp-pro OA:https://gite...
- 下一篇
DjangoAdmin 敏捷开发框架 Django+EleVue 版本 v1.0.0 发布
v1.0.0 更新内容:1、设计、规划和研发基础 RBAC 权限架构;2、编写框架核心底层代码;3、对系统模板进行架构设计及模板继承相关设计;4、研发框架基础模块,如字典、配置、行政区划管理等等常规基础模块;5、设计并研发代码生成器,根据表结构动态解析并生成模块文件和增删改查功能;6、设计并研发一系列其他配套功能很常规使用函数; 项目介绍 一款 Python 语言基于Django、Vue2.x、ElementUI、MySQL等框架精心打造的一款模块化、高性能、企业级的敏捷开发框架,本着简化开发、提升开发效率的初衷触发,框架自研了一套个性化的组件,实现了可插拔的组件式开发方式:单图上传、多图上传、下拉选择、开关按钮、单选按钮、多选按钮等等一系列个性化、轻量级的组件,是一款真正意义上实现低代码开发的敏捷开发框架。 项目特点 模块化、松耦合 模块丰富、开箱即用 简洁易用、快速接入 文档详尽、易于维护 自顶向下、体系化设计 统一框架、统一组件、降低选择成本 开发规范、设计模式、代码分层模型 强大便捷的开发工具链 完善的本地中文化支持 设计为团队及企业使用 内置模块 用户管理:用于维护管理系统的...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2全家桶,快速入门学习开发网站教程
- MySQL8.0.19开启GTID主从同步CentOS8
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- CentOS6,7,8上安装Nginx,支持https2.0的开启