14、谋定而动:爬虫项目需求分析与架构设计

你好,我是郑建勋。 这节课,我们来看看爬虫系统的功能与架构。 为了更好地完成爬虫项目,我们需要进入真实的场景中,了解项目的价值、用户的需求,这样我们才能够明白项目应该具备哪些功能,明白为了支撑这些用户需求,我们需要设计出怎样的系统架构。所以这节课,我...

13、智慧之火:详解分布式容错共识算法

你好,我是郑建勋。 上节课,我们说分布式系统总是需要在可用性和数据一致性之间找到平衡,也就是既要确保当少部分节点发生故障时,程序仍然能够正确且正常地运行,又要保证分布式节点之间对某一事件达成共识。其实这并不是一件容易的事情,好在许多容错共识算法为我们...

12、分布式系统设计:数据一致性与故障容错的纠葛

你好,我是郑建勋。 前面几节课,我们介绍了微服务为什么是一种自然演进的架构,也讨论了微服务架构伴随而来的问题。 微服务可以分散到多个机器中,它本身是分布式架构的一种特例,所以自然也面临着和分布式架构同样的问题。除了我们之前介绍的可观测性等问题之外,微...

11、微服务挑战:微服务治理体系与实践

你好,我是郑建勋。 上一节课,我们通过服务架构的演进过程,讲解了微服务的边界、拆分的原则以及服务间的通信。微服务架构是解决大型系统复杂性的一种选择,构建微服务本身并不是目的,我们的选择需要为我们的目标服务。 在构建微服务的过程中,不可避免地会遇到一些...

10、微服务设计:微服务架构与演进

你好,我是郑建勋。 这节课我们来介绍一个重要的系统架构:微服务。 微服务(Microservices)是一种软件架构风格。它以职责单一、细粒度的小型功能模块为基础,并将这些小型功能模块组合成一个复杂的大型系统。 软件开发在短短十余年发生了深刻的变革,...

12526272829243