核心概念

控制中心 [ QueenBee ]
控制中心是一个区域的中枢节点,它管理着区域内所有的工作设备。
控制中心可以将计算任务分配给合适的工作节点,并收集任务的执行结果。
控制中心提供两类接口:
工作设备接口: 一套供工作设备使用的 REST API
用户接口: 一套供您(或您的业务系统)使用的 REST API,可以查看工作设备状态,可以管理和执行任务。
工作设备 [ WorkerBee ]
工作设备是若干安装了 WorkerBee 应用的终端,它的特点是分布广、数量大、类型多样。
WorkerBee 会利用终端的空闲网络带宽和计算能力,从控制中心获取任务并在执行后报告结果。
您可以在若干服务器或个人电脑上部署 WorkerBee CLI 程序并运行。也可以在您的移动 APP 中集成 WorkerBee SDK,
在取得最终用户的许可下,正在运行您的 APP 的移动设备就会成为一个工作设备。
对于工作设备,还有一个 能力 的概念。由于工作设备的多样性,不同的设备可能会有能力差别,
我们用一个标签列表来标识工作设备的所有特殊能力,比如可以在浏览器中执行任务,或者它可以用 GPU 进行计算。
任务 [ Job ]
任务是服务端分配给工作节点的基本计算单元,它由您通过接口定义和调用。关于任务还有几个衍生概念:
任务定义: 您可以通过接口定义任务,定义好的任务可以被多次调用。
任务参数: 在任务定义中可以预留一些可变的参数,在调用时提供具体的值。比如访问中国天气网某个城市的天气页面。
任务步骤: 在一个任务定义中,可以有多个步骤,每个步骤完成一个相对独立的子任务。每个步骤还可以利用之前步骤的计算结果。
任务结果: 在任务执行完成后会有任务结果记录任务执行是否成功,如果成功了可能还包含预期的结果数据,如果失败了一定会包含失败原因。
任务触发器: 任务除了通过接口调用,还可以设置自动触发条件让控制中心自动触发。比如每天中午12点定时执行。
本系统不做业务层面的任务编排或调度,比如业务上一个测试某网址在全国的访问延迟的任务,需要业务系统拆分成三十多个任务,