基于SpringCloud的微服务架构实战案例项目,以一个简单的购物流程为示例,融合spring cloud 相关组件,如spring-cloud-netflix、swagger等
基于SpringCloud体系实现,简单购物流程实现,满足基本功能:注册、登录、商品列表展示、商品详情展示、订单创建、详情查看、订单支付、库存更新等等。
每个业务服务采用独立的MYSQL数据库,初期考虑用到如下组件:
模块名称 | 端口 | 简介 |
---|---|---|
admin-server | 9002 | 服务监控中心,监控所有服务模块 |
conf-server | 9004 | 分布式配置中心,结合spring-security/rabbitmq同时使用 |
eureka-server | 9003 | 服务注册中心,提供服务注册、发现功能 |
sleuth-server | 9001 | SpringCloud实现的一种分布式追踪解决方案,兼容Zipkin |
zuul-server | 9005 | API网关模块 |
account-service | 8080 | 用户服务,提供注册、登录、地址等服务 |
product-service | 8081 | 商品服务,提供商品列表、详情、库存更新等服务 |
payment-service | 8082 | 支付服务,支付记录 |
order-service | 8083 | 订单服务,提供订单创建、详情、状态变更 |
msg-service | 8084 | 消息处理服务 |
front-app | 8088 | 前端服务,结合swagger2提供API管理(有小问题,swagger页面无法点击单个接口,可通过展开功能打开,待解决) |
1、启动基础eureka/config两个服务后,直接启动front-app服务,通过swagger测试商品列表或详情功能来测试hystrix的功能
1.1、启动hystrix-dashboard服务,输入监控地址http://localhost:8088/hystrix.stream可以查看监控视图
2、输入http://localhost:9005/account-service/acc/login?phone=123123&password=123123查看返回结果
个人主页:https://backkoms.github.io
github:https://github.com/backkoms/web-service-demo
github:https://github.com/backkoms/web-api-demo
基于商场停车收费场景的微服务开发实战专栏地址:https://xiaozhuanlan.com/msa-practice