
SpringCloud
文章平均质量分 96
主要介绍的是springcloud一系列组件
技术路上的苦行僧
不怕别人天赋比你高,就怕别人比你更努力
展开
-
SpringCloud(22)之Sentinel实战应用
随着微服务的流行,服务和服务之间的稳定性变得越来越重要。Sentinel是面向分布式、多语言异构化服务架构的流量治理组件,主要以流量为切入点,从流量路由、流量控制、流量整形、熔断降级、系统自适应过载保护、热点流量防护等多个维度来帮助开发者保障微服务的稳定性。1)Sentinel核心组件1核心库(Java客户端不依赖任何框架库,能够运行于Java7及以上的版本的运行时环境,同时对DubboSpringCloud等框架也有较好的支持。2控制台(Dashboard。原创 2024-03-14 15:35:04 · 1220 阅读 · 0 评论 -
SpringCloud(21)之SpringCloud Alibaba Nacos实战应用
Nacos是Alibaba微服务生态组件中的重要组件之一,主要用它实现应用的动态服务发现、配置管理、 服务管理。Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。Nacos支持几乎所有主流类型的服务的发现、配置和管理:1.2.3.原创 2024-03-11 20:44:33 · 1391 阅读 · 1 评论 -
SpringCloud(20)之Skywalking Agent原理剖析
1)探针工程创建工程hailtaxiagent用来编写agent包,该类需要用mavenassemblyplugin打包,我们先引入--自动添加META-INF/MANIFEST.MF -->-- 添加 mplementation-*和Specification-*配置项-->-- 将 premain-class 配置项设置为com.jokermqc.LoginAgent-->原创 2024-03-06 10:38:28 · 1612 阅读 · 0 评论 -
SpringCloud(19)之Skywalking应用上篇
Skywalking是一个可观测性分析平台和应用性能管理系统,它也是基于规范、开源的AMP系统。Skywalking提供分布式跟踪、服务网格遥测分析、度量聚合和可视化一体化解决方案。支持JavaNetCorePHPNodeJSGolangLUA, c++代理。支持Istio特使服务网格SkyWalking核心功能:服务、服务实例、端点指标分析;服务拓扑图分析;服务、服务实例喝端点SLA分析;慢查询检测告警SkyWalking。原创 2024-03-04 18:34:16 · 1532 阅读 · 1 评论 -
SpringCloud(18)之Sleuth +Zipkin链路追踪
Zipkin是一个开放源代码分布式的跟踪系统,它可以帮助收集服务的时间数据,以解决微服务架构中的延迟问题,包括数据的收集、存储、查找和展现。每个服务向zipkin报告计时数据,zipkin会根据调用关系通过ZipkinUI生成依赖关系图,展示多少跟踪请求经过了哪些服务,该系统让开发者可通过一个web前端轻松地收集和分析数据,可非常方便的监测系统中存在的瓶颈。它可以帮助收集服务的时间数据,以解决微服务架构中的延迟问题,包括数据的收集、存储、查找和展现。原创 2024-03-01 11:15:42 · 1110 阅读 · 0 评论 -
SpringCloud(17)之SpringCloud Stream
Spring Cloud Stream是一个框架,用于构建与共享消息系统连接的高度可扩展的事件驱动微服务。该框架提供了一个灵活的编程模型,该模型建立在已经建立和熟悉的Spring习惯用法和最佳实践之上,包括对持久发布/子语义、使用者组和有状态分区的支持。它可以基于SpringBoot来创建独立的、可用于生产的Spring应用程序,SpringCloudStream为一些供应商的消息中间件产品提供了个性化的自动化配置实现,并引入了发布订阅、消费组、分区这三个核心概念。原创 2024-02-26 00:27:33 · 1990 阅读 · 0 评论 -
SpringCloud(16)之SpringCloud OpenFeign和Ribbon
本文主要是简单的介绍了SpringCloud OpenFeign和Spring Cloud Ribbon的使用原创 2024-02-23 17:05:20 · 1253 阅读 · 0 评论 -
SpringCloud(15)之SpringCloud Gateway
主要介绍SpringCloud Gateway的工作原理以及过滤器、动态路由、限流、跨域等的使用原创 2024-02-22 21:21:21 · 1550 阅读 · 1 评论 -
SpringCloud(14)之SpringCloud Consul
一、Consul介绍我们知道 Eureka 2.X遇到困难停止开发了,所以我们需要寻找其他的替代技术替代Eureka,这一小 节我们就讲解一个新的组件Consul。一、Consul介绍Consul 是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置。与其它分布式服务注册与发现的方案,Consul的方案更一站式,内置了服务注册与发现框 架、分布一致性协议实 现、健康检查、Key/Value存储、多数据中心方案,不再需要依赖其它工具(比如ZooKeeper。原创 2024-02-22 13:48:27 · 892 阅读 · 0 评论 -
SpringCloud(13)之微服务的现状和未来
一、微服务的现状和未来1.服务架构的演变1.1单体架构单体架构应该是我们最先接触到的架构实现了,在单体架构中使用经典的三层模型,即表现层,业务逻辑层和数据访问层。 单体架构只适合在应用初期,且访问量比较下的情况下使用,优点是性价比很高,开发速度快,成本低,但缺点也很明显,这时扩展的首先就是考虑服务器的集群处理。1.2 集群 针对单个服务器在访问量越来越大的情况越来越吃力的情况,我们可以考虑服务器的集群化处理。 集群的部署大大提高了服务的处理能力,同...转载 2021-07-23 11:14:56 · 762 阅读 · 0 评论 -
SpringCloud(12)之Openfeign 入门
一、概述Feign是一个声明式的Web服务客户端,让编写Web服务客户端变得非常容易,只需创建一个借口并在接口上添加注解即可。Github:https://github.com/spring-cloud/spring-cloud-openfeign二、Feign 能干什么Feign 旨在使编写 Java HTTP 客户端变得更加容易。在使用 Ribbon + RestTemplate 时, 利用 RestTemplate 请求的封装处理,形成了一套模板化的调用方法。但是在实际开发中,对原创 2020-09-10 10:55:58 · 279 阅读 · 0 评论 -
SpringCloud(11)之Ribbon负载均衡配置规则
一、Ribbon是什么?Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法,将Netflix的中间层服务连接在一起。Ribbon客户端组件提供一系列完善的配置项如连接超时,重试等。简单的说,就是在配置文件中列出Load Balancer(简称LB)后面所有的机器,Ribbon会自动的帮助你基于某种规则(如简单轮询,随即连接等)去连接这些机器。二、4种方式使用Ribbon①使用注解@loadBalanced1、添加依赖<dependency>原创 2020-08-31 14:40:04 · 536 阅读 · 0 评论 -
SpringCloud(10)之Consul服务注册与发现
学习在 Spring Cloud 中使用 Consul 实现服务注册与发现,它是 Eureka 之外的另一种选择。一、概述在 Spring Cloud 中,大部分组件都有备选方案,例如服务注册中心,除了常见Eureka之外,还有Zookeeper和Consul等。Consul 是 HashiCorp 公司推出来的开源产品,主要提供了「服务发现、服务隔离、服务配置」等功能。Zookeeper和Consul在前面的博客已经有介绍到了,大家有什么不懂的可以去查阅一下我之前的博客。相比于 Eu...原创 2020-08-12 10:42:11 · 375 阅读 · 0 评论 -
SpringCloud(9)之@EnableDiscoveryClient 注解如何实现服务注册与发现
一、前言在新的2020年,Eureka社区网站已经公布了对Eureka2.0版本的更新,但是Eureka1.0版本仍然可以使用,那现在主流的服务注册中心看下图:我们在每个引导类上都使用了@EnableDiscoveryClient这个注解,这个注解的作用是让该服务放注册中心注册和从注册中心获取其他服务。那它内部是如何实现的呢?今天我们就来聊聊@EnableDiscoveryClient注解是如何进行服务注册与服务发现。二、@EnableDiscoveryClient 是如何实现服务注册我原创 2020-08-05 11:16:21 · 9498 阅读 · 0 评论 -
SpringCloud(8)之Eureka集群搭建高可用服务注册中心
前面的文章也介绍到了Eureka与其他服务注册中心的区别,也详细介绍了再分布式环境中的CAP理论,没有看过的同学可以去复习一下:https://blog.youkuaiyun.com/jokeMqc/article/details/104249399,现在在这里主要是介绍一下如何搭建一个高可用的 Eureka 集群。1. 分布式和集群有啥区别可能有很多人对分布式和集群这两个概念有点混淆。我先用通俗易懂的话给大家解释下:分布式:一个业务分拆多个子业务,部署在不同的服务器上 集群:同一个业务,分别部署在不同的原创 2020-08-03 11:08:13 · 258 阅读 · 0 评论 -
SpringCloud(7)之Eureka的工作原理以及它与ZooKeeper的区别
1、Eureka 简介前面说过,Eureka 是 Netflix 出品的用于实现服务注册和发现的工具。 Spring Cloud 集成了 Eureka,并提供了开箱即用的支持。其中, Eureka 又可细分为 Eureka Server 和 Eureka Client。1.基本原理上图是来自eureka的官方架构图,这是基于集群配置的eureka;处于不同节点的eureka通过...原创 2020-02-10 20:10:24 · 393 阅读 · 0 评论 -
SpringCloud(2)之SpringCloud简介
SpringCloud作为Java语言的微服务框架,它依赖于Spring Boot,有快速开发、持续交付和容易部署等特点。SpringCloud的组件非常多,设计微服务的方方面面,并在开源社区Spring和Netflix、Pivotal两大公司的推动 下越来越完善。我们这里主要介绍SpringCloud的一下几点:微服务应该具备的功能 SpringCloud介绍 Dubbo介绍 Spri...原创 2019-07-01 21:58:21 · 449 阅读 · 0 评论 -
SpringCloud(1)之微服务架构
一、什么是微服务微服务(Microservices Architecture)是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成。系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。每个微服务仅关注于完成一件任务并很好地完成任务。在所有情况下,每个任务代表着一个小的业务能力。二、单体架构(Monolithic Architecture )企业级的应用一般都会面临各种各样的...原创 2019-06-24 16:06:05 · 1732 阅读 · 0 评论 -
SpringCloud(4)之服务消费者RestTemplate+Ribbon
在上一篇文章,讲了服务的注册和发现。在微服务架构中,业务都会被拆分成一个独立的服务,服务与服务的通讯是基于http restful的。Spring cloud有两种服务调用方式,一种是ribbon+restTemplate,另一种是feign。在这一篇文章首先讲解下基于ribbon+rest。一、前期准备RestTemplate是一个Http客户端,类似于HTTPClient,org但比H...原创 2019-07-11 15:33:15 · 512 阅读 · 0 评论 -
SpringCloud(5)之分布式锁实现
01为什么用分布式锁在讨论这个问题之前,我们先来看一个业务场景:系统A是一个电商系统,目前是一台机器部署,系统中有一个用户下订单的接口,但是用户下订单之前一定要去检查一下库存,确保库存足够了才会给用户下单。由于系统有一定的并发,所以会预先将商品的库存保存在redis中,用户下单的时候会更新redis的库存。此时系统架构如下:但是这样一来会产生一个问题:假如某个时刻,redis ...原创 2019-08-21 00:07:23 · 4418 阅读 · 0 评论 -
SpringCloud(6)之CAP理论在微服务的运用
对于开发或设计分布式系统的架构师工程师来说,CAP 是必须要掌握的理论,这个文章的重点并不是讨论 CAP 理论和细节,重点是说说 CAP 在微服务中的开发怎么起到一个指引作用,会通过几个微服务开发的例子说明,尽量的去贴近开发。CAP 定理又被称为布鲁尔定理,是加州大学计算机科学家埃里克·布鲁尔提出来的猜想,后来被证明成为分布式计算领域公认的定理。不过布鲁尔在出来 CAP 的时候并没有对 C...原创 2019-09-06 00:02:48 · 1824 阅读 · 1 评论 -
SpringCloud(3)之服务注册与发现Eureka
一、spring cloud简介spring cloud为开发人员提供了快速构建分布式系统的一些工具,包括配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁、决策竞选、分布式会话等。它运行环境简单,可以在开发人员的电脑上跑。另外说明spring cloud是基于springBoot的,所以需要开发中对springboot有一定的了解,如果大家对于springboot还不了解的可以去看我...原创 2019-06-25 10:49:36 · 347 阅读 · 0 评论