业务架构设计

尽量最小化的自包含原则

自包含不光是从开发不会造成相关问题的角度出发,也会布署的扩展延伸有关,一但相关,其实延伸是有些痛苦的。

我们现在能做到微服务级别就可以了。当然,微服务也有大小。

微服务是含独立持久化的。

就是尽量保证微服务对其实的微服务的依赖性降低,最好当然是不依赖。

从设计的思路上考虑,最好是先把大的对象例出来。

然后是对象的分类,这里分为内置的和用户定义的两部分。

然后是根据业务的行为,分析出对象的各种状态。

状态经常是会变化的,分类一般不太会。

这里可以从对象的生命周期的时间轴去看,不同的生命周期,就算是同一个对象,也是可以分在两个微服务中的。

尽量保证一个业务的行为,可以在微服务中完成一个小的闭环。

前面提到了尽量自包含,但实际上是很难的。

不同业务之间,都会依赖一些共享的对象以及它的分类及状态。

各个微服务中,要允许也一定会有冗余的状态或是持久化。

要把这些共享依赖的东东,做个分类,采用不同的技术用段处理。

根据业务性质的不同,可分为即时和非即时性的二类或是当中再加一类。

另外也可分为强一制性及非强一致性,或者是从CAP的角度去分。

关于抽象性,给个例子:

设备的状态

一层,设备只有ON 和OFF。

对应着 ON,再分类成,生产中,待料中,测试中等,状态。

对应着OFF,会有维护中,停机中等,,,,,

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容