项目介绍

mall-swarm是一套微服务商城系统,采用了 Spring Cloud Greenwich、Spring Boot 2、MyBatis、Docker、Elasticsearch等核心技术,同时提供了基于Vue的管理后台方便快速搭建系统。mall-swarm在电商业务的基础集成了注册中心、配置中心、监控中心、网关等系统功能。

系统架构图

组织结构

  1. mall
  2. ├── mall-common -- 工具类及通用代码模块
  3. ├── mall-mbg -- MyBatisGenerator生成的数据库操作代码模块
  4. ├── mall-security -- 封装SpringSecurity+JWT的安全认证的模块
  5. ├── mall-registry -- 基于Eureka的微服务注册中心
  6. ├── mall-config -- 基于Spring Cloud Config的微服务配置中心
  7. ├── mall-gateway -- 基于Spring Cloud Gateway的微服务API网关服务
  8. ├── mall-monitor -- 基于Spring Boot Admin的微服务监控中心
  9. ├── mall-admin -- 后台管理系统服务
  10. ├── mall-search -- 基于Elasticsearch的商品搜索系统服务
  11. ├── mall-portal -- 移动端商城系统服务
  12. └── mall-demo -- 微服务远程调用测试服务

项目地址及项目教程

转发+关注,然后 点击这里 私信回复关键字 “源码” 即可获得《项目地址及项目教程》的免费获取方式。

技术选型

后端技

前端技术

环境搭建

开发环境搭建

mall-swarm中使用到的环境和mall项目中大致相同,具体可以查看mall在Windows环境下的部署

简易环境搭建流程:

  • 安装IDEA并导入项目源码;
  • 安装MySql,创建一个mall数据库,并导入/document/sql/mall.sql文件;
  • 安装Redis、Elasticsearch、MongoDB、RabbitMQ等环境。

项目部署

mall-swarm项目启动有先后顺序,大家要按照以下顺序启动。

启动注册中心mall-registry

  • 直接运行com.macro.mall.MallRegistryApplication的main函数即可;
  • 运行完成后可以通过注册中心控制台查看:http://localhost:8001

启动配置中心mall-config

  • 直接运行com.macro.mall.MallConfigApplication的main函数即可;
  • 访问以下接口获取mall-admin在dev环境下的配置信息:http://localhost:8301/master/admin-dev.yml

启动监控中心mall-monitor

  • 直接运行com.macro.mall.MallMonitorApplication的main函数即可;
  • 运行完成后可以通过监控中心控制台查看:http://localhost:8101
  • 输入账号密码macro:123456可以登录查看。

启动网关服务mall-gateway

  • 直接运行com.macro.mall.MallGatewayApplication的main函数即可;
  • 访问以下接口获取动态路由规则:http://localhost:8201/actuator/gateway/routes

启动后台管理服务mall-admin

  • 直接运行com.macro.mall.MallAdminApplication的main函数即可;
  • 通过mall-gateway网关服务访问接口文档:http://localhost:8201/mall-admin/swagger-ui.html
  • 登录接口地址:http://localhost:8201/mall-admin/admin/login
  • 访问登录接口获取到token后放入认证的头信息即可正常访问其他需要登录的接口:

启动前台服务mall-portal

  • 直接运行com.macro.mall.portal.MallPortalApplication的main函数即可;
  • 通过mall-gateway网关服务访问接口文档:http://localhost:8201/mall-portal/swagger-ui.html
  • 登录接口地址:http://localhost:8201/mall-portal/sso/login
  • 调用需要登录的接口方式同mall-admin。

启动搜索服务mall-search

  • 直接运行com.macro.mall.search.MallSearchApplication的main函数即可;
  • 通过mall-gateway网关服务访问接口文档:http://localh

启动测试服务mall-demo

  • 直接运行com.macro.mall.MallAdminApplication的main函数即可;
  • 通过mall-gateway网关服务访问接口文档:http://localhost:8201/mall-demo/swagger-ui.html
  • 可以通过调用FeignAdminController、FeignPortalController、FeignSearchController来测试使用Feign的远程调用功能。

效果展示

  • 注册中心服务信息:

监控中心服务概览信息:

  • 监控中心单应用详情信息:

扩展解决方案

  • 如果想使用Consul作为注册及配置中心的话请参考:Spring Cloud Consul:服务治理与配置中心
  • 如果想使用Nacos作为注册及配置中心的话请参考:Spring Cloud Alibaba:Nacos 作为注册中心和配置中心使用
  • 分布式事务解决方案请参考:使用Seata彻底解决Spring Cloud中的分布式事务问题!
  • ELK日志收集系统的搭建请参考:SpringBoot应用整合ELK实现日志收集

springcloud 整合 gateway_GitHub上最火的SpringCloud微服务商城系统项目,附全套教程相关推荐

  1. 微服务商城系统(六)商品搜索 SpringBoot 整合 Elasticsearch

    文章目录 一.Elasticsearch 和 IK 分词器的安装 二.Kibana 使用 三.数据导入 Elasticsearch 1.SpringData Elasticsearch 介绍 2.搜索 ...

  2. SpringCloud学习一(回顾之前学的微服务知识点、springcloud入门概述、服务提供者和消费者)

    一.回顾之前,如何学习springcloud 回顾之前的知识? JavaSE 数据库 前端 Servlet Http Mybatis Spring SpringMVC SpringBoot Dubbo ...

  3. SpringCloud - 微服务架构系统

    过渡分布式微服务 以前的架构还是最原始阶段,官网.论坛.云平台等应用即一台服务器搞定一切.对应的web服务器.数据库.静态文件资源等,部署到一台服务器上即可.一般每秒几百请求没啥问题,结合内核参数调优 ...

  4. SpringCloud(第 054 篇)简单 Quartz-Cluster 微服务,采用注解配置 Quartz 分布式集群...

    2019独角兽企业重金招聘Python工程师标准>>> SpringCloud(第 054 篇)简单 Quartz-Cluster 微服务,采用注解配置 Quartz 分布式集群 一 ...

  5. SpringCloud(第 054 篇)简单 Quartz-Cluster 微服务,采用注解配置 Quartz 分布式集群... 1

    SpringCloud(第 054 篇)简单 Quartz-Cluster 微服务,采用注解配置 Quartz 分布式集群 - 一.大致介绍 1.因网友提到有没有采用注解式配置的Quartz例子,因此 ...

  6. SpringCloud(第 002 篇)简单电影微服务类(消费方,而提供方为用户微服务)

    2019独角兽企业重金招聘Python工程师标准>>> SpringCloud(第 002 篇)简单电影微服务类(消费方,而提供方为用户微服务) 一.大致介绍 微服务与微服务之间通过 ...

  7. SpringCloud 微服务架构开源项目,适合接私活、毕业设计(附源码)

    今天给大家推荐一个牛逼的接私活项目,SpringCloud微服务架构项目! 一个由商业级项目升级优化而来的微服务架构,采用SpringBoot 2.5 .SpringCloud 等核心技术构建,提供基 ...

  8. 上几个WebAPI就算微服务架构?Too Young!

    毋庸置疑,当下是微服务云原生的时代,这是最坏的时代,也是最好的时代!机遇和挑战并行,技术人之间的差距在逐渐拉到! 两极分化严重 早在2015年,微服务就已经被诸多大企业认可和推行,被称之为微服务架构元 ...

  9. SpringCloud实现微服务商城架构开源项目

    本文介绍的项目是基于SpringCloud为服务化的系统架构实现.从微服务网关,微服务注册与发现,配置.熔断限流.监控.以及服务调用链路追踪等,以及容器化部署持续集成等一系列方案. 项目地址:http ...

最新文章

  1. 企业级监控ZABBIX深度实践安装部分
  2. 微软2013暑期实习笔试题目第5题分析
  3. python连数据库课程设计_python 连接操作 各类数据库
  4. 【Java脚本引擎】脚本引擎执行JavaScript代码
  5. (6)kendo UI使用基础介绍与问题整理——dropdownlist/基础问题整理
  6. 51单片机——硬件基础
  7. 动态规划 所有题型的总结
  8. 职位越高的人,越容易犯5个错
  9. BasicAuth和OAuth
  10. MySQL Workbench 的安全设置
  11. Opengl es2.0 学习笔记(十)VBO、IBO和FBO
  12. (笔记)《游戏脚本高级编程》——第1章 脚本编程概论
  13. STM32固件库下载步骤
  14. 都2022了,我为什么还要写博客?
  15. 阿涛读书之——《坏血》
  16. SpringBoot+Vue项目的PDF导出及给PDF文件盖章的功能示例
  17. CSS笔记(菜鸟教程)
  18. 机器视觉中的光源选型及打光方案分析
  19. Excel中数字、数值和文本的区别
  20. 数学对计算机的重要性

热门文章

  1. qq邮箱格式的Java代码_Java实现QQ邮件发送
  2. div 上禁止复制的css实现方法
  3. Linux禁止普通用户su至root
  4. spark RDD官网RDD编程指南
  5. spring事务的传播特性
  6. 《孙鑫老师谈如何学好编程》摘要
  7. UA PHYS515A 电磁理论V 电磁波与辐射2 电磁波的能量
  8. UA SIE545 优化理论基础1 凸分析8 极点与极方向
  9. 认识Linux设备驱动模型和Kobject
  10. VS2012调试ReactOS源码环境搭建4 - 生成ReactOS镜像和VS解决方案成功