worker-process

RAID0 的 iowait 很高。CPU 100%。静态数据未缓存在 RAM 中
worker-process

RAID0 的 iowait 很高。CPU 100%。静态数据未缓存在 RAM 中

我请求你的帮助。我自己已经看不到出路了。 我有一台服务器 1 个至强 E-2236 32内存 4 个 10TB 磁盘(WDC WD101KRYZ-01)- 以 RAID-0 形式收集。 磁盘速度很快。每个磁盘单独提供 250MB/s 的读/写速度。RAID-0 阵列产生 900MB/s 的速度 - 足以抽取 7 千兆位通道。使用 hdparm -t /dev/md0 进行测试 该服务器旨在分发大型视频文件 - 它是一个流视频服务器。 当我打开到此服务器的流量时,一切都会顺利进行一段时间,但随着时间的推移,iowait会增长到最大值。 HDD每秒仅处理40个...

Admin

Kubernetes 上运行的 Nginx/Openresty 的 worker_processes 值
worker-process

Kubernetes 上运行的 Nginx/Openresty 的 worker_processes 值

根据此处的文档,https://nginx.org/en/docs/ngx_core_module.html#worker_processes worker_processes 定义为工作进程的数量。 最佳值取决于许多因素,包括(但不限于)CPU 核心数、存储数据的硬盘驱动器数和负载模式。如果有疑问,将其设置为可用 CPU 核心数将是一个不错的开始(值“auto”将尝试自动检测它)。 大多数指南建议将此值设置为服务器上的核心数,或设置为自动,而自动本身会将其设置为机器上的核心数。 我在 kubernetes 上运行 OpenResty,因此当我从 openr...

Admin

Nginx sock 失败
worker-process

Nginx sock 失败

我们的 Web 应用程序遇到了一个问题。nginx 错误日志上的事件是: 连接到上游时,连接到 unix:/run/php-fpm/www.sock 失败(11:资源暂时不可用) 它最近几天发生了一次,在出现此错误期间,所有用户的连接突然断开。 我们使用的 nginx 配置是:nginx 版本是 1.18.0 .... worker_processes 4; worker_rlimit_nofile 32678; .... events { worker_connections 8192; } ... php-fpm(版本 7.1.33)引擎是...

Admin

使用 Linux AMI 2(推荐)
worker-process

使用 Linux AMI 2(推荐)

我创建了 AWS Beanstalk 和 RDS 实例。我正在测试一个同步 FTP 和 S3 文件的项目。 如何在 AWS Beanstalk 中使其典型php artisan queue:work或工作?php artisan queue:listen 我知道 Redis、ElastiCache 等。我还没有测试过它们。但我正在尝试让它database只与驱动程序一起工作。 我也知道只需访问 SSH,但是有没有办法不使用 SSH 来处理排队作业?也许像使用 .ebconfig? ...

Admin

IIS 8.5 - IIS 使用什么标准启动工作进程?
worker-process

IIS 8.5 - IIS 使用什么标准启动工作进程?

我们在 IIS 8.5 中运行了一个作为“网络花园”实现的某个应用程序,其中最大工作进程数 = 10。这样做的原因是长时间运行的请求、数据库和网络/异步密集型,以避免在非常繁忙的应用程序中填满工作进程的队列。 AppPool 适用于 NetCore 应用程序(无托管代码),提供 RESTful API,管道模式 = 集成。 我们试图弄清楚的是 IIS 如何确定何时触发要创建的额外工作进程。我们找不到任何文档或文章/帖子来解释是什么触发了对下一个工作进程的“需要”,直到达到配置的最大值。 我们无法真正理解 IIS 如何确定何时扩展工作进程,以便更好地调整...

Admin

在从 RabbitMQ 队列开始部署之前删除消费者
worker-process

在从 RabbitMQ 队列开始部署之前删除消费者

我们设置了具有 8 个节点的 Celery 工作器。它在 RabbitMQ 中创建了 8 个队列。 当我们开始部署新的更改时,ansible playbook 中的最后一步是 Celery 重启。 Celery 重启必须关闭每个节点并启动该节点。但是,由于有继续消息进入队列并被工作节点使用,因此需要更多时间来重启 Celery 工作节点。 我认为,如果我们在开始部署时将消费者从 Celery 工作队列中删除,那么 Celery 节点将不会消费更多消息,而只会处理已消费的消息。这样,Celery 可能会快速重启。 我不确定,我正在朝着正确的方向思考,但...

Admin

当 CPU 百分比达到 X 时如何启动程序
worker-process

当 CPU 百分比达到 X 时如何启动程序

我在使用 ASP.NET v 4.0 应用程序时,经常会遇到每隔 4 天就会出现一次 CPU 占用率飙升至 75% 的情况,有时会运行良好,直到一天结束,有时会稳步增长到 100% 然后我必须重新启动服务器。 我已遵循有关“当工作进程的 CPU 达到 100% 时该怎么办”的每条指南,并且我知道它是哪个工作进程,它是哪个应用程序池。我所能做的就是找到该进程并终止它或回收应用程序池,这有时会有所帮助。 我不知道当 CPU 使用率达到 75% 时系统上发生了什么。 我想知道是否有一种方法可以在 CPU 达到 50% 时启动 procmon 并运行 2 分...

Admin

worker_process
worker-process

worker_process

Nginxworker_connections“设置工作进程可以打开的最大同时连接数。此数字包括所有连接(例如与代理服务器的连接等),而不仅仅是与客户端的连接。另一个考虑因素是实际同时连接数不能超过当前最大打开文件数的限制”。我对此有几个疑问: 这个的最佳值或推荐值应该是多少? 使用大量工作连接有哪些缺点? ...

Admin

该文件已在 IIS 工作进程中打开
worker-process

该文件已在 IIS 工作进程中打开

我在 IIS7 上托管了一个 WCF 服务。我正在使用源代码控制工具 (IBM RTC) 来管理我们测试服务器上的代码库和持续部署。但我的部署失败了,因为 IIS 已获取日志文件的锁定。 错误信息: The command "ren "<some service path on network share>" ""<to path on network share>""" exited with code 1. 当我进一步调试该问题时,我发现它由于错误“该文件在 IIS 工作进程中打开”而失败。 在部署期间,我使用“_ol...

Admin

aws beanstalk php 工作者扩展
worker-process

aws beanstalk php 工作者扩展

我的 worker 环境中运行着一个非常轻量级的 PHP 脚本。CPU 利用率几乎为零。为了控制我的 SQS 队列,我必须不断手动启动新的 worker 来降低数量。当请求数和 CPU 利用率较低时,如何让我的 worker 自动扩展? ...

Admin

当工作进程无响应时如何防止 IIS 回收应用程序池
worker-process

当工作进程无响应时如何防止 IIS 回收应用程序池

我们有一个处理大量请求的 WCF 服务。 我发现,当并发请求的数量超出最大并发连接数的限制时,后续请求将排队等待稍后执行。如果在这些请求有机会执行之前发生超时,IIS 会确定工作进程无响应并将其终止(或回收应用程序池)。 回收过程大约需要一分钟,与此同时服务将会中断,这对我们来说是一个大问题。 无论代码中导致超时和响应时间过长的原因是什么(我们正在处理这个问题),我的问题是这样的: 如果我们为该应用程序池定义多个工作进程,当其中一个工作进程处于相同情况时会发生什么?IIS 是否会回收该应用程序池,或者特定的工作进程将被终止,而其他工作进程将继续处理请...

Admin

IIS CPU 限制在 Azure VM 上不起作用
worker-process

IIS CPU 限制在 Azure VM 上不起作用

我们有一些旧的遗留 Web 应用程序托管在 Azure VM 上。在某些情况下,它们会陷入一种情况,导致 W3WP 进程达到 99%>,并导致服务器崩溃。它们不是任务关键型的,因此当发生这种情况时,我们自动终止这些进程比打开代码并更改旧代码更安全。 我们已经在本地测试了 IIS 限制进程功能并且它运行完美,在进程运行 3 分钟后 > 90% w3wp 进程被终止。 <cpu limit="90000" action="KillW3wp" resetInterval="00:03:00" /> 我在 Azure 中的 VM 上运...

Admin

从即将死亡的 IIS ASP.NET 工作进程中获取故障转储
worker-process

从即将死亡的 IIS ASP.NET 工作进程中获取故障转储

(不确定这是否是 IIS 问题,所以如果这更适合 SO,我会很乐意移动它...) 我们有一个 IIS 托管的应用程序偶尔会死机,事件日志声称应用程序池报告自身由于死锁而处于不健康状态。我试图获取进程死机时的崩溃转储,看看我们能否找出问题所在。 我已经关注这个Microsoft 知识库文章 #828222,其中说应用程序池上有一个选项可以启用“孤立工作进程”分析。我们严格按照这些步骤操作 - 安装了调试工具,为应用程序池启用了孤立工作进程选项,并设置了一个批处理文件以在发生这种情况时运行: adsutil.vbs SET W3SVC/AppPools/M...

Admin

如何继续分析 Windows 进程激活服务导致 w3wp.exe 线程崩溃的 IIS 7.5 调试诊断工具转储
worker-process

如何继续分析 Windows 进程激活服务导致 w3wp.exe 线程崩溃的 IIS 7.5 调试诊断工具转储

我在一些生产 Windows Server 2008 R2 标准服务器上使用调试诊断工具(DebugDiag v1.2),这些服务器运行在 IIS 7.5 上内部构建的自定义 Web 应用程序来创建崩溃转储文件。 问题是 Windows 进程激活服务 (WAS) 警告事件不断发生在我的所有生产服务器上,并且频率在增加,但它们发生的时间仍然是随机的,在整个 24 小时内。 以下是我关注的一个系统日志事件示例: 级别:警告 来源:WAS 事件 ID:5011 描述:为应用程序池“MyAppPool”提供服务的进程与 Windows 进程激活服务发生致命通信...

Admin

任务管理器显示的工作进程多于最大设置数
worker-process

任务管理器显示的工作进程多于最大设置数

我正在为大量用户使用的 Web 应用程序进行应用程序池化,并将 Web 园设置为最多 20 个工作进程。但在任务管理器中,我看到的进程比我设置的 w3wp 进程多。Web 应用程序广泛使用由 memcached 管理的会话。有人能告诉我创建如此多工作进程可能出错的地方吗?我发现很难缩小工作进程数量如此之多的原因。(我将 Web 园设置为空闲超时 - 20 分钟,最大工作进程 - 10) ...

Admin