问题标签 [pyro]

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 投票
3 回答
1942 浏览

python - 我应该如何存储从 Django 调用的长时间运行的进程的状态?

我正在开发一个允许用户上传文件的 Django 应用程序。在将它们发送到Amazon S3之前,我需要对这些文件执行一些服务器端处理。在阅读了对这个问题的回复和这篇博文之后,我决定处理这个问题的最佳方式是让我的视图处理程序调用Pyro远程对象上的一个方法来异步执行处理,然后立即向客户端返回一个 Http 200 . 我有这个原型,它似乎运行良好,但是,我还想存储处理状态,以便客户端可以轮询应用程序以查看文件是否已被处理并上传到 S3。

我可以很容易地处理轮询,但我不确定存储进程状态的适当位置。它需要可由 Pyro 进程写入,并且可由我的轮询视图读取。

  • 我很犹豫是否将列添加到数据库中以获取实际上应该只持续 30 到 60 秒的数据。
  • 我考虑过使用 Django 的低级缓存 API并使用文件 id 作为键,但是,我不相信这真的是缓存框架的设计目的,我不确定可能会出现什么不可预见的问题这条路线。
  • 最后,我考虑过将状态存储在 Pyro 对象中进行处理,但看起来我仍然需要添加一个布尔“processing_complete”数据库列,以便视图知道是否从 Pyro 对象查询状态。

当然,从数据库中解耦状态也存在一些数据完整性问题(如果服务器出现故障并且所有这些数据都在内存中会发生什么?)。我想知道更多经验丰富的 Web 应用程序开发人员将如何处理这种有状态的处理。

0 投票
1 回答
3936 浏览

python - 多处理模块和pyro的比较?

我使用pyro对计算集群上的并行作业进行基本管理。我刚搬到一个集群,我将负责使用每个计算节点上的所有内核。(在以前的集群中,每个核心都是一个单独的节点。)python多处理模块似乎很适合这个。我注意到它也可以用于远程进程通信。如果有人使用这两种框架进行远程进程通信,我会很高兴听到它们如何相互叠加。多处理模块的明显好处是它是 2.6 内置的。除此之外,我很难说哪个更好。

0 投票
3 回答
3746 浏览

python - Pygame 的网络支持

我正在用 pygame 制作一个简单的多人经济游戏。它由一定长度的轮次组成,最后,数据被发送到中央服务器。对数据进行一些快速计算,并将结果发送回玩家。我的问题是我应该如何实现网络支持。我正在查看 Twisted 和 Pyro,任何建议或建议将不胜感激。

0 投票
2 回答
11643 浏览

python - PyRo 和 RPyC python 库的优缺点是什么?

我正在寻找 Python 的远程过程调用引擎,我发现PyRo(Python 远程对象)RPyC(远程 Python 调用)都是我正在寻找的东西。

但是,我很想知道它们之间的比较以及它们的优缺点是什么?

0 投票
3 回答
917 浏览

python - Python、Pygame、Pyro:如何通过网络发送表面?

我正在使用 pygame 和 pyro 在 python 中开发一个项目。我可以轻松地发送数据、函数、类等。但是,我无法通过电线发送表面而不会在运输过程中死在我身上。

def __init__服务器在通过网络访问的类中创建一个表面:

在服务器上,屏幕打印为Surface(800x800x32 SW),但当客户端检索时它是Surface(Dead Display).

不过有一点需要注意。当我使用访问器函数获取我的屏幕时,我得到了一个死屏。如果我print Player.screen用来获取变量,我会得到似乎是指向屏幕的 pyro 指针:<Pyro.core._RemoteMethod instance at 0x02B7B7B0>. 也许我可以取消引用这个?

我很可能很厚,有没有人有一些见识?谢谢。:)

0 投票
1 回答
6093 浏览

python - 分离使用 python 多处理模块启动的子进程

我想在 python 中使用 mutliprocessing 模块创建一个进程,但确保它在创建子进程的进程退出后继续运行。

我可以使用 subprocess 模块和 Popen 获得所需的功能,但我想将我的代码作为函数运行,而不是作为脚本运行。我想这样做的原因是为了简化创建 pyro(python 远程对象)对象。我想使用多处理在单独的进程中启动 pyro 对象请求处理程序,但是我希望主进程退出,而支持 pyro 对象的进程继续运行。

0 投票
2 回答
1213 浏览

python - 2.4中杀死Windows异步Popen进程

我有一个测试脚本需要打开一个进程(一个 Pyro 服务器),做一些事情来调用打开的进程以获取信息,当这一切都完成后,需要关闭进程。这都是登台服务器上自动化测试的一部分。

在 python 2.6 中,您可以这样做:

唉,我在这里工作时被锁定在 python 2.4 中,所以我无法访问该功能。如果我只是让脚本结束,服务器当然会继续存在。在脚本退出之前,我应该怎么做才能关闭/杀死该进程?

0 投票
1 回答
1239 浏览

python - PyRo 和蟒蛇

我在我的 python 程序中使用 PyRo。我有一个问题。B 类:在 callFromProxy 中打印 0,但在 callfun 中打印正确值 = 10。为什么?怎么修?

0 投票
1 回答
849 浏览

ant - 如何在使用 jython、pyro 和 ant 的组合时停止 IOException 错误?

所以这个问题的精彩之处在于:

短版:我们正在为我们正在使用的这个软件构建一个分发系统。基本上我们取出构建工件,将其存储在一个 ftp 服务器上,该服务器将它传递给多个客户端,这些客户端执行脚本来修补他们的服务器。

长版:

1个分发服务器

多个客户端服务器

软件:jython 2.5.1、ant 1.8.0、pyro 3.10

分发服务器有一个 FTP 服务器和一个在其上运行的 PYRO 客户端。每个客户端服务器都有一个 PRYO 服务器在其上运行。

当 PYRO 客户端被告知启动补丁程序时,它会读取一个包含所有客户端服务器列表的机器列表。然后与每台PYRO服务器一一连接,执行patch过程。该过程是:getPatch(获取该服务器的最新补丁),StopServer(停止可能正在或可能不会访问需要修补的软件),Apply patch,StartServer。每个进程调用一个 ANT 脚本,该脚本传递一些文件夹名称和其他配置传递。当你去应用补丁时,有趣的部分就发生了。请参阅下面的错误日志。由于 NDA 的原因,我不得不删除文件夹名称。

这就是有趣的地方。单独运行程序的每个部分。即手动一次运行getPatch、StopServer 等。这个错误不会发生。物理上去机器并运行它不会发生的进程。只有当我们一个接一个地调用所有 4 个进程时。它发生在 ApplyPatch 阶段,当对多个文件调用 ANT 替换脚本时。我们认为这可能与 JVM 将文件保持一秒或两秒有关。然而,这意味着已根据 ant 上的错误说明进行了修补。

简而言之:

分发服务器 ==> jython ==> pyro 连接 ==> 客户端服务器 ==> jython ==> ant 脚本

错误日志:

在 org.apache.tools.ant.Task.perform(Task.java:348) 在 org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) 调用(Method.java:597) .apache.tools.ant.taskdefs.Parallel$TaskRunnable.run(Parallel.java:433) at java.lang.Thread.run(Thread.java:619) 原因:java.io.IOException:删除失败<* snip>\bin\rep4698373081723114968.tmp 尝试重命名它。在 org.apache.tools.ant.util.FileUtils.rename(FileUtils.java:1248) 在 org.apache.tools.ant.taskdefs.Replace.processFile(Replace.java:702) ... 125 更多 433) at java.lang.Thread.run(Thread.java:619) 原因:java.io.IOException:尝试重命名时无法删除 <*snip>\bin\rep4698373081723114968.tmp。在 org.apache.tools.ant.util.FileUtils.rename(FileUtils.java:1248) 在 org.apache.tools.ant.taskdefs.Replace.processFile(Replace.java:702) ... 125 更多 433) at java.lang.Thread.run(Thread.java:619) 原因:java.io.IOException:尝试重命名时无法删除 <*snip>\bin\rep4698373081723114968.tmp。在 org.apache.tools.ant.util.FileUtils.rename(FileUtils.java:1248) 在 org.apache.tools.ant.taskdefs.Replace.processFile(Replace.java:702) ... 125 更多

任何帮助,将不胜感激。

0 投票
2 回答
951 浏览

php - pyrocms 安装在子目录中,wordpress 安装在根目录中

有一段时间了,所以我想我会寻求帮助。这是根目录中 wordpress 的 .htaccess 文件:

我基本上要求它忽略将安装 pyrocms 的“社区”目录。这是我在社区子目录中的 .htaccess 文件:

当我尝试访问 /community/installer 时收到 404(CI 404)

此外,如果我为 uri_protocol 尝试不同的设置,我会得到奇怪的结果。db 连接错误等。我已经能够显示安装程序的主页,但没有任何步骤。

有什么想法吗?尚未找到任何用于正确配置 pyrocms 以进行子目录安装的文档。