GithubHelp home page GithubHelp logo

igit-cn / spring-cloud-alibaba-my-shop Goto Github PK

View Code? Open in Web Editor NEW

This project forked from funtl/spring-cloud-alibaba-my-shop

0.0 1.0 0.0 16.16 MB

利用 Spring Cloud Alibaba 微服务架构解决方案重构《走向单体地狱》阶段开发的 MyShop 项目,以便于我们更好的理解微服务架构,将知识点运用到实践中。

Batchfile 1.26% Java 97.46% HTML 0.44% Dockerfile 0.84%

spring-cloud-alibaba-my-shop's Introduction

Spring Cloud Alibaba For MyShop

博客

视频

概述

利用 Spring Cloud Alibaba 微服务架构解决方案重构 走向单体地狱 阶段开发的 MyShop 项目,以便于我们更好的理解微服务架构,将知识点运用到实践中。

开发环境

  • 操作系统:Windows 10 Enterprise
  • 开发工具:Intellij IDEA
  • 数据库:MySQL 8.0.13
  • Java SDK:Oracle JDK 1.8.152

部署环境

  • 操作系统:Linux Ubuntu Server 16.04 X64
  • 虚拟化技术:VMware + Docker

项目管理工具

  • 项目构建:Maven + Nexus
  • 代码管理:Git + GitLab
  • 镜像管理:Docker Registry

后台主要技术栈

  • 核心框架:Spring Boot + Spring Cloud Alibaba
  • ORM 框架:tk.mybatis 简化 MyBatis 开发
  • 数据库连接池:Alibaba Druid
  • 数据库缓存:Redis Sentinel
  • 消息中间件:RocketMQ
  • 接口文档引擎:Swagger2 RESTful 风格 API 文档生成
  • 全文检索引擎:ElasticSearch
  • 分布式链路追踪:SkyWalking
  • 分布式文件系统:Alibaba OSS
  • 分布式系统网关:Spring Cloud Gateway
  • 分布式协调系统:Spring Cloud Alibaba Nacos Server
  • 分布式配置中心:Spring Cloud Alibaba Nacos Config
  • 分布式熔断降级:Spring Cloud Alibaba Sentinel
  • 反向代理负载均衡:Nginx

前后分离

  • 前端框架:NodeJS + Vue + Axios
  • 前端模板:ElementUI

持续集成

  • 持续集成:GitLab
  • 持续交付:Jenkins

拓扑结构

服务规划

Cloud

服务名称 服务端口 服务说明
MySQL 192.168.10.150:3306 MySQL 8.x,1G
GitLab 192.168.10.132:8080 代码托管/持续集成,2G
Nexus 192.168.10.146:8081 依赖管理,2G
Docker Registry 192.168.10.139:8080 镜像管理,1G
Jenkins 192.168.10.135:8080 持续交付,1G
SkyWalking 192.168.10.148:8080 链路追踪,2G
RocketMQ 192.168.10.149:8080 消息队列,2G
以下四个服务在在同一台服务器,4G
Nacos 192.168.10.151:8848 注册发现/配置中心
Sentinel 192.168.10.151:8080 熔断降级
Redis 192.168.10.151:26379 数据缓存
Nginx 192.168.10.151:80 反向代理/负载均衡

Services

服务名称 服务端口 服务说明
以下为通用服务
myshop-service-gateway 9000 服务网关
myshop-service-reg 9501 用户注册
myshop-service-sso 9502 单点登录
myshop-service-cache 9503 缓存服务
myshop-service-oss 9504 文件上传
myshop-service-forget 9505 忘记密码
myshop-service-search 9506 全文检索
myshop-service-email 9507 邮件服务
以下为服务提供者
myshop-service-provider-content-category 10101 内容分类提供者
myshop-service-provider-content 10102 内容服务提供者
myshop-service-provider-item-cat 10103 商品分类提供者
myshop-service-provider-item-desc 10104 商品详情提供者
myshop-service-provider-item 10105 商品服务提供者
myshop-service-provider-order 10106 订单服务提供者
myshop-service-provider-order-item 10107 订单项提供者
myshop-service-provider-order-shipping 10108 购物车提供者
以下为服务消费者
myshop-service-consumer-content-category 10201 内容分类消费者
myshop-service-consumer-content 10202 内容服务消费者
myshop-service-consumer-item-cat 10203 商品分类消费者
myshop-service-consumer-item-desc 10204 商品详情消费者
myshop-service-consumer-item 10205 商品服务消费者
myshop-service-consumer-order 10206 订单服务消费者
myshop-service-consumer-order-item 10207 订单项消费者
myshop-service-consumer-order-shipping 10208 购物车消费者

Frontend

服务名称 服务端口 服务说明
vue-admin-myshop 9528 管理后台

spring-cloud-alibaba-my-shop's People

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.