Recommend several sample projects written by yourself
Here are a few sample projects written by myself, mainly using the SSM (Spring+SpringMVC+Mybatis) framework, and the distributed architecture (dubbo+zookeeper). The advantage of the example project is that it is simple and easy to understand. When building a new project, it can be directly used as a scaffold to facilitate rapid development. In addition, the knowledge points involved in the project and those that may be involved in the future will be continuously improved.
The three projects are developed from each other, in order (continuously improving):
1. Elegant SSM architecture (Spring+SpringMVC+Mybatis)
Github address: https://github.com/wosyingjun/beauty_ssm
- Maven
- Spring (IOC DI AOP declarative transaction processing)
- SpringMVC (supports Restful style)
- Hibernate Validate (parameter validation)
- Mybatis (minimum configuration scheme)
- Quartz Time Scheduling
- Redis cache (ProtoStuff serialization)
- Redis Sentinel master-slave high availability solution
- Redis Cluster Cluster High Availability Solution
- Druid (data source configuration sql anti-injection sql performance monitoring)
- Unified exception handling
- JSP JSTL JavaScript
- Sping Shiro permission control (to be improved)
Architecture diagram:
2. Improve the "elegant SSM framework" (page separation + nginx load balancing + tomcat cluster)
Github address: https://github.com/wosyingjun/beauty_ssm_cluster
- Maven
- Spring (IOC DI AOP declarative transaction processing)
- SpringMVC (supports Restful style)
- Hibernate Validate (parameter validation)
- Mybatis (minimum configuration scheme)
- Quartz Time Scheduling
- Unified exception handling
- Redis cache (ProtoStuff serialization)
- Redis Sentinel master-slave high availability solution
- Redis Cluster Cluster High Availability Solution
- Druid (data source configuration sql anti-injection sql performance monitoring)
- Front-end and back-end separation (Html replaces Jsp)
- Nginx static loading, load balancing
- nginx high availability solution based on keepalived
- Tomcat cluster (Redis shared Session)
- Sping Shiro permission control (to be improved)
Architecture diagram:
3. Split the "elegant SSM framework" into a distributed architecture (based on 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 集群高可用方案