Rumah php教程 php手册 基于什么样的理由 PHP 比其它 CGI

基于什么样的理由 PHP 比其它 CGI

Jun 21, 2016 am 09:11 AM
bytes document requests

cgi

Q:基于什么样的理由 PHP 比其它 CGI 好呢?有没有比较具体的数据可以证明 PHP 执行与其它 CGI 执行的效率好 ? 现在我的公司是用 C 来写 CGI 的,如果换成 PHP,会不会比较好呢 ?没有强而有力的依据的话,我就没办法说服上面的人让我转成 PHP 了...

A:
我认为"好" 要有三点
第一: 写出来的程式的执行速度快.
第二: 遇到有大量存取时的执行效能强.
第三: 程式开发的时间快,易维护。
php在这三点中,虽都不一定是最好的,但也都在前茅

以下是C,PHP和Perl在速度方面的比较
我用下面的算式测试
$s=1.0;
for ($i=1;$ifor ($j=1;$j$s=$s*1.0005;
$s=$s/1.0004;
};
};
print $s;
?>
然后用ab -n 10000 -c 20 http://mycgi
测试,结果
C语言用了 37.511 秒
PHP3用了 45.393 秒
PERL用了 68.418 秒

看起是C 最快没错,不过,和PHP3的结果没有太大
的差距。
Perl最慢

以下为测试数据
==============================================
C 语言
==============================================

Document Path: /~evan/test/gcc.cgi
Document Length: 19 bytes

Concurrency Level: 20
Time taken for tests: 37.511 seconds
Complete requests: 10000
Failed requests: 0
Total transferred: 1750000 bytes
HTML transferred: 190000 bytes
Requests per second: 266.59
Transfer rate: 46.65 kb/s received

Connnection Times (ms)
min avg max
Connect: 0 30 3001
Processing: 4 40 69
Total: 4 70 3070

PHP3
==============================================
Document Path: /~evan/test/php3.php3
Document Length: 15 bytes

Concurrency Level: 20
Time taken for tests: 45.393 seconds
Complete requests: 10000
Failed requests: 0
Total transferred: 1710000 bytes
HTML transferred: 150000 bytes
Requests per second: 220.30
Transfer rate: 37.67 kb/s received

Connnection Times (ms)
min avg max
Connect: 0 34 3039
Processing: 6 53 183
Total: 6 87 3222


PERL
==============================================
Document Path: /~evan/test/perl.cgi
Document Length: 17 bytes

Concurrency Level: 20
Time taken for tests: 68.418 seconds
Complete requests: 10000
Failed requests: 0
Total transferred: 1730173 bytes
HTML transferred: 170017 bytes
Requests per second: 146.16
Transfer rate: 25.29 kb/s received

Connnection Times (ms)
min avg max
Connect: 0 22 3005
Processing: 9 112 323
Total: 9 134 3328



Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk merealisasikan penukaran bersama antara permintaan CURL dan python dalam python Bagaimana untuk merealisasikan penukaran bersama antara permintaan CURL dan python dalam python May 03, 2023 pm 12:49 PM

Kedua-dua curl dan Pythonrequests adalah alat yang berkuasa untuk menghantar permintaan HTTP. Walaupun curl ialah alat baris arahan yang membolehkan anda menghantar permintaan terus dari terminal, perpustakaan permintaan Python menyediakan cara yang lebih terprogram untuk menghantar permintaan daripada kod Python. Sintaks asas untuk menukar perintah curl kepada Pythonrequestscurl adalah seperti berikut: curl[OPTIONS]URL Apabila menukar arahan curl kepada permintaan Python, kita perlu menukar pilihan dan URL kepada kod Python. Berikut ialah contoh perintah curlPOST: curl-XPOST https://example.com/api

Cara menggunakan perpustakaan Permintaan perangkak Python Cara menggunakan perpustakaan Permintaan perangkak Python May 16, 2023 am 11:46 AM

1. Pasang perpustakaan permintaan. Oleh kerana proses pembelajaran menggunakan bahasa Python, Python perlu dipasang terlebih dahulu. Anda boleh menyemak versi Python yang telah anda pasang dengan menjalankan perintah python --version untuk memasang Python 3.X atau lebih tinggi. Selepas memasang Python, anda boleh terus memasang perpustakaan permintaan melalui arahan berikut. pipinstallrequestsPs: Anda boleh bertukar kepada sumber pip domestik, seperti Alibaba dan Douban, yang pantas Untuk menunjukkan fungsi, saya menggunakan nginx untuk mensimulasikan laman web yang mudah. Selepas memuat turun, jalankan sahaja program nginx.exe dalam direktori akar.

Cara Python menggunakan Permintaan untuk meminta halaman web Cara Python menggunakan Permintaan untuk meminta halaman web Apr 25, 2023 am 09:29 AM

Permintaan mewarisi semua ciri urllib2. Permintaan menyokong kegigihan sambungan HTTP dan pengumpulan sambungan, menyokong penggunaan kuki untuk mengekalkan sesi, menyokong muat naik fail, menyokong penentuan pengekodan kandungan respons secara automatik dan menyokong URL antarabangsa dan pengekodan automatik data POST. Kaedah pemasangan menggunakan pip untuk memasang $pipinstallrequestsGET meminta permintaan GET asas (parameter pengepala dan parameter parmas) 1. Permintaan GET paling asas boleh terus menggunakan kaedah get 'response=requests.get("http://www.baidu.com/ &quot

Kaedah dan tutorial pengaktifan manual HWID V 2.2 Kaedah dan tutorial pengaktifan manual HWID V 2.2 Oct 20, 2023 pm 07:17 PM

Ini adalah untuk pengguna yang ingin melakukan pengaktifan manual. Jika anda memerlukan bantuan dengan alat untuk anda melakukan ini, kemudian semak di sini. Kita boleh membahagikan proses pengaktifan manual kepada dua bahagian. 1- Daripada fail kumpulan siap sedia pastikan internet didayakan. Buka Windows Powershell sebagai pentadbir dan masukkan yang berikut untuk menyenaraikan arahan dalam susunan yang diberikan. Masukkan kekunci, (gantikan dengan kunci daripada senarai di atas) Gunakan arahan berikut <key>slmgr/ipk<key> Muat turun tiket universal dari sini dan ekstrak fail yang dimuat turun. Sekarang masukkan kod berikut dalam Powershell (Get-ItemProper

Cara menggunakan pos permintaan python Cara menggunakan pos permintaan python Apr 29, 2023 pm 04:52 PM

Python mensimulasikan penyemak imbas menghantar permintaan kiriman importrequests format request.postrequest.post(url,data,json,kwargs)#post request format request.get(url,params,kwargs)#Berbanding dengan permintaan get, menghantar parameter permintaan pos dibahagikan kepada parameter data forms ( x-www-form-urlencoded) json (application/json) menyokong format kamus dan format rentetan Format kamus menggunakan kaedah json.dumps() untuk menukar data kepada rentetan format json yang sah

Muat turun fail PDF menggunakan Permintaan Python dan BeautifulSoup Muat turun fail PDF menggunakan Permintaan Python dan BeautifulSoup Aug 30, 2023 pm 03:25 PM

Request dan BeautifulSoup ialah perpustakaan Python yang boleh memuat turun sebarang fail atau PDF dalam talian. Pustaka permintaan digunakan untuk menghantar permintaan HTTP dan menerima respons. Pustaka BeautifulSoup digunakan untuk menghuraikan HTML yang diterima dalam respons dan mendapatkan pautan pdf yang boleh dimuat turun. Dalam artikel ini, kita akan belajar cara memuat turun PDF menggunakan Request dan BeautifulSoup dalam Python. Pasang kebergantungan Sebelum menggunakan perpustakaan BeautifulSoup dan Request dalam Python, kita perlu memasang perpustakaan ini dalam sistem menggunakan arahan pip. Untuk memasang permintaan dan perpustakaan BeautifulSoup dan Request,

Dokumen GTA 6 memberikan gambaran keseluruhan terperinci tentang semua kebocoran Dokumen GTA 6 memberikan gambaran keseluruhan terperinci tentang semua kebocoran Sep 08, 2024 am 06:37 AM

Pada 3 September, versi 1.5 dokumen Grand Theft Auto VI yang memberikan gambaran keseluruhan terperinci tentang semua yang diketahui tentang permainan setakat ini. Versi dokumen yang dikemas kini telah diumumkan dalam treler yang diterbitkan di X (dahulunya Twitter).??

Bagaimana untuk menyelesaikan ralat 'undefined: bytes.Split' dalam golang? Bagaimana untuk menyelesaikan ralat 'undefined: bytes.Split' dalam golang? Jun 25, 2023 pm 02:02 PM

Dalam bahasa Go, pakej bait ialah pakej untuk memanipulasi jenis bait, dan ia mengandungi banyak kaedah berguna, seperti kaedah Split(). Walau bagaimanapun, apabila menggunakan kaedah Split(), anda mungkin menghadapi ralat "undefined: bytes.Split". Ralat ini biasanya disebabkan oleh versi Go yang tidak serasi atau kekurangan perpustakaan bergantung yang diperlukan. Artikel ini akan memperkenalkan beberapa kaedah untuk menyelesaikan ralat ini. Kaedah 1: Tingkatkan versi Go seperti berikut

See all articles