问题标签 [workmanagers]
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.
weblogic - Weblogic 10.3.x 中的“Stuck Thread Max Time”和“Max Stuck Thread Time”有什么区别?
Weblogic 10.3.6 Admin Console 有两个与 Stuck Threads 时间配置相关的参数。
一入:Servers -> Some_Server -> Configuration -> Tuning
有参数:Stuck Thread Max Time
其他在:Servers -> Some_Server -> Configuration -> Overload
有参数:Max Stuck Thread Time
在我做的一些测试中,只有Overload
配置中的参数似乎触发了Failure Action
相同的选项卡配置。我无法弄清楚Tuning
选项卡中的参数是做什么的。在 Oracle 官方文档中,这两个参数的描述相同,但与不同的 MBean 相关:
[卡住线程最大时间] ServerMBean.StuckThreadMaxTime ( http://docs.oracle.com/cd/E21764_01/apirefs.1111/e13952/pagehelp/Corecoreserverserverconfigtuningtitle.html )
[最大卡住线程时间] ServerFailureTriggerMBean.MaxStuckThreadTime ( http://docs.oracle.com/cd/E21764_01/apirefs.1111/e13952/pagehelp/Corecoreserverserverconfigoverloadtitle.html )
我的问题是,这些参数有什么区别?
java - 如何仅为一项新的 RESTful Web 服务配置卡住线程处理?
我正在开发一个宁静的网络服务,它应该返回巨大的文件(2GB 或更大)。这个网络服务的执行当然需要时间。在使用多个并行下载对其进行测试时,WLS 会引发 BEA-000337 错误(下载所需的时间超过了服务器配置中设置的“Stuck Thread Max Time”)。
我的问题是我找不到仅针对新 Web 服务调整它的方法。“Stuck Thread Max Time”设置是在服务器级别设置的,这意味着它将影响所有其他服务。这是不可接受的。我需要一种方法来为新服务设置它。
似乎我应该能够使用自己定义的 WorkManagers,但我在 WorkManagers 的文档中可以找到的唯一配置选项处理卡住线程的处理,而不是如何识别线程是否卡住。
我的问题是:
有没有办法在 wls 中配置,仅针对这个新的 Web 服务,它应该如何识别卡住的线程以及它应该如何处理这些线程?
我使用的 WLS 版本是 10.3.6
java - 如何将 WorkManager 连接到特定的 RESTful Web 服务?
我有一个 wls 服务器,其中部署了多个 Web 应用程序。其中一个 Web 应用程序包含一个安静的 Web 服务,该服务可能需要很长时间才能执行。因此,我希望它有一个自定义的 WorkManager 可以处理其他被认为卡住的线程。据我了解,您可以通过使用 xpath 指向其调度策略来为特定 ejb 设置工作管理器,如下所示
'/weblogic-ejb-jar/weblogic-enterprise-bean/[ejb-name="anEJB"]/dispatch-policy'
有没有办法为 RESTful Web 服务执行此操作,即为特定 Web 服务(或 Web 应用程序)设置工作管理器,而不是为部署在同一 wls 上的所有应用程序设置工作管理器?我发现的示例仅在全球范围内执行此操作。
我使用的 WLS 版本是 10.3.6
java - 在 WorkManagerTaskExecutor 中获取 TransportContext null
我正在尝试获取 TransportContext
(来自 TransportContextHolder.getTransportContext();)
能够在正常流程中获取上下文、连接和 HttpServletRequest。
但我有一个场景,使用 Spring WorkManagerTaskExecutor 创建并行调用)。在新线程中,我试图获取返回 null 的 Spring TransportContext。
有人可以帮助如何在 WorkManagerTaskExecutor 的概念中获取 TransportContext。
java - 如何在 Java EE 环境中创建线程?
我有一个要求,我必须在表中保留一些数据,并且持久可能需要一些时间。基本上我想保留一个日志。我不希望执行等到持久化完成。
我知道我必须使用线程来完成这项任务,并且我知道不鼓励在企业应用程序中创建线程。
因此,我开始阅读有关工作管理器的内容,并了解并尝试了 websphere application server 8.5 中的示例程序。
我使用了 websphere 中的 asynchbeans.jar,现在我很烦我正在编写特定于供应商的代码。
然后我遇到了 oracle java 文档中描述的 commonj work api。现在我正在考虑使用fabric3中的commonj api。
我的疑问是,是否有更好的方法来完成相同的任务?EJB 方式?还是工作经理适合我的要求?
spring - 如何限制weblogic中的线程仅用于spring mvc请求
我正在使用 weblogic 11g 应用程序服务器来运行我的 spring MVC 应用程序。我想限制线程数,在 Spring 控制器上调用请求。我如何在 weblogic.xml 中配置它。
我已经使用 weblogic workmanager 的 max-threads-constraint 来限制为 servlet 创建的线程数,但在 spring 的情况下,它只是一个调度程序 servlet,那么我们如何使用 spring mvc 应用程序实现相同的目标?
multithreading - 如何管理 RTMP 工作者/线程?
我们在管理 RTMP 工作者/线程如何分配给我们的应用程序服务器 (Weblogic) 时遇到问题。
似乎我们的服务器看不到为 rtmp 进程分配的线程,并且在很长一段时间后服务器用完了可用线程。根据 Weblogic 专家的说法,这是因为 rtmp 工作者/线程使用服务器上的默认线程。
使用 Weblogic 服务器,我们可以定义一些 WorkManager,但我们没有成功地使其适用于 rtmp 工作者/线程。
你知道有什么方法可以限制分配的 rtmp 工作者/线程的数量吗?是否有任何方法可以让我们的 Weblogic 应用程序服务器通过其 WorkManagers 来管理它们?
预先感谢您的帮助。
此致。
java - 使用 weblogic 工作管理器映射 commonj 工作管理器失败并出现 NameNotFoundException
我有一个(weblogic)单例服务,它使用 commonj workManagerTaskExecutor 来执行任务。我还在我的 weblogic 控制台中定义了一个名为 MyWorkManager 的工作管理器。现在我正在尝试将 commonj 工作管理器映射到 Weblogic 中的工作管理器,以便我可以在 workManagerTaskExecutor 中使用它。但是在我的应用程序代码中查找此工作管理器失败,NameNotFoundException 无法找到工作管理器。
我尝试遍历初始上下文对象,也找不到在其中注册的工作管理器。
我正在使用 Weblogic 10.3,对此我完全陌生。我究竟做错了什么?请帮帮我。
weblogic-application.xml
web.xml
weblogic - Web 应用程序中特定 Web 服务的 Weblogic 工作管理器
在 Web 应用程序中,我有 2 个 Web 服务和 2 个 servlet。其中一些组件是内部的,因此我们不想限制它们,但是需要限制一个面向客户端的 Web 服务,因为如果太多客户端调用它,它可能会使服务器崩溃。正如您在下面的代码中看到的那样,我一直在尝试在 web.xml 中执行此操作,但不幸的是没有成功。JSP servlet 正确分派到正确的工作管理器,但示例 Web 服务将发送到默认工作管理器。
如何将最后一个示例 Web 服务与它自己的工作管理器隔离开来?谢谢,