问题标签 [long-running-processes]

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 投票
1 回答
1019 浏览

php - 长时间运行的 MySQL 查询在 Apache 下从 PHP 运行:浏览器不输出结果并保持“正在传输数据……”

我有 Apache 2.2 PHP 5.3 MySQL 5.5 应用程序。page1.php 上的表单接受用户输入。使用 GET 将值传递给 page2.php。page2.php 上的 PHP 脚本运行 MySQL 查询并显示结果。根据用户输入参数查询可能会运行 3 到 900 秒。

在我的测试中,运行 < 300 秒的任何查询的结果都显示正常。更长的运行查询在服务器上可以正常完成(我看到 CPU 负载在 500 秒后从 90% 变为 0%),但浏览器没有显示结果并继续显示在状态栏中“从 my.host.org 传输数据。 ..”

此时,当我尝试在同一浏览器(Firefox)的新实例中打开我的应用程序的任何页面时,它会在选项卡标题上显示“正在连接...”,并在“等待 my.host.org ...”中显示状态栏。此时在其他浏览器(IE)中打开我的应用程序的任何页面都可以。

以下是我迄今为止更改/设置的设置,但它们没有帮助。任何想法都会有所帮助。谢谢你。

0 投票
1 回答
661 浏览

asp.net - asp.net 长时间运行的任务

我已经实现了这个解决方案来在asp.net http://haacked.com/archive/2011/10/16/the-dangers-of-implementing-recurring-background-tasks-in-asp-中运行一个长时间运行的任务网络.aspx

但是我一直收到这个错误:“服务应用程序池'DefaultAppPool'的进程在关闭期间超出了时间限制。进程ID是'1111'。”以前有没有人遇到过这个问题并且知道什么,如果有的话,我'我做错了。

asp.net 等待的时间是否有限制,因为我的任务可能需要至少几个小时才能运行。

请不要回答说我不应该使用 asp.net。我必须在这一点上。

谢谢。

0 投票
2 回答
4663 浏览

python - 烧瓶长例程

我必须在我的 Flask 应用程序中做一些长时间的工作。我想异步进行。刚开始工作,然后从 javascript 检查状态。

我正在尝试做类似的事情:

但这创造了不复存在的独角兽工人。

如何解决?我应该使用像芹菜这样的东西吗?

0 投票
1 回答
1685 浏览

.net - 长时间运行 WF 4 模式

我正在努力实现以下目标:

  1. 启动一个可能会运行很长时间的工作流,其中包括自定义活动;
  2. 这些自定义活动将遵循创建书签并等待其恢复的模式;
  3. 返回启动的工作流 id 并将其存储在某处;
  4. 在稍后的某个时间点,从其存储的 id 加载工作流;
  5. 检查工作流程是否完成,如果没有,检查是否有任何被阻止的书签;
  6. 恢复这些书签,从而导致相关活动完成,最终导致整个工作流程完成。

一个简单的用例是:审查文档并批准或拒绝它的工作流程。将为此创建一个工作流,通知个人,并且,只要他们愿意,他们可以通过批准或拒绝审查来提供反馈。

我以 Andrew Zhu 的代码为例,可在http://xhinker.com/post/WF4.aspx获得。

我遇到的问题是:

  1. 当使用像我描述的那样的自定义活动时,在启动工作流时,WaitForRunnableInstance会无限期地等待,所以我从来没有收到通知我的工作流已经开始并被持久化到数据库中;
  2. 确实存储了工作流,并且将列BlockingBookmarks设置为我的自定义活动的 id,ExecutionStatus设置为空闲,IsInitialized设置为 1,IsSuspended设置为 0,IsCompleted设置为 0 并IsReadyToRun设置为 0。

我已经开始在 Microsoft 论坛上进行讨论,可以在http://social.msdn.microsoft.com/Forums/en-US/wfprerelease/thread/6262874d-3493-4be1-bd05-b990307e1875/上看到并得到一些反馈,但还是有些不对劲。

对此有什么想法吗?对于带有自定义活动的长时间运行的工作流有什么有用的模式吗?

谢谢!

0 投票
3 回答
454 浏览

python - 有没有办法在 App Engine 中实现长时间运行的事务?

我有一个函数可以发出许多 HTTP 请求来收集数据并将其存储在数据存储中。所有调用都必须成功,否则一切都必须回滚。执行时间接近 10 分钟。应用引擎上的最大交易期限似乎是默认的 60 秒。

有没有办法增加这一点,从而使函数具有事务性?

0 投票
4 回答
5440 浏览

c# - 如何在asp.net下异步运行持久的进程?

.net 4.5,asp.net mvc:从 ASP.NET 应用程序运行持久进程(1-2 分钟)的最佳方法是什么,因为它应该在单线程环境中运行,我的意思是该进程是为一次只有一个用户,所有其他用户的执行必须等到当前执行完成?场景如下:用户单击运行某种持久计算的按钮,http响应立即返回给用户,然后用户必须手动请求计算的状态与单独的请求。Asp.net http 会话中止不应该导致进程终止,它应该继续下去。该进程可能在相同或不同的服务器上运行。

0 投票
2 回答
1047 浏览

asp.net - 如何从 asp.net 页面启动和轮询 Windows 服务

客户想要一个 asp.net 页面,该页面有一个按钮,可以从具有数百条记录的外部源触发数据库更新。这个过程需要很长时间。他还希望在流程运行时更新状态,例如“处理 1000 条记录中的 10 条”。在阅读各种文章时,我正在考虑将数据库更新代码放在 Windows 服务中。我以前从未使用过 Windows 服务,也找不到很多关于如何启动 Windows 服务并从 asp.net 页面轮询它的教程。我的问题是这是处理此过程的最佳方式吗?而且,有没有人有任何例子说明他们是如何做到这一点的?

0 投票
0 回答
160 浏览

asp.net - 从 WCF 获取状态更新到 asp.net 页面

我想知道我是否可以访问 WCF 服务中的静态变量以进行状态更新,如果可以的话如何做到这一点?

我有一个更新 1000 种产品的漫长过程。这个过程是从一个asp.net页面触发的,并且用户希望在过程运行时从服务中更新状态,即“处理产品123”。我有服务,并且我在更新面板中有一个计时器控件,我想用它来轮询服务以获取状态更新。我在想当计时器控件回发时,我会使用 GetStatus 方法查询服务以获取当前状态,但我认为状态消息将始终相同,因为将在 Page_Load 上创建服务的新实例。那么,如何从 WCF 服务获取运行状态变量到 asp.net 页面?

在我的 WCF 服务中

编辑:我刚读到 [ServiceBehavior(InstanceContextMode = InstanceContextMode.PerSession)],这就是我需要做的吗?

0 投票
1 回答
86 浏览

nservicebus - 使用自己的队列作为长期流程操作的持有者的应用程序

我想制作一个长期的流程处理程序并为它使用 NServiceBus。NServiceBus 的作用是保存该进程的操作(某种批处理)问题是我有不止一种类型的长期进程,并且每个进程都必须并行运行,因此将所有消息推送到一个队列中不是我必须做的,我想。

逻辑是:1)接收一个长期进程的命令,2)将其分成N个操作,3)每个操作“打包”到消息中并推送到队列中,4)根据消息的类型,特定的handler将处理消息并执行它所持有的操作。

我不能将所有操作放在一个队列中,因为我的应用程序应该处理另一条消息,这需要快速响应。如果队列中充满了操作,则另一条消息将等待很长时间才能处理

那么,有谁知道如何解决这个问题?

0 投票
1 回答
83 浏览

android - 是否有可能在android中获得应用程序的启动事件?

我正在开发一个显示一些特定允许的应用程序的应用程序。如果用户试图启动除了这些允许的应用程序,我想阻止它们。

我知道可以使用ActivityManager.getRunningTasks(..)来获取正在运行的任务并检查它们的包名称。但是 RunningTask 信息只有在启动应用程序后才会获取。因为当我尝试设备后退按钮时,会启动被阻止的应用程序,它是以前运行,我无法继续。

如何防止在启动之前启动被阻止的应用程序?任何帮助 - 非常感谢。

提前致谢