微服务
文章平均质量分 63
chengqiuming
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Spring Cloud Gateway 替换 Nginx 实战
一搭建server-dataway微服务二引入pom文件<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM...原创 2021-10-26 20:30:42 · 2061 阅读 · 0 评论 -
Spring Cloud Gateway 替换 Nginx
一网关介绍API 网关出现的原因是微服务架构的出现,不同的微服务一般会有不同的网络地址,而外部客户端可能需要调用多个服务的接口才能完成一个业务需求,如果让客户端直接与各个微服务通信,会有以下的问题。 客户端会多次请求不同的微服务,增加了客户端的复杂性。 存在跨域请求,在一定场景下处理相对复杂。 认证复杂,每个服务都需要独立认证。 难以重构,随着项目的迭代,可能需要重新划分微服务。例如,可能将多个服务合并成一个或者将一个服务拆分成多个。如果客户端直接与微服务通信,那么.原创 2021-10-26 18:32:47 · 3666 阅读 · 0 评论 -
微服务间的桥梁 Feign
一搭建 service-client 父模块pom文件如下<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4..原创 2021-10-23 14:19:23 · 472 阅读 · 0 评论 -
将子系统注册到 Nacos 中
一需求将子系统 service_obj 和 service_cmn注册到Nacos中。二步骤1 在 service 模块pom文件引入依赖<!-- 服务注册 --><dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId...原创 2021-10-22 20:58:28 · 338 阅读 · 0 评论 -
nacos的引入
一需求当一个子系统(service_obj)调用另外一个子系统(service_cmn)时,为了管理方便,引入nacos。二什么是nacosNacos 是阿里巴巴推出来的一个新开源项目,这是一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“...原创 2021-10-22 20:40:21 · 897 阅读 · 0 评论 -
nacos命名空间和配置分组
一使用命名空间做环境隔离1创建命名空间2克隆配置文件在public命名空间中克隆文件到新的命名空间3配置命名空间默认情况下微服务读取配置中心中 public 命名空间中的配置文件,可以指定命名空间id使用特定命名空间中的配置。二使用命名空间做微服务隔离1创建命名空间2 克隆配置文件在public命名空间中克隆文件到sms命名空间3 配置命名空间将sms命名空间id配置给sms微服务的boorstrap.yml文件4 命名空间和环...原创 2021-01-20 20:31:49 · 6874 阅读 · 0 评论 -
2021-01-19
一 配置中心介绍1 微服务架构下关于配置文件的问题a 配置文件相对分散在一个微服务架构下,配置文件会随着微服务的增多变的越来越多,而且分散在各个微服务中,不好统一配置和管理。b 配置文件无法区分环境微服务项目可能会有多个环境,例如:测试环境、预发布环境、生产环境。每一个环境所使用的配置理论上都是不同的,一旦需要修改,就需要我们去各个微服务下手动维护,这比较困难。c 配置文件无法实时更新我们修改了配置文件之后,必须重新启动微服务才能使配置生效,这对一个正在运行的项目来说非常不友好。原创 2021-01-19 20:10:18 · 197 阅读 · 0 评论 -
OpenFeign整合Sentinel
一引入sentinel的依赖<!-- 服务容错 --><dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId></dependency>二开启sentinel支持在service_edu的yml配置文件中开启Feign对S..原创 2020-11-29 19:01:14 · 1395 阅读 · 0 评论 -
Sentinel的概念和功能
一实现接口限流1添加流控规则2基本参数 资源名:唯一名称,默认是请求路径,可自定义 针对来源:指定对哪个微服务进行限流,默认指default,意思是不区分来源,全部限制 阈值类型/单机阈值: QPS(每秒请求数量): 当调用该接口的QPS达到阈值的时候,进行限流 线程数:当调用该接口的线程数达到阈值的时候,进行限流 是否集群:暂不需要集群 3 测试限流效果快速访问message1测试结果二 基本概念1 资源...原创 2020-11-29 17:42:07 · 1655 阅读 · 0 评论 -
Sentinel介绍和环境搭建
一 Sentinel介绍1 什么是SentinelSentinel (分布式系统的流量防卫兵) 是阿里开源的一套用于服务容错的综合性解决方案。它以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度来保护服务的稳定性。2 Sentinel 的特征丰富的应用场景:Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景,例如秒杀、消息削峰填谷、集群流量控制、实时熔断下游不可用应用等。完备的实时监控:Sentinel 提供了实时的监控功能。通过控制台可以看到接入应用的单台原创 2020-11-29 16:57:59 · 794 阅读 · 0 评论 -
Jmeter模拟雪崩效应
一测试构造修改service-edu1tomcat并发修改server: tomcat: max-threads: 10 #tomcat的最大并发值修改为10,默认是2002controller测试方法TeacherController中添加并发测试方法/*** 功能描述:并发测试** @return R 返回给前端的数据* @author cakin* @date 2020/11/29*/@ApiOperation("测试并发")@GetMap...原创 2020-11-29 15:40:19 · 556 阅读 · 0 评论 -
基于OpenFeign的服务调用
一 OpenFeign是什么OpenFeign是Spring Cloud提供的一个声明式的伪Http客户端, 它使得调用远程服务就像调用本地服务一样简单, 只需要创建一个接口并添加一个注解即可。Nacos很好的兼容了OpenFeign, OpenFeign默认集成了 Ribbon, 所以在Nacos下使用OpenFeign默认就实现了负载均衡的效果。二 OpenFeign的引入1 引入依赖service模块中配置OpenFeign的pom依赖(实际是在服务消费者端需要OpenFeign的原创 2020-11-29 10:35:34 · 950 阅读 · 0 评论 -
Nacos注册中心
一 Nacos注册中心1 常见注册中心Eureka:Eureka是Spring Cloud Netflix中的重要组件,主要作用就是做服务注册和发现。2.0遇到性能瓶颈,停止维护,现在已经闭源。Consul:Consul是基于GO语言开发的开源工具,主要面向分布式,服务化的系统提供服务注册、服务发现和配置管理的功能。Zookeeper:zookeeper是一个分布式服务框架,是Apache Hadoop 的一个子项目。Nacos:Spring Cloud Alibaba出品 Ali原创 2020-11-28 20:33:20 · 4789 阅读 · 0 评论 -
Spring Cloud Alibaba的引入
一 停更引发的升级问题停更不停用:Spring Cloud Netflix 项目进入了维护模式 被动修复bugs 不再接受合并请求 不再发布新版本 SpringCloudAlibaba有后来居上之势,逐步进入微服务主流市场。二版本选择在父项目 guli_parent 中确认核心组件版本1SpringBoot<!-- Spring Boot --><parent> <groupId>org.spri...原创 2020-11-28 19:47:04 · 1752 阅读 · 0 评论 -
谷粒学院在线教育系统功能分解和技术架构
一功能介绍谷粒学院:是一个B2C模式的职业技能在线教育系统,分为前台用户系统和后台运营平台。二技术架构系统开发阶段使用了前后端分离架构,部署阶段使用了容器技术。原创 2020-11-10 20:59:13 · 2417 阅读 · 0 评论 -
多个微服务调试技巧
一同时重启多个微服务1创建compound2加入需要同时重启的微服务3修改每个微服务启动内存4改名5重启二调试过程中读未提交数据库数据# 读未提交数据set session transaction isolation level read uncommitted;...原创 2020-11-08 16:24:41 · 1339 阅读 · 0 评论 -
商品管理系统商品分类增删改查前后端实现
一前端实现1category.vue<template> <div> <!-- 拖拽功能 draggable:拖拽开关 active-text:功能开启时显示字样 inactive-text:功能关闭时显示字样 --> <el-switch v-model="draggable" active-text="开启拖拽" inactive-t..原创 2020-10-26 20:29:49 · 3442 阅读 · 1 评论 -
网关统一配置解决跨域问题
一点睛跨域:指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对 javascript 施加的安全限制。同源策略:是指协议,域名,端口都要相同,其中有一个不同都会产生跨域。跨域流程:非简单请求(PUT、DELETE)等,需要先发送预检请求。参考: https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Access_control_CORS二解决跨域请求方案1——使用Nginx部署为同一域三解决跨域...原创 2020-10-25 13:39:06 · 7085 阅读 · 1 评论 -
商品三级菜单配置网关路由与路径重写
一启动后端管理系统RenrenApplication二启动前端项目gulimall-admin-vue-appnpmrundev三获取菜单关键代码// 方法集合 methods: { // 获取树形菜单结构 getMenus() { this.$http({ url: this.$http.adornUrl("/product/category/list/tree"), method: "get", ...原创 2020-10-25 11:33:08 · 1417 阅读 · 3 评论 -
SpringCoud Gateway实战
目录一创建 gulimall-gateway 微服务二引入 gulimall-common 依赖和 spring-cloud-starter-gateway 依赖三开启网关的服务注册和发现四创建 application.properties 文件,指定服务名和注册中心地址五在nacos创建配置中心的命名空间和配置六 创建 bootstrap.properties 文件,添加如下配置,指明配置中心地址和所属命名空间七启动服务gulimall-gateway八测试...原创 2020-10-18 10:32:20 · 484 阅读 · 0 评论 -
SpringCoud Gateway网关核心概念和原理
一网关的位置和作用网关作为流量的入口,常用功能包括路由转发、权限校验、限流控制等。SpringCloudgateway作为 SpringCloud官方推出的第二代网关框架,取代了Zuul网关。二鉴权、限流和日志输出上移1原来的模型2现在的模型三官网https://spring.io/projects/spring-cloud-gateway四工作原理...原创 2020-10-18 09:40:19 · 1411 阅读 · 0 评论 -
Nacos加载多个配置集
一点睛当微服务数量很庞大时,将所有配置都书写到一个配置文件中,显然不是太合适。对此我们可以将配置按照功能的不同,拆分为不同的配置文件。二操作步骤1原来的配置文件spring: datasource: username: root password: root url: jdbc:mysql://192.168.0.110:3306/gulimall_sms driver-class-name: com.mysql.jdbc.Driver clo...原创 2020-10-18 09:11:53 · 3509 阅读 · 1 评论 -
Nacos支持的配置方案
目录一点睛二Namespace方案三DataID方案四Group方案五综合方案一点睛Nacos支持“Namespace+group+data ID”的配置解决方案。二Namespace方案通过命名空间实现环境区分。命名空间是做配置隔离的。默认:public(默认空间),默认新增的所有配置都在public空间。应用场景a 开发、测试和生产:利用命名空间来做环境隔离。注意:在 bootstrap.properties 配置上,需要使用哪个命名...原创 2020-10-18 08:45:34 · 1095 阅读 · 1 评论 -
SpringCloud Alibaba nacos配置中心
一依赖和配置1添加pom依赖<!-- 配置中心来做配置管理 --><dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId></dependency>2创建bootstrap.properties文件,该配置文件会...原创 2020-10-17 20:24:17 · 254 阅读 · 0 评论 -
SpringCoud-OpenFeign测试远程调用
一引入OpenFeign<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId></dependency>二编写一个远程接口,告诉SpringCLoud这个接口需要被远程调用修改“com.bigdata.gulimall.coupon..原创 2020-10-17 19:43:29 · 424 阅读 · 0 评论 -
Spring Cloud Alibaba的nacos作为注册中心
一官网参考https://github.com/alibaba/spring-cloud-alibaba/blob/master/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/readme-zh.md二 NacosServer服务器1下载地址https://github.com/alibaba/nacos/releases2源码生成方法https://www.pianshen.com/a...原创 2020-10-16 20:55:01 · 206 阅读 · 0 评论 -
SpringCloud Alibaba与Spring Cloud搭配方案
一简介SpringCloudAlibaba致力于提供微服务开发一站式解决方案。此项目包括开发分布式应用微服务的必需组件,方便开发者通过SpringCloud编程模型轻松使用这些组件来开发分布式应用服务。依托SpringCloudAlibaba,你只需要添加一些注解和少量配置,就可以将SpringCloud应用接入阿里微服务解决方案,通过阿里云中间件来迅速搭建分布式应用系统。二开源地址https://github.com/alibaba/spring-cloud-al...原创 2020-10-16 19:53:04 · 2801 阅读 · 0 评论 -
MyBatis-plus配置和测试微服务基本CRUD
一 整合MyBatis-Plus1 导入依赖<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.2.0</version></dependency>2 配置2.1 配置数据源a 导入数据库的驱动。&l原创 2020-10-15 20:39:39 · 440 阅读 · 0 评论 -
电商管理系统微服务架构图
一微服务架构图二微服务划分图原创 2020-10-08 12:27:22 · 4107 阅读 · 0 评论 -
Spring Cloud灰度发布实战
一代码位置运行下面这个项目https://github.com/cakin24/Discovery下面这个项目仅做参考https://github.com/cakin24/spring-cloud-code/tree/master/ch21-1二Nacos下载https://blog.csdn.net/Very666/article/details/89327489...原创 2019-12-08 13:17:10 · 605 阅读 · 0 评论 -
Spring Cloud和gRPC的整合实战
一代码位置https://github.com/cakin24/spring-cloud-code/tree/master/ch20-1二zipkin下载以及运行1地址地址https://dl.bintray.com/openzipkin/maven/io/zipkin/java/zipkin-server/2运行D:\Program\zipkin>java...原创 2019-12-07 15:34:35 · 2828 阅读 · 0 评论 -
gRPC实战
一代码位置https://github.com/cakin24/spring-cloud-code/tree/master/ch19-2二首先编译三测试1启动grpc-simple-server2启动grpc-simple-client3客户端输出结果greeting: "Hi forezp you are 17 years old your hoby...原创 2019-12-06 19:19:27 · 667 阅读 · 1 评论 -
使用Protocol Buffers的Maven插件
一代码位置https://github.com/cakin24/spring-cloud-code/tree/master/ch19-1二编译protobuf三编译后通过下面代码测试package cn.springcloud;import cn.springcloud.proto.PersonModel;import com.google.protobuf.In...原创 2019-12-05 20:25:45 · 957 阅读 · 0 评论 -
Spring Cloud Gateway源码解读
一SpringCloudGateway的处理流程二源码阅读关键断点ReactorHttpHandlerAdapterHttpWebHandlerAdapterDispatcherHandlerRoutePredicateHandlerMappingFilteringWebHandler...原创 2019-12-04 20:57:46 · 2008 阅读 · 1 评论 -
Spring Cloud Gateway动态路由实战
一代码位置https://github.com/cakin24/spring-cloud-code/tree/master/ch18-7二测试1 启动gateway2postman输入http://localhost:8080/actuator/gateway/routes3 postman输入如下界面,然后运行4postman输入http://loca...原创 2019-12-04 19:50:28 · 964 阅读 · 0 评论 -
Spring Cloud基于CPU使用率进行限流
一代码位置https://github.com/cakin24/spring-cloud-code/tree/master/ch18-6/ch18-6-3-gatewayhttps://github.com/cakin24/spring-cloud-code/tree/master/ch18-6/ch18-6-provider二测试1启动ch18-6-3-gateway2...原创 2019-12-03 20:56:40 · 752 阅读 · 1 评论 -
Spring Cloud Gateway内置过滤器工厂限流
一代码位置https://github.com/cakin24/spring-cloud-code/tree/master/ch18-6/ch18-6-2-gatewayhttps://github.com/cakin24/spring-cloud-code/tree/master/ch18-6/ch18-6-provider二测试1启动ch18-6-2-gateway2...原创 2019-12-03 20:39:26 · 429 阅读 · 0 评论 -
Spring Cloud Gateway自定义过滤器实现限流
一代码位置https://github.com/cakin24/spring-cloud-code/tree/master/ch18-6/ch18-6-1-gatewayhttps://github.com/cakin24/spring-cloud-code/tree/master/ch18-6/ch18-6-provider二 测试1启动ch18-6-1-gateway2...原创 2019-12-03 20:18:11 · 1275 阅读 · 2 评论 -
Spring Cloud Gateway集成Swagger
一代码位置https://github.com/cakin24/spring-cloud-code/tree/master/ch18-5二测试1启动ch18-5-eureka2启动ch18-5-service3启动ch18-5-gateway4浏览器输出http://localhost:8081/swagger-ui.html...原创 2019-12-02 19:46:11 · 1104 阅读 · 0 评论 -
Spring Cloud Gateway的Https实战
一代码位置https://github.com/cakin24/spring-cloud-code/tree/master/ch18-4二断点调试关键点1HttpsToHttpFilter2HttpSchemeFilter注意观察两个过滤器的执行顺序三测试1启动ch18-4-eureka2启动ch18-4-service-a3启动ch18...原创 2019-12-02 19:39:02 · 2260 阅读 · 0 评论
分享