java B2B2C电子商务平台分析之十二-----Spring Cloud Sleuth
一、简介
Spring Cloud Sleuth 主要功能就是在分布式系统中提供追踪解决方案,并且兼容支持了 zipkin,你只需要在pom文件中引入相应的依赖即可。愿意了解源码的朋友直接求求交流分享技术:二一四七七七五六三三
二、服务追踪分析
微服务架构上通过业务来划分服务的,通过REST调用,对外暴露的一个接口,可能需要很多个服务协同才能完成这个接口功能,如果链路上任何一个服务出现问题或者网络超时,都会形成导致接口调用失败。随着业务的不断扩张,服务之间互相调用会越来越复杂。
三、术语
Spring Cloud Sleuth采用的是Google的开源项目Dapper的专业术语。
Span:基本工作单元,例如,在一个新建的span中发送一个RPC等同于发送一个回应请求给RPC,span通过一个64位ID唯一标识,trace以另一个64位ID表示,span还有其他数据信息,比如摘要、时间戳事件、关键值注释(tags)、span的ID、以及进度ID(通常是IP地址)
span在不断的启动和停止,同时记录了时间信息,当你创建了一个span,你必须在未来的某个时刻停止它。
Trace:一系列spans组成的一个树状结构,例如,如果你正在跑一个分布式大数据工程,你可能需要创建一个trace。
Annotation:用来及时记录一个事件的存在,一些核心annotations用来定义一个请求的开始和结束
cs - Client Sent -客户端发起一个请求,这个annotion描述了这个span的开始
sr - Server Received -服务端获得请求并准备开始处理它,如果将其sr减去cs时间戳便可得到网络延迟
ss - Server Sent -注解表明请求处理的完成(当请求返回客户端),如果ss减去sr时间戳便可得到服务端需要的处理请求时间
cr - Client Received -表明span的结束,客户端成功接收到服务端的回复,如果cr减去cs时间戳便可得到客户端从服务端获取回复的所有所需时间
将Span和Trace在一个系统中使用Zipkin注解的过程图形化:
每个颜色的表明一个span(总计7个spans,从A到G),每个span有类似的信息
Trace Id = X
Span Id = D
Client Sent
此span表示span的Trance Id是X,Span Id是D,同时它发送一个Client Sent事件
spans 的parent/child关系图形化如下:
spring cloud提供了spring-cloud-sleuth-zipkin来方便集成zipkin实现(指的是Zipkin Client,而不是Zipkin服务器),该jar包可以通过spring-cloud-starter-zipkin依赖来引入。
技术架构图如下:资料和源码来源
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
b2b b2c o2o分布式电子商务平台源码 Spring MVC+mybatis+spring cloud
鸿鹄云商大型企业分布式互联网电子商务平台,推出PC+微信+APP+云服务的云商平台系统,其中包括B2B、B2C、C2C、O2O、新零售、直播电商等子平台。愿意了解源码的朋友直接求求交流分享技术二一四七七七五六三三 分布式、微服务、云架构电子商务平台 java b2b2c o2o 技术解决方案 开发语言:java、j2ee 数据库:mysql JDK支持版本:JDK1.6、JDK1.7、JDK1.8版本 通用框架:maven+springmvc+mybatis+spring cloud+spring boot+redis 核心技术:分布式、云服务、微服务、服务编排 核心架构: 使用Spring Cloud分布式微服务云架构进行服务化开发,所有模块功能完全解耦,提供服务发现、注册、配置中心、消息总线、负载均衡、断路器、数据监控等。 技术列表: Spring Cloud Config配置管理工具包,让你可以把配置放到远程服务器,集中化管理集群配置,目前支持本地存储、Git以及Subversion Spring Cloud Bus事件、消息总线,用于在集群(例如,配置变化事件)中传播状态变化,...
- 下一篇
盘点2018云计算市场,变化大于需求?
今年,看似逐渐成熟,平滑走向落地的云计算的内部其实正发生着“激烈”的变化。2018年,云计算厂商们都在不遗余力的抢占“地盘”,与此同时,云技术也在落地过程中不断的进化以便更好的满足客户需求。 再有一个月,2018年就将成为“过去式”了。这一年,参加了很多场活动,见了很多行业内的朋友,收获颇丰,感慨也颇多,尤其是对今年的云计算市场,又有了重新的认识。 又到年底了,今天我们就来聊聊云计算市场这一年的变化。 云不再仅仅提供水和电的功能 云计算发展之初,对于云这个概念很多人是很难理解的。记得当时被用来解释什么是云计算的例子——云计算就像我们的水和电一样,有了云计算,我们就不再用每家都打井喝水,买柴油机发电,只需要我们从云端直接购买我们需要的计算力就可以了,就能为我们提供源源不断的计算资源。 在早期,这个解释的确让很多像我这样的“初期小白”对云计算有了一个大体的理解。云计算厂商就像自来水公司和发电厂一样,由他们统一的提供计算力,自来水公司的管道,电厂的电线,就像我们今天的网线一样,满足我们的生活需求。 但随着云计算的发展,人们发现,云计算与水和电也有的一些区别,云计算厂商不仅仅需要提供“水”和“...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Windows10,CentOS7,CentOS8安装Nodejs环境
- Docker安装Oracle12C,快速搭建Oracle学习环境
- 2048小游戏-低调大师作品
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2配置默认Tomcat设置,开启更多高级功能