范例项目
这里推荐几个自己写的范例项目,主要采用SSM(Spring+SpringMVC+Mybatis)框架,分布式架构采用的是(dubbo+zookeeper)。范例项目的好处是简单易懂,在架构一个新的项目的时候可以直接当成脚手架来用,方便快速开发,另外项目中涉及到以及未来可能涉及到的知识点都会不断完善。
三个项目是互相发展而来的,依次为(不断完善中):
一、优雅的SSM架构(Spring+SpringMVC+Mybatis)
Github地址:https://github.com/wosyingjun/beauty_ssm
- Maven
- Spring(IOC DI AOP 声明式事务处理)
- SpringMVC(支持Restful风格)
- Hibernate Validate(参数校验)
- Mybatis(最少配置方案)
- Quartz时间调度
- Redis缓存(ProtoStuff序列化)
- Redis Sentinel主从高可用方案
- Redis Cluster集群高可用方案
- Druid(数据源配置 sql防注入 sql性能监控)
- 统一的异常处理
- JSP JSTL JavaScript
- Sping Shiro权限控制(待完善)
架构图:
二、对"优雅的SSM框架"进行完善(页面分离+nginx负载均衡+tomcat集群)
Github地址:https://github.com/wosyingjun/beauty_ssm_cluster
- Maven
- Spring(IOC DI AOP 声明式事务处理)
- SpringMVC(支持Restful风格)
- Hibernate Validate(参数校验)
- Mybatis(最少配置方案)
- Quartz时间调度
- 统一的异常处理
- Redis缓存(ProtoStuff序列化)
- Redis Sentinel主从高可用方案
- Redis Cluster集群高可用方案
- Druid(数据源配置 sql防注入 sql性能监控)
- 前后端分离(Html替代Jsp)
- Nginx静态加载、负载均衡
- 基于keepalived的nginx高可用方案
- Tomcat集群(Redis共享Session)
- Sping Shiro权限控制(待完善)
架构图:
三、将"优雅的SSM框架"拆分为分布式架构(基于dubbo+zookeeper)
Github地址:https://github.com/wosyingjun/beauty_ssm_dubbo
Dubbo的简单介绍和部署:http://wosyingjun.iteye.com/blog/2320127
- Maven(模块化构建)
- Spring(IOC DI AOP 声明式事务处理)
- SpringMVC(支持Restful风格)
- Hibernate Validate(参数校验)
- Mybatis(最少配置方案)
- Quartz时间调度
- Redis缓存(ProtoStuff序列化)
- Redis Sentinel主从高可用方案
- Redis Cluster集群高可用方案
- 基于keepalived的nginx高可用方案
- Druid(数据源配置 sql防注入 sql性能监控)
- Zookeeper高可用集群方案
- Dubbo+Zookeeper分布式服务框架
- 合理的分布式服务划分(common+api+service+web+mq)
- dubbo服务设计原则、集群、负载均衡、线程模型
- 资源调度和治理中心(SOA)(dubbo-admin)
- 服务监控方案(dubbo-monitor)
- 分布式系统中的异常处理
- 分布式事务
- 分布式锁(待完善)
- 消息中间件 ActiveMQ 的引入
- ActiveMQ 集群高可用方案
架构图:
生命不息,折腾不止!