查看原文
其他

功能齐全的开源微服务商城系统

SpringForAll 2022-07-05

The following article is from TJ君 Author TJ

今天要给大家分享一个集合了Spring Cloud Hoxton & Alibaba、Spring Boot 2.3、Oauth2、MyBatis、Docker、Elasticsearch、Kubernetes等众多技术的开源微服务商城系统,mall-swarm

mall-swarm是一个提供基于Vue的管理后台方便快速搭建系统,在 电商业务的基础集成了注册中心、配置中心、监控中心、网关等系统功能,组织架构如下:

mall
├── mall-common -- 工具类及通用代码模块
├── mall-mbg -- MyBatisGenerator生成的数据库操作代码模块
├── mall-auth -- 基于Spring Security Oauth2的统一的认证中心
├── mall-gateway -- 基于Spring Cloud Gateway的微服务API网关服务
├── mall-monitor -- 基于Spring Boot Admin的微服务监控中心
├── mall-admin -- 后台管理系统服务
├── mall-search -- 基于Elasticsearch的商品搜索系统服务
├── mall-portal -- 移动端商城系统服务
├── mall-demo -- 微服务远程调用测试服务
└── config -- 配置中心存储的配置

其用到的技术栈包括:

  • Spring Cloud 微服务框架
  • Spring Cloud Alibaba 微服务框架
  • Spring Boot 容器+MVC框架
  • Spring Security Oauth2 认证和授权框架
  • MyBatis ORM框架
  • MyBatisGenerator 数据层代码生成
  • PageHelper MyBatis物理分页插件
  • Knife4j 文档生产工具
  • Elasticsearch 搜索引擎
  • RabbitMq 消息队列
  • Redis 分布式缓存
  • MongoDb NoSql数据库
  • Docker 应用容器引擎
  • Druid 数据库连接池
  • OSS 对象存储
  • MinIO 对象存储
  • JWT JWT登录支持
  • LogStash 日志收集
  • Lombok 简化对象封装工具
  • Seata 全局事务管理框架
  • Portainer 可视化Docker容器管理
  • Jenkins 自动化部署工具
  • Kubernetes 应用容器管理平台
  • Vue 前端框架
  • Vue-router 路由框架
  • Vuex 全局状态管理框架
  • Element 前端UI框架
  • Axios 前端HTTP框架
  • v-charts 基于Echarts的图表框架

mall-swarm,可以实现不同的搭建方式,例如Windows、Docker 、Kubernetes,下面以Windows为例:

  • 1、安装IDEA并导入项目源码;

  • 2、安装MySQL,创建一个mall数据库,并导入/document/sql/mall.sql文件;

  • 3、安装Redis、Elasticsearch、MongoDB、RabbitMQ等环境。

  • 4、Nacos注册中心搭建,使用bin目录下的startup.cmd启动Nacos服务,访问地址:http://localhost:8848/nacos/

  • 5、将项目config目录下的配置文件添加到Nacos中,只要添加包含dev的配置即可,配置文件的文件名称需要和Nacos中的Data Id一一对应;

  • 6、按如下顺序启动

    • 启动网关服务mall-gateway,直接运行MallGatewayApplication的main函数即可;
    • 启动认证中心mall-auth,直接运行MallAuthApplication的main函数即可;
    • 启动后台管理服务mall-admin,直接运行MallAdminApplication的main函数即可;
    • 启动前台服务mall-portal,直接运行MallPortalApplication的main函数即可;
    • 启动搜索服务mall-search,直接运行MallSearchApplication的main函数即可;
    • 启动监控中心mall-monitor,直接运行MallMonitorApplication的main函数即可;
  • 7、运行完成后可以通过监控中心查看监控信息,账号密码为macro:123456:http://localhost:8101;运行完成后可以直接通过如下地址访问API文档:http://localhost:8201/doc.html

  • 8、对于访问需要登录的接口,先调用认证中心接口获取token,后台管理client_id和client_secret为admin-app:123456,前台系统为portal-app:123456;然后将token添加到请求头中,即可访问需要权限的接口了。

最后就可以看下运行效果了:

注册中心服务信息,访问地址:http://localhost:8848/nacos/

监控中心服务概览信息,访问地址:http://localhost:8101

日志收集系统信息,访问地址:http://localhost:5601

想试试的小伙伴,快来获取地址吧~

点击下方卡片,关注公众号“TJ君

回复“swarm2022”,获取仓库地址

关注我,每天了解一个牛x、好用、有趣的东东


往期推荐

可视化搭建的开源商场平台~

中英双版本开源计算机自学指南,少走弯路就靠它了

各种独立博客收集大汇总!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存