下面这幅图是牛客网项目的架构图,最下层是Spring Boot,表示我们所有的技术都是基于Spring Boot,上面一层是Spring,Spring上面是Spring MVC、Spring MyBatis 和 Spring Security。
通过Spring MVC 解决前后端请求交互的问题,通过Spring MyBatis解决
数据库访问的问题,通过Spring Security来管理我们项目中的安全层面的这个内容来管理我们项目中的权限,这三个技术都是基于Spring之上的。由Spring进行整合。
最上面两层是不同的模块,以及用到的技术:
- 权限模块:Spring Email、Interceptor
- 核心:Advice、AOP、Transaction
- 性能:Redis
- 通知:Kafka
- 搜索:Elasticsearch
- 其它:Quartz、Caffeine
下面从运维的角度,来看整个系统是怎么部署的
什么是CDN服务器?
Content Delivery Network,内容分发服务器,将静态资源(网页、图片、视频等)缓存到离用户更近的服务器上,从而加速内容的传输,减少网络的延迟,提升用户的访问体验。