架构师方法论

####################################
2017.12.13
数据依懒,远近距离,距离越远应该尽量减少依懒

寄存器、方法参数,同上下文、同会话、同线程、同进程、同系统、同子网、同机房、同地区、
在系统设计时,尽量考虑数据依懒的远近程度,尽量做到最自然状态


####################################
系统间
依懒的耦合严重层次
数据源》被动确定协议接口》被动泛协议接口》主动确定协议接口》主动泛协议接口》消息体》接口参数>。。。更

系统设计时,优先考虑低耦合的设计方式
优先使用:
客户端》参数》消息队列通知》业务异步抽象通知》业务接口准确定义通知》数据源
,就此举一反三,也可以同样得出,堆数据,栈数据,在全局数据,线程数据,持久化数据,非持久分数据,内存数据,本机数据,同机房数据,等,这样的一样可以参考此方法做出取舍设计

注:
纵观,依懒在越低层,那么越不利于系统的扩展和解耦

举个粟子:
SSP -> ADX
SSP 本身做了CPT,在向ADX获取竞价广告时,为了使来自ADX的广告不和自有的CPT广告重复,有以下设计方式

1、数据源共享
2、消息队列通知
3、业务协议接口通知(SSP->ADX)或者感知(ADX->SSP)
4、平台协议接口通知ADX(可用消息队列)
5、请求ADX广告接口增加黑名单参数
6、客户端级别处理

综合考虑,6不行,优先从5考虑

另外可以比较一下,2和5的差别
根据迪米特最小设计原则
2方式,ADX会间接依懒SSP的信息(CPT广告,CPT广告生效/失效时间)
5方式,仅依懒了(CPT广告)信息
综上所述,选择5的方式是最好的方式

猜你喜欢

转载自gelongmei.iteye.com/blog/2404178