目录

从技术和业务的角度梳理

Spring

Spring MVC(解决前后端处理请求,交互的问题)

Spring MyBatis(访问数据库)

Spring Security(用来管理用户权限,解决安全层面的问题)

SSM是项目的基石,绝大多数的请求处理都是基于这些技术的。

其他技术:分别解决不同层面的问题

登录和权限模块

核心

性能

通知

搜索

其他

从运维角度-部署架构


 

8. 2 项目总结

从技术和业务的角度梳理

Spring

不是核心的技术,只是起到一个辅助的作用,进而降低其他技术的难度, 技术的核心是Spring. 在Spring之上整合了很多模块。

Spring MVC(解决前后端处理请求,交互的问题)

Spring MyBatis(访问数据库)

Spring Security(用来管理用户权限,解决安全层面的问题)

SSM是项目的基石,绝大多数的请求处理都是基于这些技术的。

其他技术:分别解决不同层面的问题

登录和权限模块

  • 会话管理(后端记住前后,完成持续的交互, redis, ThreadLoal存储用户信息)
  • Spring Email和Spring MVC中的Interceptor

核心

  • 事务的级别,Spring是如何管理事务的
  • Advice:控制器的通知,用来统一处理异常
  • AOP:记录日志

性能

  • 社交网站中常用的功能,需要高频地访问
  • redis的数据结构,每种适合什么样的业务场景,解决什么样的问题?

通知

关注Kafka框架背后通用的原则,生产者和消费者模式,阻塞队列

搜索

关注Es数据结构,关注索引的数据结构

其他

Caffeine:本地缓存,可以提高性能,但在分布式中存在一定的局限性、要和redis结合在一起

关注线程池(JDK、Spring中的线程池、线程池的几大参数、如何自己实现一个线程池)

从运维角度-部署架构

从网站的更宏观的角度

部署到多台服务器上

8. 2 项目总结

 

请求的资源分两类, 通常由不同的服务器响应。

  • 静态资源(部署到CDN上)
  • 动态资源(需要由controller处理)。

需要从性能,安全性、可靠性多方面加以关注

 

相关文章:

  • 2021-11-21
  • 2021-09-03
  • 2021-07-15
  • 2021-09-12
  • 2021-10-26
  • 2022-12-23
  • 2021-05-18
  • 2021-10-22
猜你喜欢
  • 2021-06-03
  • 2021-08-10
  • 2022-01-15
  • 2021-05-29
  • 2022-12-23
  • 2022-12-23
  • 2021-12-14
相关资源
相似解决方案