在Java互联网中,以Spring+Spring MVC+MyBatis (SSM) 作为主流框架。
SSM+Redis的结构图
在这种框架系统中:
Spring IoC 承担了一个资源管理、整合、即插即拔的功能。
Spring AOP 可以提供切面管理,特别是数据库事务管理的功能。
Spring MVC 用于把模型、视图和控制器分层,组合成一个有机灵活的系统。
MyBatis 提供了一个数据库访问的持久层,通过MyBatis-Spring 项目,它便能和Spring 无缝对接。
Redis 作为缓存工具,它提供了高速处理数据和缓存数据的功能,使得系统大部分只需要访问缓存,而无须从数据库磁盘中重复读/写;在一些需要高速运算的场合中,也可以先用它来完成运算,再把数据批量存入数据库,这样便能极大地提升互联网系统的性能和响应能力。
附:
Spring 框架
Spring 框架是 Java 应用最广的框架。它的成功来源于理念,而不是技术本身,它的理念包括 IoC(Inversion of Control,控制反转) 和 AOP (Aspect Oriented Programming,面向切面编程)。
Spring MVC
MVC 模式把应用程序(输入逻辑、业务逻辑和 UI 逻辑)分成不同的方面,同时提供这些元素之间的松耦合。
Model(模型)封装了应用程序的数据和由它们组成的POJO。
View (视图) 负责把模型数据渲染到视图上,将数据以一定的形式展现给用户。
Controller(控制器)负责处理用户请求,并建立适当的模型把它传递给视图渲染。
在Spring MVC 中还可以定义逻辑视图,通过其提供的视图解析器就能够很方便地找到对应的视图进行渲染,或者使用其消息转换的功能。
Spring MVC 中的重点在于它的流行和一些重要的注解,包括控制器、视图解析器、视图等重要内容。
MyBatis
Mybatis 几乎可以替代 JDBC,同时提供了接口编程。它提供自动映射、动态 SQL、级联、缓存、注解、代码和 SQL 分离等特性,使用方便,同时也可以对 SQL 进行优化。可以定制 SQL 从而优化性能,更符合移动互联网高并发、大数据、高性能、高响应的要求。
Redis
Redis 是当前互联网世界最为流程的 NoSQL (Not Only SQL)。NoSQL 在互联网系统中的作用很大,因为它可以在很大程度上提高互联网系统的性能。
响应快速:每秒可以执行大约 110 000 个写入操作,或者 81 000 个读操作,其速度远超数据库。
支持 6 种数据类型:字符串、哈希结构、列表、集合、可排序集合和基数。
操作都是原子的:所有的 Redis 的操作都是原子的,从而确保当两个客户同时访问 Redis 服务器时,得到的是更新后的值(最新值)。在需要高并发的场合可以考虑使用 Redis 的事务,处理一些需要锁的业务。
MultiUtillity 工具:Redis 可以在如缓存、消息传递队列中使用,在应用程序如 Web 应用程序会话、网站页面点击数等任何短暂的数据中使用。