架构一期 - 甘霖 - Week 4 - 作业一
大型互联网系统使用的技术和手段
互联网系统在业务从小变大发展的过程中,随着功能越来越复杂,使用量越来越大,原有的系统架构将渐渐无法满足新的需要。这些新的需求主要有:
高可用
高性能
可伸缩
易扩展
高安全
为了满足这些需求,有很多手段可以帮助达到目的:
分层,从前端到后端,使职责分开,结构清晰
分割业务模块,细分功能,使得分割的部分高内聚低耦合,易于维护,降低整体复杂度
分割模块后,使用分布式部署,易于扩展,且提高性能,分布式包括:
分布式应用和服务,微服务
分布式静态资源
分布式数据和存储,分库分表,主从备份,冷热分离
分布式计算
缓存,提高性能,比如:CDN,反向代理,本地缓存,远程缓存,单机缓存,集群缓存
集群,提高性能,满足可伸缩性
异步,流量解耦,抹平峰值,提高可用性。但中间件自身也需要高可用
冗余,提高可用性
自动化,提高可用性,如今这部分很多需求已经由云服务商提供服务
然而不能追求高大全,架构需要根据业务情况定制所需要的部分,否则就是过度设计,要考虑投入产出比。
评论