【发布时间】:2018-05-08 17:15:45
【问题描述】:
我有兴趣将 AKKA 用于 IoT 设备方案,但我担心会使单个参与者复杂化。在大多数行业中,设备并不像您在大多数教程中看到的“温度传感器”那么简单。设备代表更复杂的东西,可以具有以下特征:
- 可以表示许多传感器(温度、电流/流体流量、功率输出、开/关值.....
- 可以查询以上每个值的当前值,以及更可能的历史值(趋势、直方图......)
- 可以为任一传感器值设置警报规则
- 每个设备都有一个相当复杂的配置,必须进行管理(什么传感器,什么测量单位)
- 可以发送许多不同的消息类型(传感器读取请求、警报、配置更新......)
所以我的一般问题是,是否有人对演员应该承担的复杂程度有什么好的建议?
谢谢 史蒂夫
【问题讨论】:
-
我认为在这种情况下让传感器成为参与者是个好主意,使用参与者类来抽象不同的传感器。阅读一些关于基于actor系统的领域模型设计的资料
-
您可能希望根据传感器所在的位置而不是传感器本身对事物进行建模。这样,如果传感器发生故障并被更换,则数据(和状态)与位置相关联,而不是与设备相关联。 217 号冷冻柜是否发热更重要,还是传感器 0xADEFA 和 0xAFEDA 发热更重要?