漫谈大规模交易系统架构设计--Core--Engine (continue)

    做大系统设计,就和切蛋糕一样,把复杂问题简单化。一口吃不了一个胖子,就分块来吃。设计方法无非就以下几种方法:

    一是横向切,最典型的的就是TCP/IP协议;把整个互联网通讯按实现的功能来分成几层,每一层专注自己那层的工作。比如链路层(IP)专门负责发送和接收IP数据报。这样,每层的工作比较明确清晰,实现起来也比较方便。

    二是纵向切,比较典型的就是TCP和UDP的分离。TCP负责可靠信息的传送,UDP负责不可靠但快速的信息传送。大家各负责各的,界限很清晰。

    三是异步脱离。就是将一些外围非实时服务通过消息或事件驱动的方式让他们独立出去,脱离主系统流程。比如日志系统,消息通知系统等都可以独立出去,然后由异步事件或消息的方式将它们和主系统连接起来。

    四是加引擎的方法,把基本功能模块整理出来,做成基本服务。由引擎驱动控制,实现不同应用和流程。

 

    这些方法并不是排它的。一个大系统,通常会把这几种方法结合起来做设计。先按应用范畴纵向切,再按功能范畴横向切;提炼一下基本公用服务,加引擎来实现多种多样的应用;最后把外围系统独立出去,由事件/消息去驱动它们工作。按这个模式去做,你大系统的设计就八九不离十,不会偏差太多。

 

    扯了半天,我们回到引擎。(未完待续)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值