
基本技术 : 在 Java 后端开发中 , 最基础的功能 , 可以通过以下 JavaWeb 技术进行实现 , 如 :
上述技术可以解决 Java 后端开发的功能问题 , 借助上述技术 , 可以 实现 CURD 最基本的操作 , 只是 操作起来比较繁琐 , 并且性能很低 ;
基本技术 只是 解决了 功能实现问题 , 但是实现起来很繁琐 , 不容易维护 和 扩展 , 如果想要 快速开发 , 扩展 , 维护 程序 , 就需要使用 相关框架 技术 ;
常见的框架技术有 :
如果 项目很大 , 开发维护问题解决了 , 那么开始考虑性能问题 , 如果 用户量很多 , 并发量很高 , 就需要解决性能问题 ;
提高性能常用的技术如下 :
早期 Web 架构 : 早期的 Web 服务器 中 , 在 Linux 服务器 中部署 Web 服务器 , 在Web 服务器上部署 J2EE 项目 , 然后通过 Web 服务器 访问数据库 ;
上述架构 中 , 如果用户访问量急剧增加 , Web 服务器 面临 CPU 的压力 , 数据库访问需要进行 IO 操作 , 因此 数据库 面临 数据 IO 压力 ;
访问量增加 , 数据库的 IO 性能逐渐成为限制 整体性能的瓶颈 ;
NoSQL 的出现 , 解决了上述 CPU 和 数据库 IO 压力 ;
将服务器进行 分布式部署 , 部署多台服务器 , 在所有的服务器之上 , 要 部署一个 负载均衡服务器 , 一般是 Nginx 服务器 ;
当 访问 Web 页面时 , 先访问 负载均衡服务器 , 然后 负载均衡服务器 会将 请求 平均分配给 不同的分布式服务器 , 如 : 分布式部署了 4 台服务器 , 有 4 万个请求 , 每个服务器分担一万个请求 ;
客户端 访问 Web 服务器 , 需要使用到 session 缓存 , 如果使用分布式服务器 , 可能 每次请求都是不同的服务器进行响应的 , 那么 session 缓存需要保存到一个地方 , 有下面几种方案 :
NoSQL 数据库的好处是 不需要 进行 文件 IO 操作 , 其数据都保存在 内存 中 , 运行速度很快 ;
NoSQL 可以用于 缓存数据库 , 将频繁查询的数据 , 放在 NoSQL 数据库中 , NoSQL 数据库中查询不到 , 再查询关系型数据库 ;