nisbos


微服务示例工程

<h2>1、工程结构介绍</h2> <h3>背景</h3> <p>1、串联微服务的各个组件(注册中心、配置中心、网关、熔断降级、分布式链路追踪、分布式任务调度等...) 2、帮业务开发人员梳理出常用可能出现异常的场景(比如服务调用超时、并发场景下服务应对措施等...) 3、能让业务开发人员通过我们的样例,就能快速搭建出基于微服务的业务服务</p> <h3>秒杀设计</h3> <p><img src="https://www.showdoc.cc/server/api/common/visitfile/sign/8bc23f55d083e5bfe007e30bbf9d1869?showdoc=.jpg" alt="" /></p> <h3>服务划分</h3> <p>示例以秒杀作为场景,拆分的服务有五个: nisbos-springcloud-example-shop:前端及静态页面、中转、项目访问总入口 nisbos-springcloud-example-goods:商品信息模块 nisbos-springcloud-example-oms:订单模块 nisbos-springcloud-example-stock:库存模块 nisbos-springcloud-example-user: 用户模块 流程: <img src="https://www.showdoc.cc/server/api/common/visitfile/sign/d21af560a180ff4ca67bd2eba98f58d1?showdoc=.jpg" alt="" /></p> <h3>已集成组件</h3> <p>eureka、gateway、apollo、cat、feign、ribbon、hystrix、xxl-job等</p> <h2>2、运行环境</h2> <p>开发工具:IntelliJ IDEA(或eclipse、sts等)、Navicat 软件环境:jdk8以上、maven、git、mysql</p> <h2>3、 项目启动顺序</h2> <ul> <li>nisbos-eureka(若连得是测试服务器的eureka则可以不用启动)</li> <li>nisbos-gateway(若连得是测试服务器的eureka则可以不用启动)</li> <li>nisbos-springcloud-example-goods(eureka的相关配置需要确认下)</li> <li>nisbos-springcloud-example-stock</li> <li>nisbos-springcloud-example-shop:在项目启动的时候会初始化秒杀商品到redis中,需要查询商品及库存信息需要调用goods、stock工程,需要在这两个工程之后启动,如果不想初始化,可以更改yml配置文件如下:</li> </ul> <pre><code class="language-java"># 启动是否开启同步商品信息到redis(true 开启 false 关闭) synchro: switch: true</code></pre> <ul> <li>nisbos-springcloud-example-oms</li> <li>nisbos-springcloud-example-user</li> </ul> <h2>4、项目使用流程</h2> <h3>4.1、工程总入口</h3> <ul> <li> <p>启动完项目工程后,通过网关路由总入口进入登录页:<a href="http://localhost:8000/demo">http://localhost:8000/demo</a> <img src="https://www.showdoc.cc/server/api/common/visitfile/sign/940897a0e48b3a042e0f1402aebcee0e?showdoc=.jpg" alt="" /></p> </li> <li>用户名:admin 密码:admin <blockquote> <p>登录操作若出现“网络异常,请稍后再试”,请检查user工程是否成功启动</p> </blockquote></li> </ul> <h3>4.2、商品列表</h3> <ul> <li> <p>成功登录后,跳转到商品列表页 <img src="https://www.showdoc.cc/server/api/common/visitfile/sign/b471a4c5934d17dfcc8109f0450656ab?showdoc=.jpg" alt="" /></p> </li> <li>设置秒杀 设置或取消秒杀,可设置秒杀的开始时间 <blockquote> <p>shop工程初始化商品到redis中若失败或者同步配置处于关闭状态,可在此位置进行设置生效</p> </blockquote></li> </ul> <p><img src="https://www.showdoc.cc/server/api/common/visitfile/sign/3eff5727a5faf9ee370de1d3e18f57a1?showdoc=.jpg" alt="" /></p> <h3>4.3、秒杀商品详情页</h3> <ul> <li>秒杀未开始 <blockquote> <p>秒杀未开始“立即购买”按钮不可点击,</p> </blockquote></li> </ul> <p><img src="https://www.showdoc.cc/server/api/common/visitfile/sign/8f9980dd0c617c2afccf615dc1c060d6?showdoc=.jpg" alt="" /></p> <ul> <li>模拟下单 设置请求数,点击“立即购买”,返回的秒杀状态列表页状态: 未消费(秒杀成功,kafka未消费)、 秒杀成功(kafka已消费,反馈的信息)、 该用户已经秒杀过、 活动太火爆,请稍后再试、 没有库存了</li> </ul> <p><img src="https://www.showdoc.cc/server/api/common/visitfile/sign/7536603f006151697c5f5488b0dad2c6?showdoc=.jpg" alt="" /></p>

页面列表

ITEM_HTML