TioBootServer

概述

TioBootServer 是 Tio 框架的核心启动类,负责初始化和启动 Tio 服务器。它提供了一个结构化的方式来配置和启动你的服务器应用程序。在启动过程中,TioBootServer 将大量的类以静态变量的形式存储,使得开发者可以在框架启动前后进行灵活的配置和操作。

主要功能

  • 初始化和启动: 通过 init 方法初始化服务器配置,并通过 start 方法启动服务器。
  • 动态配置: 开发者可以在框架启动前后,通过获取和设置 TioBootServer 中的静态变量来改变框架的行为。
  • 资源清理: 提供 stop 方法来关闭服务器,并执行注册的销毁方法。

核心方法

init(ServerTioConfig, WsServerConfig, HttpConfig)

初始化 TioBootServer。接收 ServerTioConfigWsServerConfigHttpConfig 作为参数,用于配置服务器的 TCP,WebSocket 和 HTTP 设置。

start(String bindIp, Integer bindPort)

启动服务器。绑定 IP 和端口,并开始接收客户端连接。

stop()

关闭服务器。停止接收新的客户端连接,关闭当前连接,并执行注册的销毁方法。

isRunning()

检查服务器是否正在运行。

addDestroyMethod(Runnable runnable)

添加一个在服务器关闭时执行的方法。这允许开发者注册自定义的资源清理逻辑。

常用类解释

  1. tioServer: 这可能是 T-io 服务器的一个实例。它作为服务器的中心运行点,处理进来的连接、数据以及管理资源。

  2. wsServerConfig: 这代表 WebSocket 服务配置。它包含与 WebSocket 协议相关的设置,如连接超时时间、消息缓冲区大小等。

  3. httpConfig: 类似于wsServerConfig 代表 HTTP 服务配置。包括最大头部大小、会话超时时间等设置。

  4. defaultHttpRequestHandlerDispather: 这是处理 HTTP 请求的默认分发器。它定义了如何处理和路由进来的 HTTP 请求。tio-boot 启动时会设置为 com.litongjava.tio.boot.http.handler.DefaultHttpRequestHandlerDispather

  5. defaultHttpServerInterceptorDispatcher: 这代表 HTTP 拦截器的分发器,可以拦截并处理 HTTP 请求和响应,tio-boot 启动时会设置为 com.litongjava.tio.boot.http.interceptor.DefaultHttpServerInterceptorDispatcher

  6. defaultWebSocketHandlerDispather: 这代表 websocket 的分发器,它定义了如何处理进来的 WebSocket 消息。tio-boot 启动时会设置为 com.litongjava.tio.boot.websocket.handler.DefaultWebSocketHandlerDispather

  7. serverInteceptorConfigure: 这是服务器拦截器的配置设置,允许你为所有进来的请求或消息定义全局规则或行为。需要配合 DefaultHttpRequestHandlerDispather 使用

  8. webSocketRoutes: 定义 WebSocket 连接的路由,每个路由都与不同的行为或处理逻辑相关联。需要配合 DefaultWebSocketHandlerDispather 使用

  9. tioBootServerListener: 这个监听器可能处理与服务器生命周期相关的事件,比如服务器启动、停止或遇到错误时。

  10. tioBootHttpRoutes: 管理 tio-boot http controller 的路由。每个路由指定了不同 HTTP 路径应该如何处理。

  11. httpRoutes: 管理 tio http server hanlder 的路由

  12. serverTcpHandler: 处理 TCP 连接。它负责处理通过 TCP 连接接收到的数据,并可能发送响应。

  13. serverAioListener: 请求 的监听器。这如接受连接、断开连接等.

设置和获取配置

上面这些熟悉都提供了静态的 get 和 set 方法,你可以在需要的时候获取配置或者设置自定义的配置