提问人:Shahid Rafiq 提问时间:11/15/2023 最后编辑:Shahid Rafiq 更新时间:11/15/2023 访问量:21
disableClientPersistence => true for mongodb 驱动程序在连接字符串中使用高 CPU。如何解决 cpu 使用率问题?
disableClientPersistence => true for mongodb driver in connection string uses a high CPU. How to fix cpu utilization?
问:
以下是我在 lumen api 中使用 jensenger/mongodb 的连接字符串。
$config::set("database.connections.mongodb", [
'driver' => 'mongodb',
'host' => [env('MONGODB_CLUSTER_SERVER01'),
env('MONGODB_CLUSTER_SERVER02'),
env('MONGODB_CLUSTER_SERVER03')],
'database' => $this->dbname,
'username' => env('MONGODB_CLUSTER_USERNAME'),
'driver_options' => ["disableClientPersistence" => true],
'password' => env('MONGODB_CLUSTER_PW'),
'options' => [
'database' => $this->dbname,
'r' => 'majority',
'replicaSet' => 'sdfs',
'readPreference' => 'secondaryPreferred',
'authSource' => env('DB_AUTHENTICATION_DATABASE', 'admin'),
]
]);
我的旧问题解释说,我开始在连接字符串中使用 disableClientPersistence 标志,并且 cpu 利用率达到 100%,而没有此标志,CPU 利用率在 15-20% 之间。我正在使用 cx5 大型实例。
是否有人可以指导我是否有任何方法可以解决这些过高的 CPU 使用率?
笔记
- 我的服务器总是在8k-60k的流量下
- 我正在使用带有 php-fpm 的 apache。
- 当前的 php-fpm 调整是
pm.max_children = 50
pm.process_idle_timeout = 10s
pm.min_spare_servers = 5
pm.max_spare_servers = 10
pm.start_servers = 5
答: 暂无答案
评论
8k-60k