个人的项目涉及Spring Cloud微服务系统的查找与搜集。部分Github的开源微服务系统值得作为模版学习与使用。个人给出了微服务系统较为成熟、架构较为完善,值得学习的55个微服务系统。其中下面给出具体信息的十八微服务系统尤为推荐,值得学习,按照个人主观推荐排了个先后顺序。
实际上看读者是什么目的,阅读、使用开源微服务系统,前面给出的几个业务逻辑较为简单的微服务系统以及部分商城系统适合个人学习,熟悉Spring Cloud微服务架构。若是涉及其他,看个人取舍。
推荐的十八个系统
1.spring-petclinic-microservices
spring-petclinic-microservices
https://github.com/spring-petclinic/spring-petclinic-microservices
宠物诊所管理系统。Github开源的典型SpringBoot风格项目,项目大小适中。它涵盖了Spring框架的各种功能和最佳实践。
2.HIS
HIS
https://github.com/ZainZhao/HIS
HIS 英文全称 Hospital Information System(医院信息系统),主要功能按照数据流量、流向及处理过程分为临床诊疗、药品管理、财务管理、患者管理。诊疗活动由各工作站配合完成,并将临床信息进行整理、处理、汇总、统计、分析等。本系统包括以下工作站:门诊医生工作站、药房医生工作站、医技医生工作站、收费员工作站、对帐员工作站、管理员工作站。基于 Spring Cloud Netflix 和 Spring Boot 2.x 实现。his-cloud包含四个核心业务微服务工程
3.ftgo-application
ftgo-application
https://github.com/microservices-patterns/ftgo-application
基于微服务架构的在线食品订购系统示例。是《Microservice patterns》的示例系统。
4.train-ticket
train-ticket
https://github.com/FudanSELab/train-ticket
微服务数量达40多个,逻辑关系复杂,不适合初学者学习使用。但是,是较为标准的Spring Cloud风格微服务基准系统,由FudanSELab开源。逻辑划分以及开发部署的部分值得借鉴学习。
5.jeepay
jeepay
https://github.com/jeequan/jeepay
Jeepay是一套适合互联网企业使用的开源支付系统,支持多渠道服务商和普通商户模式。已对接微信支付
,支付宝
,云闪付
官方接口,支持聚合码支付。Jeepay使用Spring Boot
和Ant Design Vue
开发,集成Spring Security
实现权限管理功能,是一套非常实用的web开发框架。
6.lilishop
lilishop
https://github.com/lilishop/lilishop
Lilishop商城系统后端基于SpringBoot 研发,前端使用 Vue、uniapp开发, 系统全端全部代码开源。前后端分离,支持分布式部署,支持Docker,各个API独立,并且有独立的消费者。
7.gpmall
gpmall
https://github.com/2227324689/gpmall
业务模块划分,尽量贴合互联网公司的架构体系。所以,除了业务本身的复杂度不是很高之外,整体的架构基本和实际架构相差无几。目采用前后端分离开发,前端需要独立部署。目前核心的技术栈采用的是SpringBoot2.1.5.RELEASE+Dubbo2.7.2。
8.mogu_blog_v2
mogu_blog_v2
https://github.com/moxi624/mogu_blog_v2
蘑菇博客(MoguBlog),一个基于微服务架构的前后端分离博客系统。Web端使用Vue + Element , 移动端使用uniapp和ColorUI。后端使用Spring cloud + Spring boot + mybatis-plus进行开发,使用 Jwt + Spring Security做登录验证和权限校验,使用ElasticSearch和Solr作为全文检索服务,使用Github Actions完成博客的持续集成,使用ELK收集博客日志,文件支持上传七牛云和Minio,支持Docker Compose脚本一键部署。
9.Microservices Event Sourcing
microservices-event-sourcing
https://github.com/chaokunyang/microservices-event-sourcing
Microservices Event Sourcing 是一个微服务架构的在线购物网站,使用Spring Boot、Spring Cloud、Spring Reactor、OAuth2、CQRS 构建,实现了基于Event Sourcing的最终一致性,提供了构建端到端微服务的最佳实践。
10.NebulaMOOC
NebulaMOOC
https://github.com/zhanghuanhao/NebulaMOOC
一个基于B/S架构及分布式的在线慕课交流平台,包括了课程、讨论区、直播三大模块。项目基于SprintBoot 2.1.5、GRPC和Spring AOP,实现了基于Redis的单点登录系统、基于Netty、Protobuf、WebSocket的直播聊天服务器、基于Spring Web的网页服务器。
11.congomall
congomall
https://github.com/nageoffer/congomall
CongoMall(刚果商城)不一样的TOC商城系统,SpringCloud-Alibaba微服务架构设计。系统集成分布式锁、分布式事务、分库分表、消息队列、数据搜索、服务监控等功能。参照商城系统原型,推出用户、消息、商品、订单、优惠券、支付、网关、购物车等业务模块,通过商城系统中复杂场景,给出对应解决方案。使用 DDD 模型开发系统功能,帮助对 DDD 一知半解的开发者树立正确地开发思路。
12.ikeyit-services
ikeyit-services
https://github.com/ikeyit/ikeyit-services
IKEYIT是一个开源的电商平台系统,支持多店铺,Java,Spring Boot,Mybatis,Spring Cloud Alibaba,前后端分类微服务构架,简单易上手。但是其存在一个问题。具有八个微服务。
13.newbee-mall-cloud
newbee-mall-cloud
https://github.com/newbee-ltd/newbee-mall-cloud
newbee-mall-cloud 项目是新蜂商城 newbee-mall 项目的微服务版本,一款基于 Spring Cloud Alibaba + Nacos + Sentinel + Seata + Spring Cloud Gateway + OpenFeign + Spring Cloud Seluth + Zipkin + ELK 等技术的大型微服务实战项目。
14.passcloud-master
paascloud-master
https://github.com/paascloud/paascloud-master
功能点: 模拟商城,完整的购物流程、后端运营平台对前端业务的支撑,和对项目的运维,有各项的监控指标和运维指标。 技术点: 核心技术为springcloud+vue两个全家桶实现,采取了取自开源用于开源的目标,所以能用开源绝不用收费框架,整体技术栈只有阿里云短信服务是收费的,都是目前java前瞻性的框架,可以为中小企业解决微服务架构难题,可以帮助企业快速建站。由于服务器成本较高,尽量降低开发成本的原则,本项目由10个后端项目和3个前端项目共同组成。真正实现了基于RBAC、jwt和oauth2的无状态统一权限认证的解决方案,实现了异常和日志的统一管理,实现了MQ落地保证100%到达的解决方案。
15.roncoo-education
roncoo-education
https://github.com/roncoo/roncoo-education
领课教育系统(roncoo-education)是基于领课网络多年的在线教育平台开发和运营经验打造出来的产品,致力于打造一个各行业都适用的分布式在线教育系统。系统采用前后端分离模式,前台采用vue.js为核心框架,后台采用Spring Cloud为核心框架。系统目前主要功能有课程点播功能,支持多家视频云的接入,课程附件管理功能,支持多家存储云的接入,讲师管理功能,支持讲师入驻功能,可以帮助个人或者企业快速搭建一个轻量级的在线教育平台。
16.zheng
zhenghttps://github.com/shuzheng/zheng基于Spring+SpringMVC+Mybatis分布式敏捷开发系统架构,提供整套公共微服务服务模块:内容管理、支付中心、用户管理(包括第三方)、微信平台、存储系统、配置中心、日志分析、任务和通知等,支持服务治理、监控和追踪,努力为中小型企业打造全方位J2EE企业级开发解决方案。
17.yudao-cloud
yudao-cloud
https://github.com/YunaiV/yudao-cloud
后端采用 Spring Cloud Alibaba 微服务架构,注册中心 + 配置中心 Nacos,定时任务 XXL-Job,服务保障 Sentinel,服务网关 Gateway,分布式事务 Seata
18.RuoYi-Cloud
RuoYi-Cloud
https://github.com/yangzongzhuan/RuoYi-Cloud
(RuoYi)官方仓库 基于Spring Boot、Spring Cloud & Alibaba的分布式微服务架构权限管理系统 。
其他值得一看的微服务系统(包含了上面提及的十八种)
注、以上所有系统均是来自github的开元SpringCloud微服务系统。
数据来源:GitHub - yang66-hash/microservice-catalog: A catalog comprising 55 microservice systems.