「软件定义汽车」时代下的SOA架构设计 !
导读:
本文由几何四驱授权发布,作者为赵玉龙。
为了真正实现软件定义汽车、软件驱动创新,从技术角度来看,汽车软件架构需由“面向信号”迈向“面向服务(SOA)”。而SOA架构的灵活性和可扩展性,恰恰与「软件定义汽车」的思路不谋而合,本文一起来看看SOA的架构设计~
1
从「软件定义汽车」到SOA
2
SOA的设计流程
代表功能单元(Represents functional unit)
是自我包含的(self-contained)
是无状态的 (stateless)
使用标准接口进行通讯(uses standardized interfaces to communicate)
对外是一个黑盒子(black box for consumers)
可重用性(reusability)
可以由下层服务组成(can consist of underlying services)
方法(Method):
在服务消费者要求下一个由服务提供者执行的函数
属性(Property):
由服务提供者管理的数据,对消费者可见,可以通过get/set方法操作,并且可以在有变动的情况下收到通知
事件(Event):
表示一块数据的更新。服务提供者决定何时发送此更新给一个或多个服务消费者
Method:
对于带参数的Method可以使用Client-Server接口
对于带自变量的Fire&Forget Method可以使用Sender-Receiver接口
对于无参数的Fire&Forget Method可以使用Trigger接口
Property:
对于Get/Set操作(对property的读写)可以使用Client-Server接口
对于notifier(由于property改变而触发的事件)可以使用Sender-Receiver接口
Event:
触发事件,可以使用Sender-Receiver接口
3
混合系统的SOA设计
4
结语