一、web系统架构
1、B/S架构(Browser/Server 浏览器/服务端)
B/S架构又称瘦客户端,更多依赖于浏览器,不需要预先下载软件,显示逻辑交给web浏览器,减少了客户端的压力。
2、C/S架构(Client/Server 客户端/服务端)
C/S架构又称胖客户端,客户端需要实现绝大多数的业务逻辑和界面显示。客户端需要预先下载软件。
二、服务器架构
1、Nginx
Nginx是一个高性能的http服务器,它的作用是负载均衡。用户发送请求首先经过Nginx,Nginx根据现在服务器的负载情况,合理分配请求到具体某一台服务器上,这里就起到一个负载均衡的作用。Nginx本身就是C语言编写的,性能非常好。
2、集群与分布式
单独的个体在逻辑上形成一个整体对外提供服务。
3、主从服务器
以数据库为例,这样的一个场景:用户A修改一个数据,用户B刚好访问这个数据,修改前后访问数据就不同了,这就存在一个同步问题。
所以在实际应用中,一般是通过主从数据库来解决,“写”操作在主数据库完成,也就是增删改,所有“读”操作在从数据库完成。主库修改数据定时同步到从库。
4、微服务器
因为单体结构的问题,催生了微服务的系统架构。单体结构在初期因为用户少,开发快,成本低,所以契合了业务快速发展的需求,但到了某个用户量或时间点,问题就会暴露出来。微服务从技术上来讲,就是把各个业务模块切割开来形成单个进程,独立开发部署上线。
三、web缓存技