[jaeger] 四、微服务之调用链(Feign+SpringCloud)

终于到了我们的重点,微服务了。与使用OkHttp3来实现的客户端类似,Feign接口本来也就是一个Http调用,依然可以使用Http头传值的方式,将Trace往下传。本文更多的是关于SpringCloud的一些知识,你需要了解一些基本的Spring相关的知识。更多系列,请关注公众号小姐姐味道,本文相关代码的github地址,见:https://github.com/sayhiai/example-

【教程】如何做apm客户端(关键字:Zipkin、Jaeger、SkyWalking、OpenTracing)

随着微服务架构的流行,一次请求往往需要涉及到多个服务,因此服务性能监控和排查就变得更复杂。APM因此而生。目前,市面上的APM服务端已经有了非常多的实现。比如Zipkin、Jaeger、SkyWalking、Elastic APM等(Pinpoint并不支持OpenTracing,所以我们不介绍)。本教程仅提供一些开发思路,对技术要求较高,因为大部分需要涉及到对相应组件源码的理解。全部源码都可以在

[jaeger] 三、实现一个分布式调用(OkHttp+SpringBoot)

很多情况,trace是分布在不同的应用中的,最常用的远程调用方式就是Http。在这种情况下,我们通常通过增加额外的Http Header传递Trace信息,然后将其组织起来。本部分通过构建一个目前最火的SpringBoot服务端,然后通过OkHttp3进行调用,来展示分布式调用链的组织方式。更多连载关注小姐姐味道,本文相关代码见:https://github.com/sayhiai/example

[jaeger] 二、客户端使用 (Java版本)

友情提示,jaeger的standalone部署方式,可以快速开启试用。本文通过两个简单的示例,说明如何使用java的api构建一个简单的调用链。更多连载请关注《小姐姐味道》。相关代码见github。https://github.com/sayhiai/example-jaeger-opentracing-tutorial-001-002由于jaeger是基于OpenTracing的,所以只要你的

【小而美】打造小而美的基础支撑系统

全部采用开源组件,不重复制造轮子。着重开发后台管理功能,方便使用。第一部【基础设施】一、资产管理,跳板机【基础设施】二、监控系统,可视化【基础设施】三、DNS体系【基础设施】四、VPN搭建【基础设施】五、Ansible第二部【基础服务】一、MySQL高可用【基础服务】二、Redis高可用【基础服务】三、Kafka高可用【基础服务】四、ElasticSearch高可用【基础服务】五、配置中心第三部【

[jaeger] 一、安装和部署

基本介绍支持OpenTracing的server端有很多,我们总要选一个。在这里,选用jaeger。jaeger的开发较为活跃,支持的客户端实现也较多。由于采用了golang开发,发行包也比较简洁。jaeger的官网是 https://www.jaegertracing.io/特点 jaeger的开发语言是`golang` jaeger支持OpenTracing协议,同属于CNCF基金会 jae

冷门instrument包,功能d炸天

文中代码示例工程如下,更多参考btrace和arthas:https://github.com/sayhiai/example-javaagent原创文章,转载注明出处 (http://sayhiai.com) 5版本以后,jdk有一个包叫做instrument,能够实现一些非常酷的功能。市面上一些APM工具,就是通过它来进行的增强。这是基础架构的必备技能,但对业务开发来说并不是。许多面试会问到这

余额,危险的操作,给996留点福报

真的很危险,有人因此进了局子;也有公司因此损失上亿。想象一下你在一个月黑风高的夜晚,大概是10点多钟的样子,加班归来,打算到小卖部弄盒烟抽。夜凉风急,你用力裹了下被风鼓起的外套。那里有你暗恋的收银姑娘。没日没夜的工作,只有这十几分钟,能让你感到些许生活的意义。从羞涩的钱包里翻出仅存的一张百元大钞,结账。然后用颤抖的双手接过收银员的找零。不是因为轻触到了她的指尖。也并非因她如花的笑靥。只因为,脑海里

现实中的路由规则,可能比你想象中复杂的多

文中聊的是数据路由,不是nginx之类的。几乎每一个分布式系统,都会给用户提供自定义路由的功能。因为,仅通过range、mod、hash等方法,很大概率已经满足不了用户的需求。下面以一个实际场景为例,说一下数据路由的思路。场景某个大型toB的应用,使用MySQL存储,单表数据量已达数亿,在结构变更、数据查询方面,已表现出明显的瓶颈,需要进行分库分表。实施步骤找到切分键第一步就是找到切分的纬度。比如

也浅谈下分布式存储要点

本篇文章谢绝转载,欢迎转发几年之前,曾不自量力的想要写一个兼容RDBMS和NoSQL的数据库,结果仅实现了一个Raft协议,写了一棵BTree,就放弃了。使用Golang写这个算是比较简单的了,但过程难以言诉,有点蚂蚁撼大树了。而个人,由于工作的关系,也已经有四五年没有和SQL打交道了。最近重拾,感慨良多。像MySQL这种RDBMS,天生是存在分布式缺陷的,在海量数据的今天,很容易就达到瓶颈。过去

那些需要自己开发的安全需求(服务端)

最近在实施App安全方面的方案,下面是一些思考。有些安全方面的产品需要购买,本文中的却要自己集成。需要开发的组件很多,所以依个人经验,简单做了下分层,不包括App端和主机环境。数据处理通讯层http协议简单易懂、使用方便,我们大多数网络应用都是基于它开发的。数据展示,移动互联网已经占据了大量市场,对于App端开发,已经进入了混合协议的时代。这就是通讯层,数据传输的通道。请求可能来自这些地方:一、A

最新文章

最近回复

  • lycying: 用不了这么多吧。见http://sayhiai.com/inde...
  • Sean: 单机一百万? 那么这个机器起码要装 1TB的内存啊?
  • lycying: 默认就是开放的
  • lycying: 已修改
  • lycying: 是的
  • Taxz: 请问在master选举时,为什么 需要Thread.sleep(...
  • hesl: 正文宽度太窄了
  • donald: 什么时候开放rss
  • 宜城有少年: 我试了下好像还是不需要注解都行。。。
  • 宜城有少年: 意思是说如果我把这个去掉就是实现了注解方式的对吗
  • lycying: 见文中,SpringBoot启动会自动读取 src/main/r...
  • 宜城有少年: 博主,我想问下,为什么只要我引入了JAR包,不需要注解都可以使用。。。
  • lycying: 是的,而且不能是private
  • 宜城有少年: 博主请问下引用的注解是放在微服务被调用的里面吗方法里面吗
  • 宜城有少年: 这个是将整个springboot项目打成JAR包吗?
  • lycying: 女人养的狗
  • vbyzc: 女人吗??
  • anshingy: 支持
  • anshingy: 很好,支持
  • 忠实粉丝: 6666666

分类

标签

归档

其它