一切皆为插件的开发者工具运行时框架
🧩 核心特性:
- 插件热插拔 (importlib 动态加载)
- 依赖自动解析 (拓扑排序 + 循环检测)
- 企业级稳定 (熔断/降级/重试/隔离)
- 事件驱动 (发布/订阅事件总线)
- 完整配置 (YAML 配置 + 热重载)
35 lines
776 B
Python
35 lines
776 B
Python
"""HTTP TCP 插件入口"""
|
|
from oss.plugin.types import Plugin, register_plugin_type
|
|
from .server import TcpHttpServer
|
|
from .router import TcpRouter
|
|
from .middleware import TcpMiddlewareChain
|
|
|
|
|
|
class HttpTcpPlugin(Plugin):
|
|
"""HTTP TCP 插件"""
|
|
|
|
def __init__(self):
|
|
self.server = None
|
|
self.router = TcpRouter()
|
|
self.middleware = TcpMiddlewareChain()
|
|
|
|
def init(self, deps: dict = None):
|
|
"""初始化"""
|
|
self.server = TcpHttpServer(self.router, self.middleware)
|
|
|
|
def start(self):
|
|
"""启动"""
|
|
self.server.start()
|
|
|
|
def stop(self):
|
|
"""停止"""
|
|
if self.server:
|
|
self.server.stop()
|
|
|
|
|
|
register_plugin_type("HttpTcpPlugin", HttpTcpPlugin)
|
|
|
|
|
|
def New():
|
|
return HttpTcpPlugin()
|