Rumah  >  Artikel  >  Tutorial sistem  >  Rakam sekali dan gunakan strace untuk mendiagnosis masalah PHP menduduki terlalu banyak sumber sistem.

Rakam sekali dan gunakan strace untuk mendiagnosis masalah PHP menduduki terlalu banyak sumber sistem.

WBOY
WBOYke hadapan
2024-05-03 16:31:14914semak imbas

Persekitaran setempat: sistem redhat6.7. nginx1.12.1, php7.1.0, kod menggunakan rangka kerja yii2

Soalan: Laman web tempatan perlu menggunakan perkhidmatan elasticsearch. Apabila PHP menggunakan elasticsearch yang dibina pada pelayan tempatan, beban tempatan adalah normal. Apabila saya menggunakan perkhidmatan elasticsearch AWS, beban pada pelayan tempatan selalunya terlalu tinggi. Semak log nginx dan php dan tidak mencari pengecualian. Bilangan sambungan serentak dalam sistem juga tidak tinggi. Pada masa ini, saya memikirkan alat diagnostik jejak yang bos kami beritahu saya.

Proses nyahpepijat:

  • Cari id proses anak php
  • strace -cp pid jejak proses panggilan

Beban sistem pada masa itu:

Rakam sekali dan gunakan strace untuk mendiagnosis masalah PHP menduduki terlalu banyak sumber sistem.

proses debugging strace

Rakam sekali dan gunakan strace untuk mendiagnosis masalah PHP menduduki terlalu banyak sumber sistem.

Di sini kami mendapati bahawa apabila PHP memanggil elasticsearch, ia akan mencari fail secara setempat, dan fail ini tidak wujud. Ini mengakibatkan beban pelayan yang tinggi. Dengan membandingkan perbezaan antara aws elasticsearch dan kluster es tempatan. Saya mendapati bahawa hanya kaedah panggilan yang berbeza. Kod dipanggil menggunakan kaedah https, jadi ia akan mencari fail perpustakaan sijil secara setempat. Saya segera menghubungi pasukan pembangunan dan menukar kaedah panggilan kepada http Selepas memerhati untuk tempoh masa, beban pelayan kembali normal.

strace -T -e access -p 1379

Rakam sekali dan gunakan strace untuk mendiagnosis masalah PHP menduduki terlalu banyak sumber sistem.

Atas ialah kandungan terperinci Rakam sekali dan gunakan strace untuk mendiagnosis masalah PHP menduduki terlalu banyak sumber sistem.. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:linuxprobe.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam