本节视频

开发环境

  • 操作系统: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
  • 前端模板:iview

持续集成

  • 持续集成: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 购物车消费者

作者:撸帝
链接:https://www.jianshu.com/p/a41c8bdaedcc
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

Spring Cloud Alibaba-MyShop-项目介绍的更多相关文章

  1. 阿里巴巴开源 Spring Cloud Alibaba,加码微服务生态建设

    本周,Spring Cloud联合创始人Spencer Gibb在Spring官网的博客页面宣布:阿里巴巴开源 Spring Cloud Alibaba,并发布了首个预览版本.随后,Spring Cl ...

  2. Spring Cloud Alibaba 从孵化到 "挂牌" 之旅

    背景 2014 年,Spring Boot 1.0 发布.Spring Boot 的发布绝对是 Pivotal 历史上具有里程碑意义的事件,它让我们能够非常简便地开发 Spring 应用,屏蔽了各种配 ...

  3. 厉害了,Spring Cloud Alibaba 发布 GA 版本!

    ? 小马哥 & Josh Long ? 喜欢写一首诗一般的代码,更喜欢和你共同 code review,英雄的相惜,犹如时间沉淀下来的对话,历久方弥新. 相见如故,@杭州. 4 月 18 日, ...

  4. Spring Cloud Alibaba迁移指南(一):一行代码从 Hystrix 迁移到 Sentinel

    摘要: 本文对Hystrix.Resilience4j.Sentinel进行对比,并探讨如何使用一行代码这种极简的方式,将Hystrix迁移到Sentinel. Hystrix 自从前段时间 宣布停止 ...

  5. Spring Cloud Alibaba Nacos 服务注册与发现功能实现!

    Nacos 是 Spring Cloud Alibaba 中一个重要的组成部分,它提供了两个重要的功能:服务注册与发现和统一的配置中心功能. 服务注册与发现功能解决了微服务集群中,调用者和服务提供者连 ...

  6. Spring Cloud Alibaba(二) 配置中心多项目、多配置文件、分目录实现

    介绍 之前Spring Cloud Config基础篇这篇文章介绍了Spring Cloud Config 配置中心基础的实现,今天继续聊下Spring Cloud Config 并结合nacos做服 ...

  7. Spring 社区的唯一一个国产开源项目 - Spring Cloud Alibaba 毕业了

    阿里妹导读:一年多前,Java 界最近发生了一件大事,阿里开源 Spring Cloud Alibaba,并推出首个预览版.Spring Cloud 本身是一套微服务规范,并不是一个拿来即可用的框架, ...

  8. Spring Cloud Alibaba(2)---RestTemplate微服务项目

    RestTemplate微服务项目 前言 因为要运用 Spring Cloud Alibaba 开源组件到分布式项目中,所以这里先搭建一个不通过 Spring Cloud只通过 RestTemplat ...

  9. Spring Cloud Alibaba 介绍及工程准备

    简介 SpringCloud Alibaba是阿里巴巴集团开源的一套微服务架构解决方案. 微服务架构是为了更好的分布式系统开发,将一个应用拆分成多个子应用,每一个服务都是可以独立运行的子工程.其中涵盖 ...

  10. Spring Cloud Alibaba基础教程:Nacos的集群部署

    继续说说生产环境的Nacos搭建,通过上一篇<Spring Cloud Alibaba基础教程:Nacos的数据持久化>的介绍,我们已经知道Nacos对配置信息的存储原理,在集群搭建的时候 ...

随机推荐

  1. PAT Basic 1132 数列的⽚段和(20) [数学问题-简单数学]

    题目 给定⼀个正数数列,我们可以从中截取任意的连续的⼏个数,称为⽚段.例如,给定数列{0.1, 0.2, 0.3,0.4},我们有(0.1) (0.1, 0.2) (0.1, 0.2, 0.3) (0 ...

  2. Disruptor的简单介绍与应用

    前言 最近工作比较忙,在工作项目中,看了很多人都自己实现了一套数据任务处理机制,个人感觉有点乱,且也方便他人的后续维护,所以想到了一种数据处理模式,即生产者.缓冲队列.消费者的模式来统一大家的实现逻辑 ...

  3. Maven--可选依赖

    假设有这样换一个依赖关系,项目 A 依赖于项目 B,项目 B 依赖于项目 X 和 Y,B 对于 X 和 Y的依赖都是可选依赖: A -> B B -> X(可选) B -> Y(可选 ...

  4. java中常见的json解析方法、库以及性能对比

    常见的json解析有原生的JSONObject和JSONArray方法,谷歌的GSON库,阿里的fastjson,还有jackson,json-lib. Gson(项目地址:https://githu ...

  5. js操作元素导致元素错位和大小改变

    使用js循环的方式批量控制元素的大小时结果往往不尽如人意. 我总结了一条规律 在一个循环体内不可以同时存在一下两种操作,否则容易导致元素错位或大小改变: 1.对元素的offsetWidth.offse ...

  6. Android圆角布局、天气应用、树状图、日食动画、仿饿了么导航效果等源码

    Android精选源码 Android通用圆角布局源码 Android天气应用源码,界面美观 一个支持定制的树状 Android 自定义View PIN 码专用输入控件,支持任意长度和输入任意数据 A ...

  7. Linux保护机制

    RELRO(RELocation Read Only) 在Linux中有两种RELRO模式:"Partial RELRO" 和 "Full RELRO".Lin ...

  8. static及final知识点整理

    final在Java中是一个保留的关键字,可以声明成员变量.方法.类以及本地变量.一旦你将引用声明作final,你将不能改变这个引用了,编译器会检查代码,如果你试图将变量再次初始化的话,编译器会报编译 ...

  9. Cf D. Nauuo and Circle

    https://codeforces.com/contest/1173/problem/D 题意: 给出你一个包含 n 个点的树,这 n 个点编号为 1~n: 给出一个圆,圆上放置 n 个位置,第 i ...

  10. wait操作接口

    1.等待回收的两个函数wait()和waitpid()函数 1.1 wait(int *status)的用法:阻塞函数,等待任意一个子进程的返回.   *wait(NULL):对子进程的结束状态不关心 ...