#data #dynamic #plugin #data-points #multicasting

bin+lib datadot

数据点是一个微型的可执行程序,它在启动时指定数据点上执行,可以加入集群,并与群体交互。

1 个不稳定版本

使用旧的 Rust 2015

0.0.1 2019年2月10日

#13#plugins

Apache-2.0

27KB
570 代码行

DataDot

License Coverage Status Docs.rs

Linux: 构建状态 Windows: 构建状态


__寻找一个同步的机器人集群来完成任务?只需启动一个数据点群体.__

数据点是一个微型的可执行程序,它在启动时指定数据点上执行。一旦启动,数据点...

  • 通过命令行与用户交互
  • 与其他数据点通过说话和倾听协同工作
  • 通过不断发现和分析其群体中的数据点来了解自己的数据点

参考资料RUNNING

测试

[machine-name sadp]$ cargo test -- --nocapture

用法

[machine-name datadot]$ ./datadot --help
DataDot

USAGE:
    datadot [OPTIONS] --bind <bind> --data <data>

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

OPTIONS:
    -b, --bind <bind>             The multicast address to bind to (e.g.: 224.0.1.255
    -d, --data <data>             The data that the dot represents
    -x, --plg_dir <plugin_dir>    [Optional] The path to the directory where the plugins are located.
    -p, --port <port>             [Optional] The port number to use for multicasting, (default 7645).

启动 datadot

[machine-name datadot]$ ./datadot -d "Hello" -b 224.0.0.1 -x "./plugins"
dot:listener: joined: 224.0.0.1:7645
dot:listener: is ready

广播消息

get::hi
dot:listener: received request: hi from: 10.172.12.144:54260

调用插件函数(例如:插件使用 core::)

core::datapoint
datapoint is Hello
"processed..."
core::mask
"processed..."
core::datapoint
datapoint is secret
"processed..."

停止 datadot

stop
dot:listener: received request: stop from: 10.172.12.144:35821
dot:listener: stopped!
dropping plugins...
Bye!
注意

依赖关系

~5–7MB
~113K SLoC