进程内、进程间和机器间调用之间的相对区别是什么?

发布于 2024-07-10 05:07:53 字数 382 浏览 13 评论 0原文

忽略有效负载大小,进程内调用(例如在 C++ 或 Java 中)、对同一台计算机上的进程的套接字调用以及对另一台计算机上的进程的套接字调用之间的延迟相对差异是什么? 这可以表示为以 ns/ms 为单位的最小延迟或相对数量级。

我正在寻找类似的东西:

http://duartes.org/gustavo/blog/post/what-your-computer-does-while-you-wait

...但扩展到进程内调用与网络调用(假设快速内联网)。

Ignoring payload size, what is relative difference in latency between an in-proc call (say in C++ or Java), a socket call to a process on the same machine, and a socket call to a process on another machine? This can be expressed as a minimum latency in ns/ms or in terms of relative orders of magnitude.

I'm looking for something similar to this:

http://duartes.org/gustavo/blog/post/what-your-computer-does-while-you-wait

... but extended to in-proc vs. network calls (assume fast intranet).

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

墨洒年华 2024-07-17 05:07:53

这是一个好主意......不精确,但它给出了粗略的比率:

方法调用 -- ~100s ns
同步方法调用 -- ~1000s ns
反射方法调用 -- 低 ~10,000 ns

机器环回 -- ~30,000-150,000 ns

本地子网 -- 1-2 ms

互联网 -- 30-100 ms

That is a good idea... not precise, but it gives the rough ratios:

method call -- ~100s ns
synchronized method call -- ~1000s ns
reflective method call -- low ~10,000s ns

machine loopback -- ~30,000-150,000 ns

local sub-network -- 1-2 ms

internet -- 30-100 ms

宣告ˉ结束 2024-07-17 05:07:53

ping 本地计算机和 ping 远程计算机是否会给您带来任何关系感? 方法调用当然是另一种测量。

does pinging your local machine and pinging a remote machine give you any sense of relationship? A method call would of course be the other measurement.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文