9 个版本
0.5.5 | 2024 年 6 月 12 日 |
---|---|
0.5.4 | 2024 年 5 月 30 日 |
0.4.4 | 2024 年 5 月 18 日 |
#1974 in 网络编程
每月 109 次下载
47KB
814 行
krossbar-hub
Krossbar 中心总线
二进制程序作为服务连接的中心。在请求时,它创建一个 UDS 对,并将相应的套接字发送到每个对等方,之后这些对等方使用该对进行通信。服务唯一已知的中继点是中心套接字。
中心默认使用 krossbar_bus_common::DEFAULT_HUB_SOCKET_PATH 作为中心套接字路径,以及 krossbar_bus_common::DEFAULT_SERVICE_FILES_DIR 作为服务文件目录。这些可以通过命令行参数进行更改。
创建的套接字具有 0o666 文件权限,以允许服务连接。
服务文件
在服务注册期间以及之后的所有连接请求中,中心使用权限系统检查服务是否被允许执行其尝试执行的操作。
服务文件名标识客户端服务名称。文件本身包含允许注册服务的可执行 glob,以及允许连接到服务的客户端名称列表。
基本服务文件 com.example.echo.service
可能如下所示
{
"exec": "/data/krossbar/*",
"incoming_connections": ["**"]
}
请参阅 lib 示例目录 以获取服务文件示例。
构建
手动构建或使用 cargo install krossbar-bus-hub
进行安装。
用法
Krossbar bus hub
Usage: krossbar-bus-hub [OPTIONS]
Options:
-l, --log-level <LOG_LEVEL>
Log level: OFF, ERROR, WARN, INFO, DEBUG, TRACE [default: TRACE]
-a, --additional-service-dirs <ADDITIONAL_SERVICE_DIRS>
Additional service files directories [default: []]
-s, --socket-path <SOCKET_PATH>
Hub socket path [default: /var/run/krossbar.bus.socket]
-h, --help
Print help
-V, --version
Print version
依赖项
~13–24MB
~351K SLoC