zoukankan      html  css  js  c++  java
  • 基于SpringCloud的Microservices架构实战案例

    QuickStart

            基于SpringCloud架构体系实现,简单购物流程实现,满足基本功能:注册、登录、商品列表展示、商品详情展示、订单创建、详情查看、订单支付、库存更新等等。目前迭代第二版本,服务注册、发现、监控及分布式配置等基础服务已完成,购物流程可以通过Swagger提高的API顺序完成。后续将持续更新维护中。

    源码地址:https://github.com/backkoms/simplemall 

            每个业务服务采用独立的MYSQL数据库,初期考虑用到如下组件:

    1. 服务注册、发现: eureka

    2. 配置管理:spring config , spring security

    3. 集群容错: hystrix(待实现)

    4. API网关: zuul(待实现)

    5. 服务负载:feign+ribbon

    6. api文档输出:swagger2

    7. 代码简化:lombok

    8. 消息队列:rabbitmq

    9. 分布式锁: redis (待实现)

    10. 链路跟踪:spring cloud sletuh ->zipkin

    11. 安全认证:oauth2/JWT(待实现)

    12. 服务监控:spring-boot-admin

    各模块介绍

    模块名称端口简介
    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管理

    快速上手

    • 1、先启动admin-server,eureka-server,conf-server三个基础服务

    • 2、再依次启动payment/order/product/account基础业务服务

    • 3、最后启动front-app服务,打开浏览器,输入http://localhost:8088/swagger-ui.html ,根据流程API依次可使用功能

    • 4、后续有时间再提供页面,基于VUE2+BOOTSTRAP,将流程串起来

    Release Version

    v2.1

    Release Date : 2017-08-29

    1、引入swagger2,完成API接口文档管理完成整体业务数据流程流转
    2、通过API接口完成整体业务数据
    3、基于Spring-cloud-config引入配置中心,结合security加强安全配置,同时引入bus-amqp(rabbitmq)高效更新配置内容[配置中心数据结合sc-cloud-repo工程使用]
    4、引入feign,满足客户端调用服务端的服务
    5、引入ribbon,可以满足客户端的负载均衡调用后端服务

    v1.0

    Release Date : 2017-08-17

    1、完成基本服务及业务子模块服务的搭建 ,业务子模块可正常运行
    2、完成SpringBootAdmin业务模块的运行监控,及Eureka服务运行,满足各业务基础服务的注册、发现功能
    3、可通过Front-app端,借助Feign组件发起login/signup等功能的 简单测试运行。
    下一版本,将基于此版本之上,继续完善完整的购物实现,包括简单的页面、api管理/调用等等。

     image

    成长的乐趣,在于分享!
    大龄程序员,一路走来,感慨颇多。闲暇时写写字,希望能给同行人一点帮助。
    本文版权归作者growithus和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    UVA 11925 Generating Permutations 生成排列 (序列)
    UVA 1611 Crane 起重机 (子问题)
    UVA 11572 Unique snowflakes (滑窗)
    UVA 177 PaperFolding 折纸痕 (分形,递归)
    UVA 11491 Erasing and Winning 奖品的价值 (贪心)
    UVA1610 PartyGame 聚会游戏(细节题)
    UVA 1149 Bin Packing 装箱(贪心)
    topcpder SRM 664 div2 A,B,C BearCheats , BearPlays equalPiles , BearSorts (映射)
    UVA 1442 Cave 洞穴 (贪心+扫描)
    UVA 1609 Foul Play 不公平竞赛 (构(luan)造(gao)+递归)
  • 原文地址:https://www.cnblogs.com/growithus/p/8544229.html
Copyright © 2011-2022 走看看