标签: worker-process

排队系统 - 启动多个员工的好方法是什么?

  • 如何为面向队列的系统设置一个或多个工作脚本?
  • 你如何安排启动 - 并在必要时重新启动 - 工作脚本根据需要?(我正在考虑像init.d /,基于Ruby的'上帝',DJB的Daemontools等等工具)

我正在开发一个异步队列/工作系统,在这种情况下使用PHP和BeanstalkdD(虽然实际的语言和守护进程并不重要).任务本身并不太难 - 将带有命令和参数的数组编码到JSON中,以便通过Beanstalkd守护程序进行传输,在工作脚本中将它们拾取以根据需要对其进行操作.

还有许多其他类似的队列/工作人员设置,例如Starling,Gearman,亚马逊的SQS以及其他更像"企业"的系统,如IBM的MQ和RabbitMQ.如果你运行像Gearman或SQS这样的东西 - 如何启动和控制工作池?问题出在最初的工人启动上,然后能够添加额外的额外工作人员,随意关闭它们(虽然我可以通过队列发送消息来关闭它们 - 只要一些'观察者'不会自动关闭它们重启它们).这不是一个PHP问题,它是关于设置一个或多个进程在启动时运行的直接Unix进程,或者向池中添加更多工作程序.

一个bash脚本循环的脚本已经到位-这将调用PHP脚本,然后收集并从队列中运行的任务,偶尔出来才能够清理自己(也可以暂停失败了几秒钟,或通过计划的事件).这样可以正常工作,并且在此基础上构建工作进程根本不会非常困难.

获得一个好的工作者控制器系统是关于灵活性,在机器启动时自动启动一个或两个,并且能够在队列繁忙时从命令行添加更多,在不再需要时关闭额外的东西.

queue worker-process message-queue gearman amazon-sqs

9
推荐指数
1
解决办法
3177
查看次数

IIS,多个CPU核心,应用程序池和工作进程 - 单个站点的最佳配置?

我们使用Kentico CMS,我与他们交换了关于网络花园部署的电子邮件.

我们在具有8个CPU核心的服务器上运行单个站点.在与Kentico的咨询热线,我们没有改变应用程序池Web园从默认即它被设置为1的工作进程的最大数设定.

我们的经验是,该网站只使用其中一个cpu核心 - 其他人都闲置.当我通过电子邮件向他们发送电子邮件时,他们的回答是操作系统/ IIS会处理此问题并根据需要使用其他核心,即使应用程序池只有一个工作进程.

现在,我非常尊重Kentico的人,但这对我来说似乎不对?

当然,如果我们想要使用所有核心,我们需要允许八个工作进程(并在SQL服务器中实现会话状态存储)?

非常感谢

托尼

iis worker-process application-pool web-garden kentico

9
推荐指数
1
解决办法
4972
查看次数

我可以在Web应用程序中获取工作进程的进程ID吗?

我有一个在具有多个工作进程的应用程序池中运行的应用程序.

我需要访问控制器中的进程ID来检查自从我更改应用程序池以使用多个工作进程后出现的一些问题.

asp.net-mvc worker-process application-pool asp.net-mvc-4

9
推荐指数
1
解决办法
4768
查看次数

Go中的惯用可变大小工作池

我正试图在Go中实现一个工作池.在去维基(和有效的围棋频道部分)功能限制资源利用的很好的例子.只需创建一个具有与工作池一样大的缓冲区的通道.然后用工人填充该频道,并在完成后将其发送回频道.从通道块接收,直到工作人员可用.所以频道和循环是整个实现 - 非常酷!

或者,可以阻止发送到频道,但同样的想法.

我的问题是在工作池运行时改变它的大小.我不相信有办法改变频道的大小.我有一些想法,但大多数看起来都太复杂了. 这个页面实际上使用一个通道和空结构以大致相同的方式实现了一个信号量,但它有同样的问题(这些东西一直在谷歌搜索"golang信号量".

concurrency semaphore worker-process go goroutine

9
推荐指数
1
解决办法
6598
查看次数

应用程序池启动模式:OnDemand 与 AlwaysRunning,哪个最好?

我的应用程序池一直使用 OnDemand 启动模式,但最近我听说 AlwaysRunning 模式,它允许部署到 IIS 的 ASP.NET 应用程序在部署后立即可用。启用此功能似乎会导致 IIS 在部署应用程序后立即启动应用程序,从而消除 \xe2\x80\x9ccold 命中 \xe2\x80\x9d 到网站所需的预热时间。这篇精彩的文章对此进行了解释。

\n

下面是我有一些疑问并且想了解一下:

\n
    \n
  1. 使用 AlwaysRunning 功能,回收应用程序池时\n会发生什么情况?使用的内存被删除并释放?工作进程\n被终止并再次启动,或者它们在内存中继续可用,并且它们使用的内存没有被删除和释放?

    \n
  2. \n
  3. OnDemand 和\nAlwaysRunning 的优点和缺点是什么?哪个更适合单个工作进程,哪个更适合网络花园(多个工作进程)?

    \n
  4. \n
  5. 另外,有人可以解释一下将\nAlwaysRunnig 与进程空闲超时和空闲\n超时操作和回收结合使用时网站的行为吗?点播也是如此。我想\n清楚地了解所有这些部分在这些场景下如何相互干预\n(AlwaysRunning 和 OnDemand)。

    \n
  6. \n
\n

iis asp.net-mvc worker-process application-pool

8
推荐指数
1
解决办法
3万
查看次数

SignalR IIS工作进程未释放

我们有一个简单的信号服务器和客户端,在启用背板的情况下运行。当我查看 IIS 工作进程时,我发现在当前请求选项卡中始终显示此信号器连接。

在此输入图像描述

当我连接大约 100 个客户端时,woker 进程视图中会显示 100 个当前请求。连接后这些不应该被删除吗?或者这是信号器的预期行为?

c# iis worker-process signalr signalr-backplane

7
推荐指数
1
解决办法
1501
查看次数

IIS Web Garden中的Singleton对象

我在asp.net应用程序中有很多Singleton实现,并且出于某些性能原因希望将我的应用程序移动到IIS Web Garden环境.

CMIIW,使用n个工作进程迁移到IIS Web Garden,每个工作进程中将创建一个单独的对象,这使得它不再是单个对象,因为n > 1.

我可以在IIS Web Garden中再次制作所有这些单例对象吗?

asp.net singleton worker-process web-garden

6
推荐指数
1
解决办法
7320
查看次数

TPL中的最大任务?

我想在Windows Azure上的Worker进程中使用TPL.我想在队列中添加一个IJob,这有一个Run方法,因此worker将包含:

loop get item off queue使用TPL调用IJob.Run,​​这是一个异步调用

但我有点担心我可以添加到TPL的最大项目?如果需要,我很乐意构建我自己的某种TPL池,只需检查它的功能.

干杯,灰.

multithreading worker-process azure plinq task-parallel-library

6
推荐指数
1
解决办法
2250
查看次数

开始调试和附加到进程有什么区别

当我将项目附加到我的 w3wp.exe IIS 工作进程时,我的项目加载速度明显快于“开始调试”时的加载速度。

但是,无论我“开始调试”还是“附加到进程”,同一个工作进程似乎都在处理相同数量的模块/DLL (w3wp.exe)。

为什么附加到进程的速度如此之快?

debugging iis-7 worker-process visual-studio-2010

5
推荐指数
1
解决办法
2128
查看次数

Worker Service 在 System32 文件夹而不是本地文件夹中查找 appsettings.json

我有一个 .Net 核心工作服务,它作为 Windows 服务运行。该服务使用 appsettings.json 文件作为配置信息。使用SC CREATE命令安装服务后,服务失败。

在事件查看器中,我发现了错误,它找不到文件C:\Windows\System32\appsettings.json。我的服务文件放置在不同的文件夹中c:\Services\,而不是查看该位置,该服务正在查找 System32 文件夹中的文件。

配置注册如下。

 var configBuilder = new ConfigurationBuilder()
                   .SetBasePath(Directory.GetCurrentDirectory())
                   .AddJsonFile("appsettings.json");
var configuration = configBuilder.Build();
            services.AddSingleton(configuration);
Run Code Online (Sandbox Code Playgroud)

如何让服务查看本地文件夹?

windows-services worker-process appsettings .net-core asp.net-core

5
推荐指数
2
解决办法
2922
查看次数