在 ruby​​ 中使用线程优化 ping,可能吗?

发布于 2024-11-30 18:04:25 字数 254 浏览 0 评论 0原文

我正在使用 ruby​​ 1.8.7,短期内无法升级到 1.9+。

我知道 ruby​​ 有绿色线程,任何基于 cpu 的东西都不会通过多线程获得太多好处。

然而,我正在尝试在 ruby​​ 中进行多线程 ping,因为在我的脚本中将尝试 ping 网络中的 N 台机器——在机器回复时,有足够的时间来创建新线程并启动与另一台主机的连接。然而,我发现多线程实际上降低了性能。

有什么建议可以在 ruby​​ 中使用线程进行优化 ping 操作吗?

I am using ruby 1.8.7 and I cannot upgrade to 1.9+ anytime soon.

I understand that ruby has green threads, and anything cpu based does not gain much by way of multithreading.

However, I was trying a multithreaded ping in ruby, as in my script will try to ping N machines in the network -- in the time a machine replies back there's enough time to create a new thread and initiate connection with another host. However what I see is that multithreading has actually worsened performance.

Any suggestions to do an optimized ping with threads in ruby?

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

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

发布评论

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

评论(1

不可一世的女人 2024-12-07 18:04:25

您应该将 EventMachineICMP 实施。 icmp4em 的作者还提供了两个如何使用所有这些东西的示例。

You should use EventMachine with an ICMP implementation. The author of icmp4em also provides two examples how to use all this stuff.

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