-
Notifications
You must be signed in to change notification settings - Fork 20
Home
zhengyangyong edited this page Jul 3, 2018
·
17 revisions
欢迎关注ServiceComb Java Chassis脚手架项目,这个项目将展现如何使用ServiceComb Java Chassis一步一步构建一个完整的CRM系统。
本Wiki会提供一系列文章,详细阐述系统构建过程的细节,您也可以还原代码从无到有,例如“2.在用户服务中添加认证(0.0.2)”,末尾小括号里的就是分支版本,签出0.0.2-SNAPSHOT分支,即可将代码恢复到文章描述的阶段。
您经营着一家房地产开发商,销售房产,迫切需要一套销售系统,考虑到微服务的优势,您决定使用ServiceComb Java Chassis作为微服务开发框架。
用户前来购买购买产品(房产),首先需要登记用户信息,并缴纳一定数量的定金,待交易当日,挑选心仪的产品(房产),支付尾款,完成交易。
- 前端UI服务:用户交互界面;
- Edge服务:很多时候也被称为API网关(API Gateway),负责集中认证、动态路由等等;
- 用户服务:提供用户信息管理服务,这里保存这用户的账号和密码,负责登录和认证;
- 产品(房产)服务:提供产品管理服务,保存着房产的信息诸如价格、是否已售出等信息;
- 支付服务:提供交易时支付服务,模拟对接银行支付购房尾款;同时由于房产是非常昂贵的产品,交易前需要收取一定的定金,因此每一个用户都会保存已缴纳的定金金额;
- 交易服务:提供产品交易服务,它通过编排调用将整个交易流程串起来,交易服务中有两个流程:
A. 定金支付
- Step1:通过用户服务验证用户身份;
- Step2:通过支付服务请求银行扣款,增加用户账号内的定金。
B. 购房交易
- Step1 :通过用户服务验证用户身份;
- Step2 :通过资源服务确定用户希望购买的资源(房产)尚未售出;
- Step3 :通过资源服务标记目标资源(房产)已售出;
- Step4 :通过支付服务请求扣减定金账号内的定金,以及银行扣剩下的尾款;
最后两个步骤需要保证事务一致性,其中Step4包含两个扣款操作。