问题标签 [drb]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
326 浏览

ruby - Ruby drb 互联网连接

我一直在用 Ruby drb 做一些测试。我有以下代码(只是在 ruby​​ 文档中找到的示例代码)

服务器:

客户:

如果我们都连接到同一个路由器(例如,共享相同的私有 ip xxx151 和 xxx155),则此方法有效。

但是,当我们在相距很远的机器上进行测试并将服务器 URI 更改SERVER_URI="druby://public-ip-of-server:9000"为客户端时,我们会遇到连接超时。

有谁知道解决方案?路由器上的端口转发不是一种选择。

0 投票
0 回答
262 浏览

ruby - dRuby 服务器在其侦听的端口上探测时崩溃

我有这个测试代码:

如果我随后使用 nmap 之类的东西探测它抓取的端口,经过几次探测,应用程序就会崩溃。

在 JRuby 1.7 下,我得到了这个堆栈:

在 Ruby 1.9.3-392 下,堆栈是这样的:

有没有办法让 dRuby 更健壮(例如某处的选项或配置设置)并且在这些情况下不会崩溃。

更新

通过将代码放在这样的循环中,这似乎使其更具弹性 - 但这是最​​好的前进方式:

TIA

0 投票
1 回答
113 浏览

ruby - DRb 可以处理的最高(近似)请求率是多少?

我现在使用 DRb 进行相对不频繁的进程间通信,但我担心如果我的服务增长,它可能无法处理负载,特别是考虑到像产生一个新线程来处理每个请求这样的事情。任何人都有处理 DRb 上限的经验,并且可以告诉我它大约在什么负载开始导致问题?有什么更好的方法来处理这个问题,也许是一个运行 sinatra 的线程?

0 投票
2 回答
376 浏览

ruby - DRb:如何检查远程对象是否存在?

我一直在玩弄 DRb,将其用作跨多个进程进行通信的解决方案。我正在使用标准进程:一个创建服务,将其注册到 druby uri,而在另一个进程上创建引用该 URI 的 DRbObject。到目前为止,一切都很好。假设我杀死了第一个进程。远程对象上的每个后续方法调用都将导致 ECONNRefused 异常。这是公平的。但是有没有办法查看 DRbObject 是否确实在给定的 URI 中注册?我认为通过在每个实例上强制一个 ECONNRefused 来测试它是否存在有点愚蠢。

当然,其他涉及 DRb 以外的资源的解决方案总是受欢迎的,只要它们确实代表一个加分项。

0 投票
2 回答
1062 浏览

ruby - 创建远程 Drb 服务器(用于 pry-remote)

我一直非常喜欢使用Pry开发 Ruby 应用程序。我还看到了一个名为pry -remote的 Pry 插件,它允许您设置 Drb 服务器以远程访问 Pry 会话。自述文件中的 pry-remote 概要很有意义,我在本地运行没有问题。但是,例如,我如何使用它来允许同事在他/她的终端中访问相同的 Pry 会话?

如果可能的话,我想要的 API 类似于localtunnel

在计算机 1 上:

在计算机 2 上:

0 投票
1 回答
134 浏览

ruby - DRb (Ruby) 中只有一个 TupleSpace 中的多个服务器

伙计们!我正在考虑在一台计算机上运行每台服务器并让所有客户端找到自己。有没有办法用 DRb 运行多个服务器?

如果没有,我怎样才能让我的客户(每台计算机中也有一个)看到我网络中的所有服务器?我很沮丧。

这个想法是做一个简单的 P2P,我可以在一台计算机上运行一个服务器和一个客户端。非常感谢!

0 投票
0 回答
136 浏览

ruby - $SAFE = 1 时 DRb 的安全性如何?

我正在编写一个程序,该程序将具有相互连接的分散节点。任何节点都可以(并且应该)连接到任何其他节点,因此每个连接都被认为是不可信的。我一直在考虑使用 $SAFE 设置为 1 的 DRb,但我找不到任何详细说明它的安全性的资源。

允许与 vanilla DRb 进行任意连接是否安全?如果没有,有什么方法可以配置它吗?

0 投票
0 回答
85 浏览

file - 读取文件时druby出错

我正在使用 dRuby,我正在尝试以这种方式读取文件:

服务器代码:

客户代码:

这是客户端控制台上的错误:

该程序在服务器的控制台中打印“nombre”的值,但是当它到达File.open(nombre, "r").

0 投票
0 回答
105 浏览

ruby - 将数据从服务器发送到客户端 ruby​​ drb

我正在尝试为同一本地网络中的 2 个用户创建一个简单的聊天室。这个想法是其中一个可以是主机,另一个可以是客户端这里是一个小例子

服务器.rb:

客户端.rb:

但是有没有办法将 meesege 作为服务器发送到客户端?

0 投票
2 回答
781 浏览

ruby - Ruby connection closed (DRb::DRbConnError)

I am experiencing a really weird behaviour with Ruby DRb or maybe the problem is dbm. I am using the dbm database with a server, and a client that makes the requests via DRb.

Here's the method with the problem (the database connection is ok) and it is in the server:

This line obj = db[id.to_s] returns the error connection closed (DRb::DRbConnError) in the client side.

The thing is if I do this obj = db['1'] it works just fine ('1' is a key in the dbm). Why does this happen? What is wrong with id? Here's the call in the client side:

Why am I getting this error? The same thing happens with this method: