大型互联网社区是使用什么架构:1、单节点架构;2、集群架构;3、分布式集群架构。单节点架构是指,在互联网业务发展的初期,通常是一些尝试性的产品探索/试验,而这些需求往往就是需求提出者的一个瞬间想法/点子,衍生完善而来。
一、单节点架构
在互联网业务发展的初期,通常是一些尝试性的产品探索/试验,而这些需求往往就是需求提出者的一个瞬间想法/点子,衍生完善而来。其需要的是快速实现其创意,并快速投放到市场验证,然后不断收集市场反馈,完善整体的产品逻辑,因此,其典型特点就是时效要求高、产品逻辑不够完善、不确定性大。
在这一阶段,对技术架构通常没有太高的要求,只需要实现基本的业务功能就行,从而技术投入自然也就不大,因此,单节点架构是比较适合的。即通常所说的,所有代码写在一个工程中,应用、存储等服务部署在一台机器上。技术人员在这一阶段最关键的在于保持良好的编程习惯、尽量预留演进余地。
二、集群架构
随着业务的发展,对系统的处理能力、高可用性也就提出了越来越高的要求,在单节点的基础上,集群架构应运而生。
在集群架构阶段,引入的技术/组件会慢慢变多,团队成员也会逐渐壮大,到了这一阶段,说明核心产品形态已初步成型,并已有相对稳定的、一定规模的流量,此时,技术团队开始迎来挑战。在这一阶段,技术团队最大的关键问题在于规范制定/团队建设/人才储备。
三、分布式集群架构
随着业务的进一步发展,系统流量越来越大,业务复杂度越来越高,需求迭代越来越频繁,技术团队成员也快速发展(50人以上),此时,团队协作、业务响应效率、系统“三高”诉求等问题日益凸显,集群架构的不足之处日渐明显,此时,分布式集群架构的改造工作,也就需要开始提上日程了。
从集群架构演变到分布式集群架构,业务场景复杂度、技术复杂度都变得极高,繁杂的业务/技术需求,要求一个更专业的团队去整体协作支撑。在这一阶段,技术团队的关键问题在于技术选型/团队协作/工具化自动化/业务重构 。
延伸阅读
SwiftUI生命周期
SwiftUI同UIKit和AppKit的主要区别之一是,SwiftUI的视图(View)是值类型,并不是对屏幕上绘制内容的具体引用。在SwiftUI中,开发者为视图创建描述,而并不实际渲染它们。
在UIKit(或AppKit)中,视图(或视图控制器)有明确的生命周期节点,比如vidwDidload、loadView、viewWillAppear、didAddSubView、didMoveToSuperview等方法,它们本质上充当了钩子的角色,让开发者能够通过执行一段逻辑来响应系统给定的事件。
SwiftUI的视图,本身没有清晰(可适当描述)的生命周期,它们是值、是声明。SwiftUI提供了几个修改器(modifier)来实现类似UIKit中钩子方法的行为。比如onAppear同viewWillAppear的表现很类似。同UIKit的钩子方法的位置有很大的不同, onAppear和onDisappear是在当前视图的父视图上声明的。
将UIKit视图包装成SwiftUI的视图时,我们需要了解两者生命周期之间的不同,不要强行试图找到完全对应的方法,要从SwiftUI的角度来思考如何调用UIKit视图。
文章标题:大型互联网社区是使用什么架构,发布者:E.Z,转载请注明出处:https://worktile.com/kb/p/54043