当前位置: 首页 > 软件库 > 服务器软件 > HTTP服务器 >

smart-http

轻量级的开源 HTTP 服务器
授权协议 Apache
开发语言 Java
所属分类 服务器软件、 HTTP服务器
软件类型 开源软件
地区 国产
投 递 者 景岳
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

smart-http 是一款采用 Java 语言编写的 Http 服务器,有别于业界知名的 Web容器:Tomcat、Undertow,smart-http 并不支持 Servlet 规范,但对于 Http 服务器所需的各项能力,它都具备。

smart-http 天生就是异步非阻塞的 I/O 模型,因为其通信内核采用了 smart-socket。所以无论是性能还是稳定性,都是非常出色的。 在 4核 2.9GHz 的电脑下服务启动耗时毫秒级,压测的 QPS 可达 73W,流量传输效率每秒突破百兆。

更新内容

  1. 支持任意Method的Http请求(GET、POST、PUT、自定义)
  2. 提供了URL路由组件,可以快速搭建一套静态服务器。
  3. 支持部分RFC2612规范,后续会逐渐完善。
  4. 支持Https协议,由smart-socket为其赋能。
  5. 具备文件上传的能力。
  6. 支持 websocket

快速体验

  1. 在您的Maven工程中引入smart-http依赖。
    <dependency>
        <groupId>org.smartboot.http</groupId>
        <artifactId>smart-http-server</artifactId>
        <version>1.0.13</version>
    </dependency>

     

  2. 拷贝以下代码并启动。
    public class SimpleSmartHttp {
        public static void main(String[] args) {
            HttpBootstrap bootstrap = new HttpBootstrap();
            //http消息
            bootstrap.pipeline().next(new HttpHandle() {
                public void doHandle(HttpRequest request, HttpResponse response) throws IOException {
                    response.write("hello world".getBytes());
                }
            });
            //websocket消息
            bootstrap.wsPipeline().next(new WebSocketHandle() {
                public void doHandle(WebSocketRequest request, WebSocketResponse response) throws IOException {
                    response.sendTextMessage("hello world");
                }
            });
            bootstrap.setPort(8080).start();
        }
    }

     

  3. 浏览器访问:http://localhost:8080/ 或采用ws客户端请求ws://127.0.0.1:8080
  • Smart-doc教程 一、基础入门: 首先第一个要推荐的绝对是官方wiki文档,因为smart-doc的更新速度很快,网上的教程或者介绍大多是2.0版本之前的,而且因为比较新这个工具,所以资源也比较少,因此以下的学习分享基本上都来自文档和官方QQ群大佬的指导。 官方Gitee wiki 二、开始使用 1. 使用前需要了解一下javadoc的一个基本写法 /** * 重置工程下指定用户

 相关资料
  • 我们一般通过 SSH 进行授权访问,通过 git:// 进行无授权访问,但是还有一种协议可以同时实现以上两种方式的访问。 设置 Smart HTTP 一般只需要在服务器上启用一个 Git 自带的名为 git-http-backend 的 CGI 脚本。 该 CGI 脚本将会读取由 git fetch 或 git push 命令向 HTTP URL 发送的请求路径和头部信息,来判断该客户端是否支持

  • 我们一般通过 SSH 进行授权访问,通过 git:// 进行无授权访问,但是还有一种协议可以同时实现以上两种方式的访问。 设置 Smart HTTP 一般只需要在服务器上启用一个 Git 自带的名为 git-http-backend 的 CGI 脚本。 该 CGI 脚本将会读取由 git fetch 或 git push 命令向 HTTP URL 发送的请求路径和头部信息,来判断该客户端是否支持

  • 本章主要介绍: HTTP 协议 Requests 库的使用

  • ?> 完全协程化的Http服务器实现,Co\Http\Server继承自Co\Server,在此不再赘述,只说差异。 与 Http\Server 的不同之处: 可以在运行时动态地创建、销毁 对连接的处理是在单独的子协程中完成,客户端连接的Connect、Request、Response、Close是完全串行的 !> 需要v4.4.0或更高版本 !> 若编译时开启HTTP2,则默认会启用HTTP2协

  • 程序代码 http_server.php $http = new Swoole\Http\Server("0.0.0.0", 9501); $http->on('request', function ($request, $response) { var_dump($request->get, $request->post); $response->header("Content

  • Introduction This repo contains the code needed to expose the SOMA Smart Shade device over HTTP.The APIs have been designed to work well with this Homebridge/Homekit plugin. Items needed to make it wo