微服务
文章平均质量分 75
介绍微服务相关的内容
Stephen·You
这个作者很懒,什么都没留下…
展开
-
Springboot微服务读取服务配置application失败
问题现象:今天在本机启动springboot项目并访问kafka服务的时候发现如下报错:2022-01-12 10:53:34.843 WARN 69212 --- [ad | producer-1] org.apache.kafka.clients.NetworkClient : [Producer clientId=producer-1] Connection to node -1 (/127.0.0.1:9092) could not be established. B...原创 2022-01-12 11:12:14 · 2508 阅读 · 0 评论 -
Nacos(dubbo)报错:The IP address(“http::9090“) is incorrect.
目录问题现象:问题分析:解决方法:问题现象:今天在启动微服务的时候,出现了如下报错:java.lang.IllegalArgumentException: The IP address("http::9090") is incorrect. If it is an IPv6 address, please use [] to enclose the IP part!问题分析:看了一下报错信息,只知道是ip有问题,其中提到了9090端口,我在项目里搜了一...原创 2022-01-06 17:36:25 · 5524 阅读 · 0 评论 -
Nacos学习日记4 - NacosSync 介绍
NacosSync 介绍介绍 NacosSync是一个支持多种注册中心的同步组件,基于Spring boot开发框架,数据层采用Spring Data JPA,遵循了标准的JPA访问规范,支持多种数据源存储,默认使用Hibernate实现,更加方便的支持表的自动创建更新 使用了高效的事件异步驱动模型, 支持多种自定义事件,使得同步任务处理的延时控制在3s,8C16G的单机能够支持6K的同步任务 NacosSync除了单机部署,也提供了高可用的集群部署模式,NacosSync是无原创 2020-06-15 17:12:45 · 574 阅读 · 0 评论 -
Nacos学习日记2 - Nacos 的下载,安装与简单使用
Nacos 的下载,安装与简单使用这个快速开始手册是帮忙您快速在您的电脑上,下载、安装并使用 Nacos。0.版本选择可以在Nacos的release notes及博客中找到每个版本支持的功能的介绍,当前推荐的稳定版本为1.3.0。1.预备环境准备Nacos 依赖 Java 环境来运行。如果您是从代码开始构建并运行Nacos,还需要为此配置 Maven环境,请确保是在以下版本环境中安装使用: 64 bit OS,支持 Linux/Unix/Mac/Windows,推荐选用 L.原创 2020-06-15 16:50:48 · 446 阅读 · 0 评论 -
Nacos学习日记5 - 开源API使用手册
Open API 指南目录Open API 指南配置管理获取配置描述请求类型请求URL请求参数返回参数错误编码示例监听配置描述请求类型请求URL请求参数Header 参数参数说明返回参数错误编码示例发布配置描述请求类型请求 URL请求参数返回参数错误编码示例删除配置描述请求类型请求 URL请求参数返回参数错误编码示例服务发现注册实例描述请求类型原创 2020-06-15 17:28:05 · 3364 阅读 · 0 评论 -
Nacos学习日记1 - Nacos是什么
Nacos目录Nacos什么是 NacosNacos官方文档地址:Nacos 地图Nacos 生态图Nacos对框架的集成Nacos 概念地域可用区接入点命名空间配置配置管理配置项配置集配置集 ID配置分组配置快照服务服务名服务注册中心服务发现元信息应用服务分组虚拟集群实例权重健康检查健康保护阈值Nacos 架构基本架构及概念服务 (Service)服务注册中心 (Se转载 2020-06-15 16:59:01 · 641 阅读 · 0 评论 -
Nacos学习日记6-基于Springboot框架的Nacos服务注册报错:Application run failed
基于Springboot框架的Nacos服务注册报错问题现象:今天在测试使用Nacos进行纯代码的方式去注册服务的时候,在启动项目时出现了报错,如下:Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.2020-06-17 17:48:21.588 ERROR 21372 --- [ restartedMain] o.s.原创 2020-06-17 18:10:39 · 1697 阅读 · 0 评论 -
Nacos学习日记3 - Nacos 对Spring,SpringBoot,Springcloud框架集成的实例项目
Nacos 对各种框架集成的实例项目 Nacos Nacos Spring Nacos Spring Boot Spring Cloud Alibaba Nacos Docker原创 2020-06-15 17:11:31 · 357 阅读 · 0 评论 -
(已解决)如何在调用fegin接口时设置请求头header和传入参数
问题现象:最近在研究如何使用 fegin调用第三方服务接口,并设置请求头和参数,发现了方法注解@Header 、 参数属性@RequestHeader 和方法注解@Requestmapping 属性 headers的特点,以及参数属性@RequestParam 、参数属性@Param 和方法注解@Requestmapping属性params的特点。问题分析:来观察一个我在项目中成功调用fegin接口的例子,这是fegin接口中定义的一个接口方法getToken:applicati...原创 2021-01-19 17:33:01 · 9641 阅读 · 0 评论 -
Nepxion Discovery学习笔记8 Gateway网关
Spring Cloud Gateway简介:是Spring公司基于Spring 5.0,Spring Boot 2.0 和 Project Reactor 等技术开发的网关,它旨在为微服务架构提供一种简单有效的统一的 API 路由管理方式。它的目标是替代Netflflix Zuul,其不仅提供统一的路由方式,并且基于 Filter 链的方式提供了网关基本的功能,例如:安全,监控,限流。优点: 性能强劲:是第一代网关Zuul的1.6倍 功能强大:内置了很多实用的功能,例如转发、监控、原创 2020-10-26 15:49:49 · 564 阅读 · 1 评论 -
Nepxion Discovery学习笔记7 网关是什么?
什么是网关,作用是什么?首先得知道:如果没有网关的存在,我们只能在客户端记录每个微服务的地址,然后分别去调用.这样的架构,会存在着诸多的问题: 1.客户端多次请求不同的微服务,增加客户端代码或配置编写的复杂性 2.认证复杂,每个服务都需要独立认证。 3.存在跨域请求,在一定场景下处理相对复杂。因此网关就是为了解决这些问题而存在的组件API网关:就是指系统的统一入口,它封装了应用程序的内部结构,为客户端提供统一服务,一些与业务本身功能无关的公共逻辑可以在这里实现,如认证、鉴权、原创 2020-10-23 17:43:51 · 215 阅读 · 0 评论 -
Nepxion Discovery学习笔记4 Sentinel流量防卫兵/服务容错综合方案
笔记1:@SentinelResource:@SentinelResource 用于定义资源,并提供可选的异常处理和 fallback 配置项。 属性 作用 value 资源名称 entryType entry类型,标记流量的方向,取值IN/OUT,默认是OUT blockHandler 处理BlockException的函数名称,函数要求: 1.原创 2020-10-23 14:56:29 · 154 阅读 · 0 评论 -
Sentinel学习日记1-Sentinel是什么?
Sentinel是什么?1. 概述Sentinel 提供一个轻量级的开源控制台,它提供机器发现以及健康情况管理、监控(单机和集群),规则管理和推送的功能。另外,鉴权在生产环境中也必不可少。这里,我们将会详细讲述如何通过简单的步骤就可以使用这些功能。接下来,我们将会逐一介绍如何整合 Sentinel 核心库和 Dashboard,让它发挥最大的作用。同时我们也在阿里云上提供企业级的控制台:AHAS Sentinel 控制台,您只需要几个简单的步骤,就能最直观地看到控制台如何实现这些功能。Sen原创 2020-06-18 16:46:14 · 264 阅读 · 0 评论 -
Nepxion Discovery学习笔记5 Sentinel流量防卫兵/服务容错综合方案
笔记1:Sentinel规则持久化:通过Dashboard来为每个Sentinel客户端设置各种各样的规则,但是这里有一个问题,就是这些规则默认是存放在内存(一旦服务重启规则就随之删除了)中,极不稳定,所以需要将其持久化。本地文件数据源会定时轮询文件的变更,读取规则。这样我们既可以在应用本地直接修改文件来更 新规则,也可以通过 Sentinel 控制台推送规则。以本地文件数据源为例,推送过程如下图所示: 首先 Sentinel 控制台通过 API 将规则推送至客户端并更新到内存中,接着注原创 2020-10-23 16:50:13 · 193 阅读 · 0 评论 -
Nepxion Discovery学习笔记3 Sentinel流量防卫兵/服务容错综合方案
Sentinel(分布式系统的流量防卫兵) 是阿里开源的一套用于服务容错的综合性解决方案。它以流量 为切入点, 从流量控制、熔断降级、系统负载保护等多个维度来保护服务的稳定性。笔记1:Sentinel 具有以下特征: 1.丰富的应用场景:Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景, 例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填谷、集群流量控制、实时熔断下游不可用应用等。 2.完备的实时监控:Sentinel 提供了实时的监控功能。通过控制台可原创 2020-10-23 11:50:10 · 288 阅读 · 0 评论 -
Nepxion Discovery学习笔记6 Sentinel流量防卫兵/服务容错综合方案
笔记1:Feign整合Sentinel:第1步: 引入Feign和sentinel的依赖: <!--fegin组件--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId>原创 2020-10-23 17:31:03 · 216 阅读 · 0 评论 -
Nepxion Discovery学习笔记1 Nacos注册中心服务器+Feign伪Http客户端
目录笔记1:Nacos的作用就是一个注册中心:笔记2:Feign是Spring Cloud提供的一个声明式的伪Http客户端:笔记1:Nacos的作用就是一个注册中心:依赖:<!--nacos客户端--><dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-di原创 2020-10-22 11:06:26 · 3060 阅读 · 1 评论 -
Nacos报错:NacosException: failed to req API:/nacos/v1/ns/instance after all servers([localhost:8848]
问题现象:今天在学习Nacos的时候,启动项目时,报错如下:NacosException: failed to req API:/nacos/v1/ns/instance after all servers([localhost:8848]问题分析:在网上找了很久才看到有一个说法是: 没有启动Nacos服务我才意识到问题所在: 因为几个月前有大致的了解了一下nacos和sentinel,所以很多都基本忘了...太拙劣了我解决方法:启动nacos再启动项目....原创 2020-10-20 17:15:41 · 15978 阅读 · 2 评论 -
springboot单体项目拆分为微服务模式后报错:dataSource or dataSourceClassName or jdbcUrl is required.
问题现象:今天在项目中遇到一个问题:组长让我把一个springboot单体项目简单的拆分为微服务项目;我将项目简单的拆分为:1.controller+config模块2.数据model+dao/mapper持久层模块之后;运行项目却发生了如下报错:问题分析:通过查看报错信息:java.lang.IllegalArgumentException: dataSource or dataSourceClassName or jdbcUrl is required.可以.原创 2020-08-04 14:35:47 · 8612 阅读 · 2 评论 -
RestTemplate实现微服务间的通信和接口调用
问题现象:今天在学习微服务架构的过程中,思考着:如何实现微服务间的通信呢?问题分析:在学习中我遇到了一种很简单的通信方法,在这里和大家分享一下:在最初学习Spring的时候,我们常常会使用HttpClient 或者 Httpurlconnection来实现外部服务的接口调用,但是代码太过冗余.这里给大家介绍一种方法: RestTemplate ,既方便又快捷!首先,在启动类中用 @Bean 注册RestTemplate对象然后就可以在Controller层 中,注入...原创 2020-10-21 17:20:58 · 1134 阅读 · 3 评论 -
微服务启动报错:java.lang.IllegalArgumentException: Not a managed type: class com.xxx.xxx.model.User
问题现象:今天在搭建微服务架构项目后,启动某个微服务时,遇到了如下报错:java.lang.IllegalArgumentException: Not a managed type: class com.xxx.xxx.model.xxx问题分析:根据报错信息可知,这是因为找不到model下某个实体类,也就是说没有找到匹配的目录路径!这是因为在微服务架构中,当前微服务会在当前路径下去匹配这个路径:这是我的dao接口:在继承jpa时,要传入实体类,而这个实体类是放在另一个微原创 2020-10-21 15:18:04 · 2129 阅读 · 0 评论 -
Nepxion Discovery学习笔记2 服务雪崩与容错方案
笔记1:服务雪崩效应:1.在分布式系统中,由于网络原因或自身的原因,服务一般无法保证 100% 可用。如果一个服务出现了问题,那调用这个服务就会出现线程阻塞的情况,此时若有大量的请求涌入,就会出现多条线程阻塞等 待,进而导致服务瘫痪。 由于服务与服务之间的依赖性,故障会传播,会对整个微服务系统造成灾难性的严重后果,这就是服务故障的 “雪崩效应” 。笔记2:容错方案:要防止雪崩的扩散,我们就要做好服务的容错,下面介绍常见的服务容错思路和组件。常见的容错思路有隔离、超时、限流、熔断、降级原创 2020-10-22 14:57:32 · 306 阅读 · 0 评论 -
RestTemplate添加@LoadBalanced注解利用SpringCloud的Ribbon实现自动化负载均衡
问题现象:今天在学习微服务过程中,有提到一个问题:如何简单的实现负载均衡呢?问题分析:通过处不学习,我了解了一些实现负载均衡的方法:例如可以通过 注册注入DiscoveryClient 对象,调用getInstances("服务名") 的方法来获取相同服务名的对象集合,再通过 get(index) 方法就可以根据index来选择被调用接口的服务对象了.然后通过new Random().nextInt(instances.size());就可以随机获取 [0~集合长度-1] 的ind...原创 2020-10-22 10:22:23 · 593 阅读 · 0 评论