Celery理解

Celery是一个用于处理实时异步任务的分布式系统,由任务生产者、调度队列和任务处理者组成。它涉及中心化与去中心化设计,中心化可能面临单点故障问题,而去中心化则需解决如脑裂等复杂问题。实际应用中,常常采用外部去中心化机制,通过动态选举确保系统的稳定性和容错性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

celery理解:
  • celery是一个分布式系统,多用于处理实时异步问题
  • celery由三部分组成:任务生产者,中间调度队列,任务的处理者
    • 任务生产者会生成任务,把任务放到队列中,队列会根据不同的配置要求把任务分配个处理者处理。
      • 任务生产者并发的存在于分布系统节点中。
      • 分布式系统设计的两大重要内容:"性能”和“容错性”;性能的指标是绝对的,容错性的指标是相对的。
        • 分布系统又分为中心化和去中心化
          • 中心化就是会有一个领导下面有几个员工,领导会给员工分配任务,如果员工任务做完会给他分配新的任务;如果有一个员工宕机,就会把这个员工剔除掉,把他的任务分配给其他的员工。
            • 中心化的弊端就是如果领导宕机,整个集群就会崩溃,为了解决这个问题,大多数中心化系统都主备两个领导的方案,以提高系统的可用性
          • 去中心化就是没有领导,每个节点都一样,但是这样就会导致难以实现节点与节点之间的通信;
            • 去中心化设计中最难的一个问题“脑裂”问题,这种情况的发生率很低,但是后果很严重;脑裂是指一个集群因为网络的故障被分为两个无法通信的集群,此时两个集群各自工作,则可能会产生严重的数据冲突问题。一般遇到脑裂问题,规模较小的集群就会自杀。
          • 实际上完全意义上的去中心化的分布系统并不多见,一般都是采用外部去中心化机制,这种架构的集群中的领导是动态选择出来的,如果领导宕机的话,就会在成员中自行选举新的领导出来。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值