![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
微服务
博享未来
这个作者很懒,什么都没留下…
展开
-
分布式锁-redis、zookeeper优缺点
redis分布式锁优缺点缺点:获取锁的方式简单粗暴,获取不到锁直接不断尝试获取锁,比较消耗性能; redis的设计定位决定了它的数据并不是强一致性的,在某些极端情况下,可能会出现问题。锁的模型不够健壮; 使用redlock算法来实现,在某些复杂场景下,也无法保证其实现100%没有问题,关于redlock的讨论可以看 How to do distributed locking; redis分布式锁,其实需要自己不断去尝试获取锁,比较消耗性能。zookeeper分布式锁优缺点优点zook原创 2022-02-11 17:08:31 · 2218 阅读 · 1 评论 -
SpringBoot整合Seata
谢谢谢谢谢寻寻原创 2021-12-17 09:41:58 · 636 阅读 · 0 评论 -
Sentinel介绍
官方网站:https://sentinelguard.io/zh-cn/index.html原创 2021-06-08 09:32:26 · 163 阅读 · 0 评论 -
JWT介绍
什么是JWT Json Web Token(JWT),是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准(RFC 7519),该Token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。JWT的声明一般被用来在身份提供者和服务者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其他业务逻辑所必须的声明信息,该Token也可以直接被用于认证,也可被加密。JWT结构头部(header):包含了两部分,采用的签名算法和token...原创 2021-04-02 09:57:08 · 201 阅读 · 1 评论 -
Token身份认证流程
基于Token身份认证的流程,在服务端不需要存储用户的登录记录,具体流程如下:客户端使用用户名、密码发起登录请求 服务端收到请求后,验证用户名、密码(通过查询数据库) 验证成功后,服务端会生成一个Token,再把这个Token返回给客户端 客户端收到Token后会存储到Cookie或者Local Storage 客户端每次向服务端请求资源的时候需要带着服务端签发的Token 服务端收到请求后,会验证客户端请求头中的Token,验证通过后,返回数据给客户端...原创 2021-04-01 14:30:34 · 1361 阅读 · 0 评论 -
微服务Zuul与Gateway区别
XXXX原创 2021-04-01 10:49:47 · 146 阅读 · 0 评论 -
分布式调用链监控
背景 在微服务架构下,服务按照不同的维度进行拆分,一次请求往往需要涉及多个服务。互联网应用构建在不同的软件模块集上,这些软件模块,有可能是由不同的团队开发,各团队使用的编程语言也可能不一样,应用可能布在成百上千台服务器,横跨多个不同的数据中心。因此,就需要一些可以帮助理解系统行为、用于分析性能问题的工具,以便发生故障的时候,能够快速定位和解决问题。 分布式调用链监控组件就在这样的环境下产生了。在这里,不得不提下谷歌公开的论文Dapper。开发Dapper是为了收集更多的复...原创 2021-03-08 15:53:13 · 270 阅读 · 3 评论 -
SpringBoot导航
springboot中文社区:https://springboot.io/srpingboot wiki:http://felord.cn/_doc/_springboot/2.1.5.RELEASE/_book/原创 2021-03-05 13:58:42 · 200 阅读 · 0 评论 -
springboot运行/打包时动态指定配置文件application-*.yml
pom文件新增如下:<resources> <resource> <directory>src/main/resources</directory> <!-- 用于替换resources里面的变量 --> <filtering>true</filtering> </resource></resources><prof.原创 2021-03-03 10:01:24 · 615 阅读 · 0 评论 -
如何追踪微服务调用
在微服务架构下,由于进行了服务拆分,一次请求往往需要涉及多个服务,每个服务可能是由不同的团队开发,使用了不同的编程语言,还有可能部署在不同的机器上,甚至分布在不同的数据中心。服务追踪的作用 在介绍服务追踪原理与实现之前,我们先来看看服务追踪的作用,如下:优化系统瓶颈:通过记录调用经过的每一条链路上的耗时,我们能快速定位整个系统的瓶颈点在哪里。比如服务A调用服务B接口时发现很慢,肯定是由于某种原因造成的,有可能是运营商网络延迟、网关系统异常、B服务异常,还有可能是缓存或者数据库...原创 2021-02-19 16:36:20 · 215 阅读 · 0 评论 -
如何监控微服务调用
概述 与单体应用相比,在微服务架构下,一次用户调用会因为微服务拆分后,变成多个不同服务之间的相互调用,这也就需要对拆分后的每个服务都监控起来。 在讲述如何监控微服务调用前,首先要搞清楚三个问题:监控的对象是什么?具体监控哪些指标?从哪些维度进行监控?监控对象 既然要监控,那么要监控哪些对象呢?对于微服务系统来说,监控对象可以分为四个层次,由上到下可归纳为:用户监控:通常是指业务直接对用户提供的功能的监控; 接口监控:通常是指业务提供的功能所依赖的具体RPC接口...原创 2021-02-19 11:00:40 · 425 阅读 · 2 评论 -
Mybatis执行SQL日志打印配置
1、yml文件配置logging: level: com.kevin.server.mapper: debug # com.kevin.server.mapper为工程下mapper层包路径2、logback-spring文件配置<!-- 配置开发环境,多个使用逗号隔开(例如:dev,sit) --><springProfile name="dev"> <!-- 打印mapper层mybatis执行sql日志 -->原创 2021-02-08 11:08:39 · 965 阅读 · 0 评论 -
用户界面UI介绍
Skywalking仪表盘包括以下部分:功能选项卡选择区(Feature Tab Selector Zone):这里列出了主要特性;重载区(Reload Zone):控制重新加载机制,包括定期重新加载或手动重新加载;时间选择器(Time Selector Zone):控制时区和时间范围,这里有一个中英文切换按钮,默认UI使用浏览器语言设置。仪表盘 指示板提供服务、服务实例和端点的指标。您需要了解一些度量术语吞吐量CPM,表示每分钟的调用; Apdex分数,参考Apdex...原创 2021-01-19 17:04:29 · 474 阅读 · 0 评论 -
SkyWalking安装【Linux版本】
下载 进入官网下载页面(http://skywalking.apache.org/downloads/) 选择版本需要下载版本,我的操作系统centos7、elasticsearch6.6 上传下载文件cd /usr/local/tools/skywalkingrz # 选择刚下载的文件tar包tar -xvf apache-skywalking-apm-8.1.0.tar.gz配置 进入skywalking安装目...原创 2021-01-18 17:56:36 · 668 阅读 · 2 评论 -
Kibana详细教程
参考 Kibana详细入门教程:https://www.cnblogs.com/chenqionghe/p/12503181.html?utm_source=tuicool&utm_medium=referral原创 2021-01-18 17:00:50 · 348 阅读 · 0 评论 -
探针介绍
概述 在SkyWalking中,探针表示集成到目标系统中的代理或SDK库,它负责收集遥测数据,包括链路追踪和性能指标,根据目标系统的技术栈,探针可能有差异巨大的方式来达到以上功能,但从根本上来说都是一样的,即收集并格式化数据,并发送到后端。 从高层次上来讲,SkyWalking探针可分为以下三组:基于语言的原生代理:这种类型的代理运行在目标服务的用户空间中,就像用户代码的一部分一样,如SkyWalking Java代理,使用 -javaagent 命令行参数在运行期间对代...原创 2021-01-18 16:28:29 · 2794 阅读 · 0 评论 -
Skywalking介绍
XXXXXX原创 2020-09-16 17:51:23 · 1364 阅读 · 0 评论 -
Spring Cloud学习导航
Spring Cloud教程第一篇:Eureka原创 2020-11-27 15:03:10 · 72 阅读 · 0 评论 -
SpringCloud Eureka注册中心自我保护机制
自我保护背景 首先对Eureka注册中心需要了解的是Eureka各个节点都是平等的,没有Zookeeper中角色的概念,即使N-1各节点挂掉也不会影响其他节点的正常运行。 默认情况下,如果Eureka Server在一定时间内(默认90s)没有收到某个微服务实例的心跳,Eureka Server将会移除该实例。但是当网络分区发生故障时,微服务与Eureka Server之间无法正常通信,而微服务本身是正常运行的,此时不应该移除这个微服务,所以引入自我保护机制。自我保护机制...原创 2020-11-04 10:57:39 · 272 阅读 · 0 评论 -
SpringCloud Config手动刷新与自动刷新实现
一、手动刷新1.1 阐述 因为SpringCloud Config的服务端第一次读取远程git服务器的配置之后是会缓存一份配置在本地的,即使远程git修改了配置,config客户端也依然是读取缓存中的配置,而使用手动刷新可以强制刷新缓存,让config服务端读取最新配置文件。1.2 实现使用@RefreshScope注解 post请求config客户端的/refresh端点:http://localhost:8080/refreshimport org.springfram...原创 2020-11-03 18:35:20 · 354 阅读 · 0 评论 -
五大开源配置中心
一、Apollo Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。 项目地址:https://github.com/ctripcorp/apollo二、XDiamond 全局配置中心,存储应用的配置项,解决配置混乱分散的问题。名字来源于淘宝的开源项目Diamond,前面加上一个字母X以示区别。 ...原创 2020-11-03 15:25:44 · 4594 阅读 · 0 评论 -
分布式配置中心产生的背景
一、前言 对于配置文件,我们并不陌生,它提供我们可以动态修改程序运行的能力。引用别人的一句话就是:系统运行时(runtime)飞行姿态的动态调整! 我可以把我们的工作称之为在快速飞行的飞机上修理零件。我们人类总是无法掌控和预知一切。对于我们系统来说,我们总是需要预留一些控制线条,以便在我们需要的时候做出调整,控制系统方向(如灰度控制、限流调整),这对于拥抱变化的互联网行业尤为重要。 对于单机版,我们称之为配置(文件),对于分布式集群系统,我们称之为配置中心(...原创 2020-11-03 15:18:53 · 219 阅读 · 0 评论 -
微服务设计、拆分原则
参考: 如何设计微服务以及设计原则之AKF拆分原则:https://baijiahao.baidu.com/s?id=1632326446570197886&wfr=spider&for=pc原创 2020-10-30 17:05:06 · 92 阅读 · 0 评论