一、单台服务器+数据库(原始)
原始架构
二、增加反向代理
反向代理
代理是一个接收和转发请求的过程。正常情况下,「正向代理」代理的对象是客户端,「反向代理」代理的对象是服务端,它完成这些功能:
健康检查功能,确保我们的服务器是一直处于运行状态的
路由转发功能,把请求转发到正确的服务路径上
认证功能,确保用户有权限访问后端服务器
防火墙功能,确保用户只能访问允许使用的网络部分等等
三、引入负载均衡器
引入负载均衡器
反向代理还有另外一个功能:他们也可以充当负载均衡器。
Nginx经过配置,可以反向代理多台服务器。
部署多台Nginx(反向代理服务器),防止宕机,提升系统运行稳定性。
Nginx反向代理以及负载均衡配置参考:https://www.cnblogs.com/sixiweb/p/3988805.html
四、扩展数据库
扩展数据库
负载均衡器的使用使得我们可以在多个服务器之间分配负载,但是现在所有的服务器还是使用的一个数据库进行存储和检索数据。我们可以用同样的方式,再扩展几台数据库出来,减轻存储检索压力,但是这里存在一个数据一致性的问题。
(1)主从模式或者单实例写多副本读
其中一台数据库负责数据写入修改,其他服务器负责读,这个方案的好处是保证了一致性,因为数据只能被单实例一台数据库写入,之后把写入数据同步到其他部分即可,所以该方案适合读多写少的情景。
I、如何进行同步?
同步机制
&nb

本文详细介绍了高并发问题的解决方案,从单台服务器+数据库开始,逐步引入反向代理、负载均衡器、数据库扩展、微服务架构、缓存和CDN,以及消息队列等技术,旨在实现系统的高可用性和可扩展性。通过这些策略,系统能够处理百万级访问量,保证服务稳定和高效。
最低0.47元/天 解锁文章
604

被折叠的 条评论
为什么被折叠?



