问题标签 [gpars]
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.
mysql - 多次迭代后带有 gpars 的 Groovy 应用程序变慢
我正在使用 gpars 并行处理一个 250M 行的 MySQL 数据库表。我创建了 8 个 gpars 线程,8 个独立的数据库连接,并以这样一种方式划分数据,即每个线程独立地在不同的行范围内运行……这是一种廉价的 MapReduce 概念。核心逻辑是这样的:
该代码最初运行良好,启动时每秒可提供超过 10,000 行。但是在几百万行之后,它开始变慢。当我们进入 2500 万行时,而不是每秒 10,000 行,我们每秒只能获得 1,000 行。如果我们终止应用程序并从我们停止的点重新启动它,它会再次回到每秒 10K 行一段时间,但随着处理的继续,它总是会变慢。
有很多可用的处理能力——这是一个 8 路系统,数据库通过网络,所以无论如何都有相当长的等待时间。处理器在运行时通常运行不超过 25-30% 的繁忙。似乎也没有任何内存泄漏 - 我们监控内存统计数据,一旦处理正在进行中就看不到任何变化。MySQL 服务器似乎没有受到压力(它最初运行大约 30% 的繁忙,随着应用程序变慢而减少)。
是否有任何技巧可以帮助这种事情在大量迭代中更一致地运行?
oracle - ORA-00942 在 Groovy 中使用 GPars withPool 时
我目前使用以下命令处理分页列表:
但是这很慢,我想利用 GPars 来同时更新每个项目。
我用过:
但是,当我运行它时,我得到:
该代码针对列表中的任意数量的项目连续运行,但即使 paginatedList 中只有一个项目,它也不会对任何数量同时运行。
更新函数从多个表/视图和其他表/视图中调用数据工作正常,但它在一个特定视图上停止。它正在尝试的查询在手动执行时工作正常(并且与串行调用时相同,这有效)。
任何人都可以帮助解释为什么这不起作用。
谢谢
groovy - GPars、Actor 中的 NullPointerException
时髦的:1.8.6
GPars:0.12 或 1.2.1
操作系统:Ubuntu 14.04 LTS
执行此代码时,经常会发生 NullPointerException。a和b的范围越来越宽,这个错误也越来越容易出现。但是当范围有限时,永远不会发生错误。
我不明白为什么会发生错误。
grails - Grails CSV 插件 - 并发
我在我的应用程序中使用插件: Grails CSV Plugin和Grails 2.5.3。我需要实现并发功能,例如:GPars,但我不知道该怎么做。
现在,配置是顺序处理。我的代码片段示例:
谢谢。
groovy - GParsPool.withPool 和 GParsPool.withExistingPool 有什么区别?
GParsPool.withPool 和 GParsPool.withExistingPool 有什么区别?我不明白文档中的解释。
java - GPars - 我怎么知道演员是否忙?
我正在尝试在 Java 中使用 GPars 来处理几种类型的消息。每种消息类型都有一个参与者。
但是消息处理需要很多时间,而消息不断涌现。我需要在演员忙的时候忽略即将到来的消息(只是把它们扔掉)。
我怎么知道 GPars 演员是否忙?我知道Actor.isActive()
方法,但我不太确定它是不是问题(JavaDoc 非常模棱两可且不清楚),而且我找不到任何有用的信息。
multithreading - gpars 在 jenkins 的管道插件中创建并行作业
我的环境是 Tibco,我有 200 到 300 项服务。我的设计需要同时触发所有这些服务的“停止”命令。请提供一些关于我如何处理(编码)Gpars 中的线程机制的见解。例子会有所帮助。
groovy - 具有并行操作的 Groovy XmlSlurper
我正在解析一些 rss xml 提要,需要在描述字段中扩展一些 url。
现在我的代码写成
在这种情况下,里面的url是一个一个请求的,过程很慢。
所以我想做类似的事情
但是我得到了错误信息:</p>
groovy.lang.MissingMethodException: No signature of method: groovy.util.slurpersupport.NodeChildren.collectParallel() is applicable for argument types
jenkins - 从 Pipeline 调用的 Gpars withPool 方法
我在“PreVerifymanager.groovy”中实现了我的 GParsPool.withPool,如下所示。
这在我的 IDE 中使用 PreVerifyManager 的主要方法可以正常工作。但是当我删除 main 方法并在 Pipeline 脚本中创建的 PreVerifyManager 的对象上调用方法 callMe 时,它不起作用。
管道脚本如下:
基本上,我正在将 GParsPool.withPool 实现与管道脚本集成。任何输入表示赞赏。
sql - Groovy 并行 sql 查询
我正在尝试使用 GPars 运行并行 sql 查询。但不知何故,它并没有像我预期的那样工作。由于我对 groovy/java 并发比较陌生,我不确定如何解决我的问题。
我遵循代码:
使用此代码,我得到一个 ID 列表。现在我想为每个加载的 id 加载数据,这应该并行发生以提高我的性能,因为我有一个大型数据库。
要获取详细数据,我使用以下代码:
现在我运行代码,一切正常,除了代码没有并行执行。使用 JProfiler 我可以看到我已经阻塞了线程和等待线程,但是 0 个可运行线程。
谢谢你的帮助。我需要更多信息,我会提供给他们:)
丹尼尔