cari

Rumah  >  Soal Jawab  >  teks badan

php7.0+TP5 menggunakan ZipArchive untuk memampatkan fail besar tamat masa dan isu pemuatan

Saya ingin bertanya kepada anda semua, apabila saya memampatkan fail, tidak kira bagaimana saya menetapkan masa tamat masa, permintaan mampatan meminta 504 tamat masa pada 1 minit, nginx php disediakan tetapi ia tidak berfungsi, perisian pengurusan adalah phpstudy , sistemnya centos7.

Ada satu lagi Soalan, apabila memampatkan ZipArchive, saya ingin meningkatkan kelajuan mampatan Bagaimana untuk menanganinya? Muatan pelayan maksimum semasa pemampatan hanya 16%.

_Sun_Sun514 hari yang lalu727

membalas semua(2)saya akan balas

  • 大瓶可乐@php.cn

    大瓶可乐@php.cn2023-07-07 16:22:38

    Mengenai soalan pertama, jika anda telah menetapkan tamat masa dalam Nginx dan PHP tetapi masih menghadapi ralat tamat masa 504, anda boleh mencuba penyelesaian berikut: 1. Semak tetapan tamat masa PHP-FPM: buka fail php-fpm .conf, cari parameter `request_terminate_timeout` dan tingkatkan nilainya kepada masa yang lebih lama (dalam saat) dan mulakan semula PHP-FPM. 2. Semak tetapan tamat masa Nginx: buka fail nginx.conf dan tambah atau ubah suai parameter berikut dalam blok `http`:

    proxy_connect_timeout 600s;   
    proxy_send_timeout 600s;   
    proxy_read_timeout 600s;   
    fastcgi_send_timeout 600s;   
    fastcgi_read_timeout 600s;

    3 Semak had sumber pelayan: Pastikan sumber pelayan (CPU, memori, ruang cakera) mencukupi untuk mengendalikan permintaan Mampatan. Jika sumber pelayan tidak mencukupi, proses pemampatan mungkin mengambil masa yang lama dan mencetuskan tamat masa. 4. Laraskan algoritma dan parameter mampatan: Sesetengah algoritma mampatan mungkin lebih pantas daripada yang lain. Anda boleh cuba menggunakan algoritma mampatan yang berbeza atau melaraskan parameter ZipArchive untuk meningkatkan kelajuan mampatan. Sebagai contoh, anda boleh menetapkan kaedah mampatan yang berbeza menggunakan kaedah `setCompressionMethod()` atau melaraskan tahap mampatan menggunakan kaedah `setCompressionLevel()`. Mengenai soalan kedua, jika beban pelayan hanya mencapai 16%, bermakna sumber sistem tidak digunakan sepenuhnya. Ini mungkin disebabkan oleh fakta bahawa proses pemampatan ZipArchive didominasi oleh pengiraan CPU dan bukannya operasi cakera atau rangkaian. Dalam kes ini, anda boleh mencuba kaedah berikut untuk meningkatkan kelajuan mampatan: 1. Gunakan algoritma mampatan yang lebih pantas: Sesetengah algoritma mampatan lebih pantas daripada yang lain. Anda boleh cuba menggunakan algoritma pemampatan yang lebih pantas seperti algoritma Deflate (`ZipArchive::CM_DEFLATE`). 2. Laraskan parameter mampatan: Dengan melaraskan parameter ZipArchive, seperti menetapkan tahap mampatan yang berbeza, saiz tetingkap, dsb., kelajuan mampatan mungkin terjejas. Anda boleh mencuba dan mengoptimumkan mengikut situasi sebenar. 3. Pemprosesan selari: Jika anda mempunyai berbilang fail yang perlu dimampatkan, pertimbangkan untuk memproses berbilang fail secara selari untuk meningkatkan kelajuan mampatan keseluruhan. Contohnya, gunakan multithreading atau kumpulan proses untuk memproses berbilang fail secara serentak. Sila ambil perhatian bahawa apabila mengoptimumkan prestasi pelayan dan meningkatkan kelajuan mampatan, pastikan sumber sistem mencukupi dan elakkan melebihi kapasiti pelayan untuk menyebabkan masalah prestasi. Di samping itu, sila ingat untuk menggunakan sumber pelayan dengan bijak dan mematuhi peraturan dan amalan terbaik yang berkaitan.

    balas
    1
  • _Sun

    Terima kasih, Brother Coke Dengan menetapkan parameter yang anda nyatakan, program ini dapat meningkatkan masa mampatan kepada kira-kira 150 saat, bagaimanapun, ia melaporkan Bad Gateway selepas itu dan saya benar-benar tidak dapat menemui sebarang sekatan pada kawasan ini. Juga, Saudara Coke, bolehkah anda menerangkan secara terperinci cara menggunakan kaedah pemampatan untuk menetapkan ZipArchive. Saya telah menyemak manual dan saya seorang yang baru, tetapi saya benar-benar tidak memahaminya. . Terdapat juga pemprosesan selari, boleh anda huraikan mengenainya. Terima kasih, Coke!

    _Sun · 2023-08-22 17:03:05
  • Batalbalas