SOA Dubbo分布式架构学习
样例工程:传统的单工程项目(edu-demo)
Maven
J-UI
Struts2
Spring3
MyBatis3
Druid
MySQL5.6
只有一个用户信息表(增、删除、查、改)
改造成Dubbo服务调用方式后的工程结构
edu-common-parent(Maven父配置)
edu-facade-user(用户服务接口)
edu-service-user(用户服务实现)
edu-web-boss(服务消费者)
部署环境规划
192.168.2.61 edu-web-boss(consumer)
192.168.3.71 zookeeper-3.4.6(注册中心)
192.168.3.72 edu-service-user(provider)
192.168.4.201 MySQL5.6(数据库)
架构
一、使用Dubbo是为了实现系统的分布式服务化
二、做成分布式服务架构的项目特点:
1、多个服务
2、多种类型的工程
3、工程间需要相互调用
4、如何实现工程间解耦?(高内聚、低耦合)
5、工程该怎样拆分?
6、如何对大量的工程进行合理有效管理?(高级篇:持续集成)
使用Dubbo进行规模服务化前的工程结构优化
edu-common-parent(Maven父配置)
edu-common (公共工程)
edu-common-config (公共配置工程)
edu-common-core (公共core工程)
edu-common-web (公共web工程)
edu-facade-user(用户服务接口)
edu-service-user(用户服务实现)
edu-web-boss(服务消费者)