2011-10-04 39 views
1

我正在Weblogic应用程序服务器上开发应用程序,并且在我的应用程序中,我需要创建一个新进程(python)。在Weblogic应用程序服务器中创建新线程的最佳方式是什么?

该进程有2个输出流(std + err),应该由我的应用程序读取,因为如果这些流缓冲区已满,OS可以冻结进程。

问题是,我想要异步读取这些流,因为我并不真正在意流程输出,这意味着我需要2个新线程来完成这项工作(并且我不需要等待它们停止)。

我知道不建议在应用程序服务器中创建新线程,我不知道处理这种情况的最佳方式是什么。

回答

1

您可以使用Quartz Scheduler

您可以配置监听器,将启动与WebLogic应用程序,并运行它做到这一点。

如果不是这样,它可以运行基于某些触发,如一天中的时间,星期几,可以配置为无限期运行,或在特定时间段

石英管理它自身配置的线程池,这将不干扰Weblogic的线程。

FAQCookbook的模式 和这里的examples

+0

这是一个内置的工具?我更喜欢为我的情况使用内置解决方案,并且我认为有这样的情况,因为在我看来,这是一个非常基本的需求。 – wafwaf

+0

@wafwaf:没有这个内置的。通常情况下,最好的做法是不要在自己的应用服务器中管理线程池,Quartz在管理这类需求方面非常出名。 – JoseK

相关问题