典型大型互联网应用系统所使用的常见技术方案
一个典型的大型互联网应用系统嗦面临的挑战有以下几点:
系统规模庞大,内部耦合严重,开发效率低。
系统耦合严重,牵一发动全身,后续修改和扩展困难。
系统逻辑复杂,容易出问题,出问题后很难排查和修复。
因此我们需要通过架构设计来达到以下几点来解决这些问题:
高性能
高可用
可扩展
为达到高性能我们可以采取的技术方案有:
搭建高性能数据库:读写分离,分库分表。
搭建高性能的NoSQL。
搭建高性能缓存架构。
搭建高性能负载均衡(DNS负载均衡、硬件负载均衡、软件负载均衡)。
使用异步非阻塞编程模型。
为达到高可用我们可以采取的技术方案有:
搭建存储双机高可用架构:主备、主从、主备/主从切换和主主。
搭建数据集群和数据分区。
搭建计算高可用架构:主备、主从和集群。
搭建业务高可用保障:异地多活架构。
为达到可扩展我们可以采取的技术方案有:
面向流程拆分:分层架构。
面向服务拆分:SOA、微服务。
面向功能拆分:微内核架构。
评论