随着产品的快速迭代与用户的飞速增长,很多项目底层的部分也受着较大的跳转,其实比较核心的一点是系统架构。
很多时候,系统架构的设计并不是一成不变,因此多了解外在的系统架构是很有必要的。为了方便大家理解,特意整理了大型项目的架构设计经验,让我们看看这些知名的互联网产品是怎么进行架构设计的。Twitter从建立初期,就搭建了比较基础的系统架构,其主要业务线主要分为两种:一种是关注者发布的新动态,另外一种是你发布的动态被关注者所看到,和多数社区本质是一样的,每个用户都有相对个性的动态。而网站在初期采用的也是经典的三层架构:表现层、数据层、逻辑层,除此之外,也加入缓存机制,主要是为了数据量的优化。09年推出的新浪微博,其初期的产品框架和twitter还是很类似的,业务线也没本质上去的区别。但随着产品形态的转变,微博在推荐系统上的架构也发生很大变化,着重突出用户关系与内容传播方面。同时不同内容的表现层也使用数据类型发生较大变化。而在在此发展过程的推荐系统的三个阶段:独立式1.0、分层式2.0与平台式3.0。除了基本的架构服务外,和社区模式不同的是,微信不存在关注与被关注者的信息,但会突出功能属性的并发,如摇一摇,漂流瓶等,同时更多在于群组多模式的消息类型(语音、图片)。基于腾讯良好的技术储备,微信更注重敏捷的流程,也就是反复验证迭代,找到有利的架构设计。微信架构设计的四大法器:大系统小做、让一切可扩展、要有基础组件、轻松上线。知乎在14年开始就已经成为国内第三大的UGC社区(前两个为百度贴吧与豆瓣),每秒的并发也达到较高的数量。初期是用python搭建的后台,采用也是云主机的方式,这也是快速开发、节约成本的思路。11年上线申请注册后,知乎开始扩散海量的用户,其本身的日志数量也发生较大的变化,而架构设计围绕的核心也在日志系统,主要表现在分布式、集中存储、实时等方面。荔枝 FM 也是在业务的变动不断改进自身的架构策略,最终形成了“南北”向的机房分发。其实道理也很简单,数据的传输与实时性会列入架构设计的核心因素。在其架构设计中,荔枝FM架构团队也经过了多次业务调研与分析,最终得到较稳定的系统。扩展阅读:《荔枝FM架构师刘耀华:异地多活IDC机房架构》
商品类的搜索模式与搜索引擎有很多相同之处,除了超高量的搜索频率外,京东也更注重用户的数据管理业务。而商品的分类也从单一的模式分为多项重组,可以说又有自己的业务特殊。搜索类系统架构主分为:. 离线信息处理系统、索引系统、搜索服务系、反馈和排序系统。1号店在起初阶段也是采用基本的三层架构业务,随后由于数据量的变动做了多次调整与优化。可以看到的是,充足的架构准备与对自身业务的深入分析使得服务逐渐稳定,更多的是对数据业务的拆分,这也是值得中小企业学习的一点。扩展阅读:《1号店交易系统架构如何向「高并发高可用」演进》
通过滴滴在业务初期,也并不是趋于系统完善的状态,时常出现宕机状况,这也导致其业务发展得较为缓慢。随后技术架构整体调整后,滴滴采用精简的方式支撑公司业务。而后在稳定性方面可以说是顺畅,可以看到的是,架构的设计也并不是机器越多越好,代码的优化与配置的合理高效应用也是关键因素。不得不承认其架构的成熟与强大。随着互联网的飞速,系统架构会越来越受到重视,无论对于初创公司还是成熟的互联网公司,业务的“后勤保障”永远是重之至重,但没有已成不变的业务,因此需要根据自家的产品现状进行不断调优~大型项目系统架构的经验总结
您也可以关注我们的官方微信公众号(ID:ctoutiao),给您更多好看的内容。
声明:本文由墨加科技企业号发布,依据企业号用户协议,该企业号为文章的真实性和准确性负责。创头条作为品牌传播平台,只为传播效果负责,在文章不存在违反法律规定的情况下,不继续承担甄别文章内容和观点的义务。