`
eric_weitm
  • 浏览: 235946 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

单机与分布式的组件差异

 
阅读更多

 一、单机程序

    1、用内存进程队列实现解耦合和异步(观察者模式),

    2、用数据库来管理数据,

    3、用锁和条件来同步线程,

    4、用内存存储数据,

    5、用多线程提高并发,

    6、防止被kil掉(多个进程之间彼此守护,在合适的时候互相拉起)

 

    二、分布式环境下:

    1、消息队列 mq实现异步化(顶住流量洪峰)和解耦(适合彼此调用关系非常复杂的场景),

    2、数据库hash实现分库分表,ES实现快速查询

    3、分布式锁来同步各个服务(进程)或资源(比如db),

    4、使用redis等替代内存,

    5、使用多个service的RPC实现扩展性,

    6、使用zookeeper等实现failover,

    7、使用主从复制机制实现高可用

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics