谷粒商城--分布式基础篇P1~P27 去年3月份谷粒商城分布式基础、进阶、高级刚出的时候就开始学了,但是中途因为一些事就中断了,结果一直到现在才有时间重新开始学,看到现在网上这么多人都学完了,确实感觉到很惭愧,重新整理学习笔记吧,后续不断更新。 【谷粒商城--分布式基础篇P1~P27】: https://blog.csdn.net/Empire_ing/article/details/118860147 目录 1.分布式基本概念 1.微服务 2.分布式&集群&节点 3.远程调用&负载均衡 4.注册中心&配置中心 5.服务熔断&服务降级 6.API网关 2.项目架构 1.架构流程 2.项目技术 3.分布式项目启动相关报错 1.npm install 失败 2.renren-fast-vue启动页面报错 :<% if (process.env.NODE_ENV === ‘production‘) { %> <% }else { %> <% } %> 3.renren-fast项目启动失败 4.Nacos启动失败: 4.分布式项目内容 1.Nacos注册中心、配置中心 2.OpenFeign远程调用 3.GateWay网关 4.实现效果 将一个大型单体应用,拆分成各个独立部署运行的单个微服务 node环境:node.js--版本v10.20.0 (下面命令一定要以管理员身份启动) 注:很多情况下npm会报错,但是使用cnpm就能正常下载启动 所以我整体启动流程是: ? 在上述前后端基本环境配置好后,每次项目启动都需要提前准备的环境:nacos启动、renren-fast启动。然后就可以启动项目编写代码了。 ? 所有微服务(包括GateWay网关)注册到注册中心中,可以统一管理配置各个微服务配置文件。导入主要流程分如下几步 ? 微服务A想调用微服务B中的接口。导入主要流程分如下几步 ? 这里先从简,只配置nacos注册中心与gateway路由,后面做大了再改。1.分布式基本概念
1.微服务
2.分布式&集群&节点
3.远程调用&负载均衡
4.注册中心&配置中心
5.服务熔断&服务降级
6.API网关
2.项目架构
1.架构流程
2.项目技术
3.分布式项目启动相关报错
1.npm install 失败
#管理员身份切换到renren-fast-vue下(node.js-v10.20.0)
npm config set registry http://registry.npm.taobao.org/
cnpm install
npm run dev
2.renren-fast-vue启动页面报错 :<% if (process.env.NODE_ENV === ‘production‘) { %> <% }else { %> <% } %>
cnpm rebuild node-sass --save-dev
npm uninstall node-sass
cnpm install [email protected]
npm run dev
3.renren-fast项目启动失败
4.Nacos启动失败:
4.分布式项目内容
1.Nacos注册中心、配置中心
2.OpenFeign远程调用
package com.empirefree.gulimall.member.feign;
import com.empirefree.common.utils.R;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestMapping;
@FeignClient("gulimall-coupon")
public interface CouponFeignService {
@RequestMapping("/coupon/coupon/member/list")
public R membercoupones();
}
@Autowired
private CouponFeignService couponFeignService;
3.GateWay网关
spring:
cloud:
nacos:
config:
server-addr: 127.0.0.1:8848
spring:
cloud:
gateway:
routes:
- id: product_route
uri: lb://gulimall-product
predicates:
- Path=/api/product/**
filters:
4.实现效果