【问题标题】:How do I use Unix domain sockets from Java/Scala?如何使用来自 Java/Scala 的 Unix 域套接字?
【发布时间】:2011-05-17 22:16:15
【问题描述】:

在 Scala 中使用 Unix 域套接字的最佳方式是什么?

我找到了一个名为 JUDS 的 Java 库,但它似乎不允许我通过套接字发送文件描述符 --- 我想首先使用 Unix 域套接字的原因。

JUDS 自述文件引用了一个名为 J-BUDS 的竞争库,但我在任何地方都找不到。

我可以自己将该功能添加到 JUDS,但如果它已经在其他地方的 jar 文件中,我宁愿不重新发明轮子。

【问题讨论】:

  • 就像你在 Java 中使用 Unix 域套接字一样。
  • 那么我如何在 Java 中使用它们呢?我知道我可以使用 Scala 的 Java 库,我找到了一个 (JUDS),它不支持我最感兴趣的 Unix 域套接字的特性。
  • 你试过code.google.com/p/junixsocket 吗?它允许 mysql UDS 之类的东西
  • @amir75 我不知道,不,谢谢你的链接。但它似乎不支持通过连接发送文件描述符。
  • 我建议对 Java 提出此类问题。那里有更多的 Java 库,但很可能周围的 scala 人都不知道它们。

标签: java scala jvm unix-socket


【解决方案1】:

http://download.oracle.com/javase/6/docs/api/java/net/Socket.html

“文件描述符”是指 java.util.File 类的对象吗? ...或 C 风格的“文件 *”? (IIRC)

后者将与操作系统的特定实例相关联,因此我认为您不会希望将其移动到(可能)另一台机器上。

【讨论】:

  • “文件描述符”是指操作系统级别的文件描述符,通常存储在 C 中的 int 中。我不想将它移动到不同的机器上,我想将它移动到同一台机器上的不同工艺。 Unix Domain Sockets 不支持不同机器之间的通信,我知道。
  • 我应该猜到 JUDS 是用于 Unix 域套接字的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-07-24
  • 2016-09-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-02
  • 2014-06-02
相关资源
最近更新 更多