You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by GitBox <gi...@apache.org> on 2018/12/26 01:58:08 UTC

[GitHub] JaredTan95 commented on a change in pull request #2089: guides cn md

JaredTan95 commented on a change in pull request #2089: guides cn md
URL: https://github.com/apache/incubator-skywalking/pull/2089#discussion_r243930835
 
 

 ##########
 File path: docs/others/cn/guides/Java-Plugin-Development-Guide.md
 ##########
 @@ -0,0 +1,299 @@
+# 插件开发指南
+本文档描述了如何理解,开发和贡献插件。
+
+## 概念
+### Span
+Span是分布式跟踪系统中一个重要且通用的概念。
+可从[Google Dapper Paper](https://research.google.com/pubs/pub36356.html) 和
+[OpenTracing](http://opentracing.io)学习**Span**相关知识
+
+SkyWalking从2017年开始支持OpenTracing和OpenTracing-Java API,我们的Span概念与论文和OpenTracing类似。我们也扩展了Span。
+
+Span有三种类型
+
+1.1 EntrySpan
+EntrySpan代表服务提供者,也是服务器端的端点。 作为一个APM系统,我们的目标是
+应用服务器。 所以几乎所有的服务和MQ-comsumer都是EntrySpan。
+
+1.2 LocalSpan
+LocalSpan表示普通的Java方法,它与远程服务无关,也不是MQ生产者/消费者
+也不是服务(例如HTTP服务)提供者/消费者。
+
+1.3 ExitSpan
+ExitSpan代表一个服务客户端或MQ的生产者,在SkyWalking的早期命名为“LeafSpan”。
+例如 通过JDBC访问DB,读取Redis / Memcached被编目为ExitSpan。
+
+### ContextCarrier
+为了实现分布式跟踪,需要绑定跨进程的跟踪,并且应该传播上下文
+整个过程。 这就是ContextCarrier的职责。
+
+以下是有关如何在`A -> B`分布式调用中使用** ContextCarrier **的步骤。
 
 Review comment:
   ** ContextCarrier ** ---> **ContextCarrier**

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services