gpt4 book ai didi

python - Jython(WLST)/Python 通信

转载 作者:太空宇宙 更新时间:2023-11-03 15:25:45 25 4
gpt4 key购买 nike

我想建立一个 jython 和 python 通信链接。我有一个 django 应用程序和 python 脚本,用于前端并执行系统管理/自动化任务。我将 jython 用于 Weblogic 9/10。我想做的是让它可以给 jython 系统一个请求。例如带有参数 a、b、c 的任务 A,然后在完成后返回一条消息。

我想这样做是因为 wlst 或 jython 启动缓慢,当我需要进行部署或检查一个或多个服务器(现在最多 100 个)的状态时,这会变得很痛苦。那么,在保持 jython/(wlst) 系统处于事件状态并且可以轻松共享/发出请求的同时,将信息共享回主脚本或 python 类的最简单方法是什么?

我一直这样做的方式是使用 pickle 对象。通过获取所有数据,将其输出到文件中,然后将文件加载回 python 应用程序/脚本。

最佳答案

你有没有考虑过Celery或其他一些标准队列/代理消息传递系统? django-celery 非常成熟且开发良好,专为此类任务而设计。

Django -> Celery --> Worker Process (always running)
^ |-> Worker Process
| `-> Worker Process -,
\______ Job Complete _____/

基本思想是你有一直运行的工作进程(在 1 台或多台服务器上)等待消息进来。(这些可以是 pickled 对象或 json 或任何你想要的)。这些进程处于空闲状态,等待 Celery(以及它的 RabbitMQ 后端)向它们发送消息/作业。一旦处理完消息/作业,通知就会通过代理返回并调用 django 中的回调,您可以在其中更新状态。

Celery is a task queue/job queue based on distributed message passing. It is focused on real-time operation, but supports scheduling as well.

The execution units, called tasks, are executed concurrently on a single or more worker servers. Tasks can execute asynchronously (in the background) or synchronously (wait until ready).

关于python - Jython(WLST)/Python 通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7342368/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com