一个书籍电商平台,没有传统电商SPU SKU模型,没有什么高大上的技术也没有复杂的业务逻辑,主要是日常工作总结习惯了Dubbo xml配置 想自己从零开始搭建一个Dubbo微服务,以后需要的时候可以直接去掉业务开箱即用。
- 使用
Spring Boot构建整个项目 去除 XML 配置 - 数据库使用
MySQL和Redis - 采用
Dubbo作为RPC框架 - 使用
dubbo-spring-boot-starter注解驱动 - 使用
mybatis-plus单独作为dao层 - 数据库连接池使用
druid - 开始使用JDK8特性 lambda Stream Optional
- 前后端完全分离
- 消息中间件采用
RocketMQ(待续) Docker容器化多应用部署(待续)
xbook-mall -- 父项目,依赖管理
│ ├─xbook-mall-api -- 接口模块
│ │ ├─xbook-mall-cart-api -- 购物车服务接口
│ │ ├─xbook-mall-order-api -- 订单服务接口
│ │ ├─xbook-mall-product-api -- 产品服务接口
│ │ ├─xbook-mall-redis-api -- Redis服务接口
│ │ ├─xbook-mall-user-api -- 用户服务接口
│ │ ├─xbook-mall-payment-api -- 支付服务接口(待续)
│ │─xbook-mall-common -- 通用工具,公共依赖
│ ├─xbook-mall-dao -- mybatis mapper以及代码生成器
│ ├─xbook-mall-entity -- 数据模型
│ ├─xbook-mall-service-cart -- 购物车Dubbo服务
│ ├─xbook-mall-service-order -- 订单Dubbo服务
│ ├─xbook-mall-service-product -- 产品Dubbo服务
│ ├─xbook-mall-service-redis -- Redis Dubbo服务
│ ├─xbook-mall-service-user -- 用户Dubbo服务
│ ├─xbook-mall-service-payment -- 支付Dubbo服务(待续)
│ ├─xbook-mall-web -- API接口服务
| 服务名称 | Dubbo服务端口 | Rest服务端口 | 完成情况 |
|---|---|---|---|
| xbook-mall-service-cart | 127.0.0.1:20884 | - | OK |
| xbook-mall-service-order | 127.0.0.1:20885 | - | OK |
| xbook-mall-service-product | 127.0.0.1:20883 | - | OK |
| xbook-mall-service-redis | 127.0.0.1:20881 | - | OK |
| xbook-mall-service-user | 127.0.0.1:20882 | - | OK |
| xbook-mall-service-payment | - | - | TODO |
| xbook-mall-web | - | 127.0.0.1:8090 | OK |
git clone git@github.com:AnthonyZero/xbook-mall.git- 创建数据库xbook,执行SQL脚本
- 本地启动redis zookeeper
- 根据自己环境修改application-dev.yml中数据源和redis配置,启动Dubbo服务
- 移步到xbook-mall-web, 启动前端项目

