2012-07-30 29 views
1

经过我的研究,我决定从每个组件的每个请求记录日志,本地化和某种请求ID。然后把它们放在一起并按ID排序。然后,我可以获得有关每个请求需要多少时间才能完成单个组件的信息,而我需要的是什么。如何测量分布式系统中的请求时间?

我的问题是我不知道如何在系统中传递ID(线程是由RMI创建的)。我的想法是设置相同的线程名称连接到一个请求(see discusion here)的所有线程,但我仍然需要一些建议如何做到这一点。或者,也许有更好的想法聚集在一起的线程?

+0

你能提供更多backgroup @trebuchet吗?什么组件?这是什么系统?你为什么做这个?第二段很混乱,应该删除。只需解释_clearly_你正在努力完成的任务,而不提供解决方案。线程ids并不是一条可行的路。 – Gray 2012-07-30 15:07:16

+0

你传递给RMI创建的新线程是什么?什么输入? – 2012-07-30 15:08:01

+0

任何线程本地信息只能在单个jvm中使用,所以这对分布式系统没有多大帮助(除非你只关心跟踪客户端)。 – jtahlborn 2012-07-30 15:08:54

回答

1

我这样做的方式是传递包含进程中所有关键步骤的时间戳的字符串。最后,我有一个完整的端到端的所有时间记录。这意味着通过一个额外的论据,但由于报告更简单,这可能是值得的。