架构经验

2019-07-29  本文已影响0人  飞天的龙王

异步模式:

优缺点:提高客户线程处理吞吐量,解耦;延迟大

代表例子:zk写入,kafka客户端写入

客户线程写入消息到缓冲,后台有一个单独的线程去缓冲拿到消息发送到远端

批量模式:

优缺点:提高客户线程处理吞吐量;延迟大,容易丢失消息

代表例子:kafka客户端写入,批量消息发送

客户线程写入消息到缓冲,当到达一定量级后,后台有一个单独的线程去批量吧缓冲消息发送到远端、

设计:可以配置一个等待时间、或者批次内容阀值

缓存要点:

防止缓存雪崩

缓存不失效(用在对缓存实时性要求不是很高的场景,后台异步更新缓存)

缓存失效后,单机单线程去db捞取,并更新环境,其他线程等待。

业务分层抽象案例:

a. 渠道《-》交互流程《-》业务流程

譬如通过渠道url参数指定不同的交互流程id(譬如flow_id)。 可以实现多种自由配置。

b. 流程《-》环节《-》数据与规则

根据业务抽象、扩展成具体环节服务。 流程可编排环节服务。 每个环节服务中可扩展。环节中可以配置数据源与规则。

需要形成几种标准化流程模式提取:

竞品沟通,与思考总结。(同行竞品,不同行类比)

业务架构的形成,特定业务的划分与提取。抽象化、可扩展化的架构。 然后形成一个总结的方法,可以快速根据总结的架构快速扩展。

需要形成几种标准化流程模式提取。 然后在标准化提起的基础上形成每个标准化的可扩展。

上一篇 下一篇

猜你喜欢

热点阅读