致力于实现 Http 服务器国产化,smart-http 1.1.5 发布

来源: 投稿
2021-06-09

smart-http 是一款基于 smart-socket 的可编程式 http 应用微内核,同时还是为数不多的专注于服务器领域的国产开源项目。

smart-http 采用了基于状态驱动的算法进行 Http 协议解码,这是一种对初中级开发人员极为友好的算法,以结构化的形式展示完整的 Http 解码过程。与此同时,在 smart-socket 强大通信能力的加持下,smart-http 的性能表现已属于业内顶尖水准。

你可以将 smart-http 开发的程序部署在任何 Java 8 及以上版本的设备上。经过我们的不懈优化, 已经最大限度的降低程序运行期间对于内存和 GC 的开销。smart-http,是一款体现了作为开源人的工匠精神的作品。

开发示例

服务端

public class SimpleSmartHttp {
    public static void main(String[] args) {
        HttpBootstrap bootstrap = new HttpBootstrap();
        bootstrap.pipeline(new HttpServerHandle() {
            @Override
            public void doHandle(HttpRequest request, HttpResponse response) throws IOException {
                response.write("hello world<br/>".getBytes());
            }
        });
        bootstrap.setPort(8080).start();
    }
}

客户端 

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();
    }
}

更新内容

  1. 优化:引入跳跃式解码算法, 提升Http数据帧遍历效率。
  2. 优化:引入字符串常量池,提升解码效率并缓解 GC。
  3. 优化:提升 HttpRouteHandle 对于精准路径的路由匹配速度。
  4. 优化:升级 smart-socket 至最新版 1.5.9。
  5. 新特性:新增单元测试模块。

文档地址

GiteePages:https://smartboot.gitee.io/book/smart-http/

项目地址

Gitee:https://gitee.com/smartboot/smart-http

展开阅读全文
8 收藏
分享
加载中
精彩评论
看标题 哈哈哈哈哈
2021-06-09 13:54
3
举报
“致力于实现 Http 服务器国产化” 哈哈哈。
2021-06-09 12:46
2
举报
最新评论 (18)
可以理解为直接替换tomcat ???
2021-06-10 11:56
0
回复
举报
smart-servlet可以替代tomcat。 https://gitee.com/smartboot/smart-servlet
2021-06-10 12:36
0
回复
举报
为什么出了一个serlvet的smart,却说不能应用于生产?serlvet只是提供了HttpServletRequest和HttpServletResponse的两个接口吧?难道不能直接用servlet的实现类作为装饰者包装吗?
2021-06-10 09:14
0
回复
举报
smart-servlet还处于内测阶段,不建议应用于生产是本着为用户负责考虑。
servlet 是一个比较复杂的体系,不仅仅只有 HttpServletRequest 和 HttpServletResponse,感兴趣可以下载源码了解一下。作为国内首个开源 servlet 容器,希望大家多多支持。
2021-06-10 09:37
0
回复
举报
还可以吧
2021-06-10 09:00
0
回复
举报
我开发了一款.net版的http服务器,目标和你的项目近似
2021-06-10 07:32
0
回复
举报
加油,让那些不看好的人看到国产的力量
2021-06-10 08:41
0
回复
举报
@JasonWcx
请问,是基于TcpListener该类做到么?还是用singalR?
2021-06-10 09:27
0
回复
举报
基于Socket重新解析和封装Http协议,项目为Mozi.HttpEmbedded
2021-06-11 08:07
0
回复
举报
2021-06-09 15:53
0
回复
举报
以为是类似nginx的东西
2021-06-09 14:12
0
回复
举报
看标题 哈哈哈哈哈
2021-06-09 13:54
3
回复
举报
???
2021-06-09 15:11
0
回复
举报
“致力于实现 Http 服务器国产化” 哈哈哈。
2021-06-09 12:46
2
回复
举报
有问题吗?
2021-06-09 15:12
0
回复
举报
没问题,就是提个小建议,同学,下次做期末大作业别搞这么大阵仗。
2021-06-09 18:17
0
回复
举报
Solon 已第一个适配了:solon.boot.smarthttp ,哈哈。

```java
@Controller
public class App{
public static void main(String[] args){
Solon.start(App.class,args);
}

@Get
@Mapping("/")
public String hello(Context c){
return "Hello world!";
}
}
```
2021-06-09 10:15
0
回复
举报
咦,评论重新开放啦。。
2021-06-09 10:38
0
回复
举报
更多评论
18 评论
8 收藏
分享
返回顶部
顶部