smart-http v1.1.2 发布,可编程的国产 Http 应用微内核
smart-http 是一款可编程的 Http 应用微内核,用户可根据自身需求进行 Server 或 Client 的应用开发。
你可以基于它开发 HTTP 代理服务器、网关、静态服务器、http client 工具、性能压测工具等。smart-http 依旧延续着作者一贯秉持的极简、易用、高性能风格,只提供高性能的运行能力和易用的接口设计。把更多的可能性交给开发者,由那些富有创造力的 Java 开发者打造更优秀的 Http 作品。
更新内容
- 优化:升级 smart-socket 至 v1.5.7。
- bugfix:修复 WebSocketDefaultHandle 中的方法名单词拼写错误问题(感谢 @wujiawei0926)。
- bugfix:修复客户端 URI 后仅跟一个问号时的解析错位问题。
使用示例
1. Server 端
public class SimpleSmartHttp { public static void main(String[] args) { HttpBootstrap bootstrap = new HttpBootstrap(); // 普通http请求 bootstrap.pipeline().next(new HttpHandle() { @Override public void doHandle(HttpRequest request, HttpResponse response) throws IOException { response.write("hello world<br/>".getBytes()); } }); // websocket请求 bootstrap.wsPipeline().next(new WebSocketDefaultHandle() { @Override public void handleTextMessage(WebSocketRequest request, WebSocketResponse response, String data) { response.sendTextMessage("Hello World"); } }); bootstrap.setPort(8080).start(); } }
2. Client 端
public class HttpGetDemo { public static void main(String[] args) { HttpClient httpClient = new HttpClient("www.baidu.com", 80); httpClient.connect(); httpClient.get("/") .onSuccess(response -> System.out.println(response.body())) .onFailure(Throwable::printStackTrace) .send(); } }
最后
如果觉得这个项目还不错,请给我们加个 Star。并且非常欢迎大家为这个项目贡献你的想法和代码,开源不易,且行且珍惜。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
smart-socket v1.5.7 发布,高性能国产 AIO 通信框架
smart-socket 是一个 AIO 通信框架,可以快速、轻松地开发 Client/Server 网络应用程序。它大大简化了网络编程难度和复杂度,可广泛应用与各类TCP/UDP的通信场景。 smart-socket 是从许多协议(Http、WebSocket、MQTT、二进制私有协议)的实践中积累了大量宝贵经验,从而凝练成了一款极简、易用、高性能的通信框架。 极简 支持各种传输类型、协议,且仅围绕着两大核心接口(MessageProcessor、Protocol)编程开发。 灵活且可扩展的状态机设计,可以清晰地分离关注点。 核心包代码1478 行,编译后的 jar 包仅 41 KB(如果对此无明显感触,可以比较其他同类项目)。 易用 文档丰富的 Javadoc 、用户指南和示例。 没有额外的依赖,只要求JDK 8及以上版本。 高度可定制化的插件。已内置一些非常实用且开箱即用的插件:SSL/TLS通信、心跳、断链重连、服务指标统计、黑名单、内存池监测。 高性能 更好的吞吐量,更低的延迟 更少的资源消耗 最尽肯能减少不必要的内存拷贝 更新内容 优化:移除共享内存页,简化内存池设计。 优...
- 下一篇
每日一博 | 聊一聊 JAVA 泛型中的通配符 T,E,K,V,?
作者 |glmapper 出处 | https://juejin.im/post/6844903917835419661 前言 Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许开发者在编译时检测到非法的类型。 泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。 泛型带来的好处 在没有泛型的情况的下,通过对类型 Object 的引用来实现参数的“任意化”,“任意化”带来的缺点是要做显式的强制类型转换,而这种转换是要求开发者对实际参数类型可以预知的情况下进行的。对于强制类型转换错误的情况,编译器可能不提示错误,在运行的时候才出现异常,这是本身就是一个安全隐患。 那么泛型的好处就是在编译的时候能够检查类型安全,并且所有的强制转换都是自动和隐式的。 publicclassGlmapperGeneric<T>{privateTt;publicvoidset(Tt){this.t=t;}publicTget(){returnt;}publicstaticvoidmain(String[]args){//...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- 设置Eclipse缩进为4个空格,增强代码规范
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2全家桶,快速入门学习开发网站教程
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- MySQL8.0.19开启GTID主从同步CentOS8
- Red5直播服务器,属于Java语言的直播服务器
- CentOS7,8上快速安装Gitea,搭建Git服务器
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS6,CentOS7官方镜像安装Oracle11G