A. 網站都是用什麼語言編寫的程序有多少種
1.php
是當前興起備受推崇的一種WEB編程語言,開源且跨平台,在歐美比較流行,由於PHP是在伺服器端執行的,客戶端是看不到代碼的。 PHP可以完成任何CGI腳本可以完成的任務,但它的功能的發揮取決於它和各種資料庫的兼容性。php網站程序和資料庫是獨立的,網站速度涉及到web伺服器和database伺服器交換速度影響。
2.ASP.NET
面向對象的方法來創建動態web應用程序。在原來的技術中,伺服器端代碼和客戶端HTML混合、交織在一起,常常導致頁面的代碼冗長而復雜,程序的邏輯難以理解,而 ASP.NET就能很好的解決這個問題,而且能獨立於瀏覽器,現在有許多人都在學習,主要是開發的效率比較的高。但是還是基於WIN平台運行,不能跨平台。
3.JSP網站開發語言
備受企業級的公司及銀行金融機構使用,工商銀行這樣的大單位就是用JSP開發語言來做開發的。
B. NGINX+PHP好,還是NGINX+APACHE+PHP好
如果單台伺服器的話,NGINX+APACHE+PHP
純粹多此一舉,多了一次請求轉發,效率肯定低,而且現在FPM已經足夠穩定。完全沒必要。
只有多台伺服器集群的話,apache+nginx反代才有意義.NGINX+APACHE+PHP
這種架構存在的原因除了apache出現比較早外,還因為當時FPM不如mole模式穩定。
不見得。Nginx在前面實現動靜分離,靜態內容由Nginx負責,動態請求則交給後面的PHP應用伺服器Apache(libphp5.so)處理。Apache專心處理PHP,這不挺好嗎?
Nginx+PHP-FPM相對Nginx+Apache(libphp5.so)來說,PHP-FPM更靈活,在php-fpm.conf里可以配置監聽不同埠的多個pool,每個pool又可以自由配置PHP-FPM工人進程數pm.max_children,一個pool里的工人進程繁忙不會影響到另一個pool。在Nginx里可以配置應用的不同部分使用不同的pool,而且一台伺服器上可以運行多個版本的PHP-FPM,藉助Nginx的upstream功能,PHP-FPM非常容易橫向擴展。
新浪微博和網路貼吧都在使用Nginx+PHP-FPM的架構,PHP-FPM已經足夠穩定。
ab同樣並發數壓力測試ZF下RPS(請求每秒)對比: