{"id":13535386,"url":"https://github.com/maventalker/simplemall","last_synced_at":"2025-04-02T01:30:36.331Z","repository":{"id":105781251,"uuid":"100140711","full_name":"maventalker/simplemall","owner":"maventalker","description":"基于SpringCloud的微服务架构实战案例项目，以一个简单的购物流程为示例，融合spring cloud 相关组件，如spring-cloud-netflix、swagger等","archived":false,"fork":false,"pushed_at":"2020-06-06T00:51:41.000Z","size":887,"stargazers_count":714,"open_issues_count":6,"forks_count":366,"subscribers_count":60,"default_branch":"master","last_synced_at":"2024-08-06T12:08:02.691Z","etag":null,"topics":["eureka","hystrix","jwt","jwt-authentication","micro-service","netflix","rabbitmq","spring-boot","spring-cloud","spring-security","swagger","swagger2","zuul"],"latest_commit_sha":null,"homepage":"https://github.com/backkoms/simplemall/blob/develop/getqrcode.jpeg","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/maventalker.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-08-12T22:25:50.000Z","updated_at":"2024-07-29T09:18:17.000Z","dependencies_parsed_at":"2023-06-13T21:08:01.503Z","dependency_job_id":null,"html_url":"https://github.com/maventalker/simplemall","commit_stats":null,"previous_names":["backkoms/simplemall"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maventalker%2Fsimplemall","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maventalker%2Fsimplemall/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maventalker%2Fsimplemall/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maventalker%2Fsimplemall/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/maventalker","download_url":"https://codeload.github.com/maventalker/simplemall/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246738392,"owners_count":20825775,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["eureka","hystrix","jwt","jwt-authentication","micro-service","netflix","rabbitmq","spring-boot","spring-cloud","spring-security","swagger","swagger2","zuul"],"created_at":"2024-08-01T08:00:55.351Z","updated_at":"2025-04-02T01:30:35.913Z","avatar_url":"https://github.com/maventalker.png","language":"Java","funding_links":[],"categories":["开源","Java"],"sub_categories":[],"readme":"## Stargazers over time\n\n[![Stargazers over time](https://starcharts.herokuapp.com/backkoms/simplemall.svg)](https://starcharts.herokuapp.com/backkoms/simplemall)\n      \n# QuickStart\n基于SpringCloud体系实现，简单购物流程实现，满足基本功能：注册、登录、商品列表展示、商品详情展示、订单创建、详情查看、订单支付、库存更新等等。\n\n每个业务服务采用独立的MYSQL数据库，初期考虑用到如下组件：\n1. 服务注册、发现: eureka\n2. 配置管理:spring config , spring security\n3. 集群容错: hystrix\n4. API网关: zuul\n5. 服务负载:feign+ribbon\n6. api文档输出:swagger2\n7. 代码简化:lombok\n8. 消息队列:rabbitmq\n9. 分布式锁: redis （待实现）\n10. 链路跟踪:spring cloud sletuh -\u003ezipkin\n11. 安全认证:oauth2/JWT(通过JWT轻量级的实现)\n12. 服务监控:spring-boot-admin\n\n\n# 各模块介绍\n\n| 模块名称        | 端口   |  简介  |\n| --------   | -----:  | :----:  |\n| admin-server      | 9002   |   服务监控中心，监控所有服务模块    |\n| conf-server        |   9004   |   分布式配置中心，结合spring-security/rabbitmq同时使用   |\n| eureka-server        |    9003    |  服务注册中心，提供服务注册、发现功能  |\n| sleuth-server        |    9001    |  SpringCloud实现的一种分布式追踪解决方案，兼容Zipkin  |\n| zuul-server        |    9005    |  API网关模块  |\n| account-service        |    8080    |  用户服务，提供注册、登录、地址等服务  |\n| product-service       |    8081    |  商品服务，提供商品列表、详情、库存更新等服务  |\n| payment-service    |    8082    |  支付服务，支付记录  |\n| order-service        |    8083    |  订单服务，提供订单创建、详情、状态变更  |\n| msg-service        |    8084    |  消息处理服务  |\n| front-app        |    8088    |  前端服务，结合swagger2提供API管理(有小问题，swagger页面无法点击单个接口，可通过展开功能打开，待解决)  |\n\n\n# 快速上手\n- 0、基础软件依赖，rabbitmq\\redis\n- 1、先启动admin-server,eureka-server,conf-server三个基础服务\n- 2、再依次启动payment/order/product/account基础业务服务\n- 3、最后启动front-app服务，打开浏览器，输入http://localhost:8088/swagger-ui.html ，根据流程API依次可使用功能[swagger主界面存在bug，不能选择某个api展开收缩，可通过全部展开/收缩的形式使用]\n- 4、后续有时间再提供页面，基于VUE2+BOOTSTRAP，将流程串起来\n\n# 相关测试\n\t1、启动基础eureka/config两个服务后，直接启动front-app服务，通过swagger测试商品列表或详情功能来测试hystrix的功能\n\t1.1、启动hystrix-dashboard服务，输入监控地址http://localhost:8088/hystrix.stream可以查看监控视图\n\t2、输入http://localhost:9005/account-service/acc/login?phone=123123\u0026password=123123查看返回结果\n\n# 关注公众号，获取更多内容\n![image](https://github.com/backkoms/backkoms.github.io/blob/master/qrcode_for_gh_28fb95c9c24c_258.jpg?raw=true)\n\n个人主页：[https://backkoms.github.io](https://backkoms.github.io)\n\n\n# 基于SpringBoot+Dubbo微服务开发实战基础框架\n\ngithub：[https://github.com/backkoms/web-service-demo](https://github.com/backkoms/web-service-demo)\n\ngithub：[https://github.com/backkoms/web-api-demo](https://github.com/backkoms/web-api-demo)\n\n\n### 我的知识星球，内容：个人心得体会分享（阅读、写作、职业规划、职业困惑、个人成长、技术提升）、问题提问\n![](https://imgkr.cn-bj.ufileos.com/75ab2d42-80b1-4164-9ac5-c23de5f522e6.png)\n\n### 个人微信，欢迎骚扰\n![](https://imgkr.cn-bj.ufileos.com/e37c25c2-d2a4-4174-953b-07adbd0f9b56.jpeg)\n\n### 微服务开发实战专栏（SpringCloud、SpringCloudAlibaba、Apache Dubbo）\n[基于商场停车收费场景的微服务开发实战专栏地址：https://xiaozhuanlan.com/msa-practice](https://xiaozhuanlan.com/msa-practice)\n![](https://imgkr.cn-bj.ufileos.com/227bc922-220f-4f68-b114-132bcbd53436.jpg)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaventalker%2Fsimplemall","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmaventalker%2Fsimplemall","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaventalker%2Fsimplemall/lists"}