php如何進行大型web應用,淺談php的web開發技術

本文目錄一覽:

如何使用PHP開發高效的WEB系統

PHP是一個很優秀的工具,它可以簡單,也可以複雜。不一樣的項目,應該用不一樣的PHP。小項目 – 簡單而直接的PHP一般對於一個功能頁面在20以下的網站,我們可以用一個很簡單的框架結構來寫。在這個規模上,我建議是使用比較直接的面向過程編碼方法,原因很簡單,沒有必要把class文件弄的N 多,結果controller裡邊就一個new就完了。當然,需求頻繁變化的項目除外。在這個級別上,php優點表現的很明顯:快速開發,一目了然。缺點同時也被隱藏得很好。中型項目 – 結構優美的OO化的PHP對於一個中型項目,我建議使用一個良好設計的框架來做,這個框架可以是基於MVC模型,封裝了眾多底層操作的,當然,一定要有一個好的最好是透明的cache機制,這樣,我們為了適應變化而加入的OO機制可以運行得更快更好。在這個級別上。php的缺點開始凸現,像對OO支持的不完整(這個PHP5有很大改進),只能單線程模式。另外一些外圍工具開始出現缺乏支持,像PHP沒有好的重構工具,沒有好的集成到IDE中的單元測試工具。優點當然還是原來的快速開發,廣泛的可用的開源資源。大型項目 – 擴展、優化後的PHP這裡的大型項目,簡單的指分佈式項目,就是說,你的程序需要被部署在N台服務器上了。在這個層級上,PHP比起j2ee的確缺乏很多支持。我曾和shadow在735上詳細討論過PHP要在大型系統上應用需要解決的一些問題,當然這些問題不光是PHP這個語言的問題,也包括了周邊開發的問題:1 PHP的頁面代碼共享,PHP的源代碼被載入內存一次以後,就在其中保留 – 這個用APC和Zend的優化器可以搞定。2 PHP頁面之間的數據對象共享,a.php和b.php之間可以共享一個數據對象,比如數組,這個現在可以用序列化來作,但是會有文件io,這塊可以用共享內存或者memcached來處理。3 PHP的數據庫連接池,因為在多前端的情況下,PHP控制不住對數據庫的連接,所以需要在數據庫前邊去作一個連接池,類似於sqlrelay的東西。另外數據緩存也是很重要的,大壓力開發有一個tip,就是能不動數據庫就不要動數據庫。4 PHP的前端cache系統。一個透明的可控制的cache機制,確保網站的頁面以最少次數查詢數據庫。這個有很多實現,但是沒有找到特別好的。5 一個PHP應用,成功的解決調這幾個問題以後,應付稍微大一點的壓力是沒有什麼問題的。在這個級別上,重要的是,把PHP java C++ python之類融合起來,使其成為一個高效系統。我們可以用memcached來做分佈式內存管理,可以用Lucene 來作全文檢索,用ejb 容器來放一些業務邏輯組件,PHP則作為前端和系統的膠水,快速而靈活的把這些粘合起來。

開發大型Web應用是用php+mysql+extjs 還是 nodejs+mongodb+angularjs好

其實就是選擇php+mysql還是nodejs+mongodb的問題,前端的js框架用哪個都行,看開發人員喜好了。如果你的應用對阻塞要求很高(比如有拍賣、秒殺之類的應用),nodejs是更好的選擇。

但是,相對來說nodeJS的開發難度大於php,所以有一種折中的選擇就是雙web服務,nodejs解決阻塞問題,php進行實際的數據管理。即Angular向NodeJS發送請求,NodeJS向PHP發送請求,PHP和MySQL交互。

PHP適合開發大型網站嗎

PHP應用最廣的領域就是web開發,也就是說,PHP是專為網站開發而設計的,所以大型網站是絕對可以用PHP進行開發的。新浪微博、淘寶等都廣泛採用了PHP技術。

php如何做web遊戲

php是可以做socket的,不算高級應用 算是一個分支,

所謂web遊戲我已知的有兩種,一種是通過瀏覽器引入C或者AS的客戶端,進行socket交互

還有一種是你玩完了,最後發送一個請求去結算。

推薦樓主去看下HTML5遊戲怎麼進行通訊的,還有php做socket的實例

大型Web應用需要哪些技術? – PHP進階討論

原帖由 於 2008-8-7 09:28 發表 [i][/url]業務系統接觸過不少,應該對這方面還是比較熟悉,現在主要還是需要從技術方面考慮 [/b]這說明你的業務都很簡單,並且應用規模不大。即便如此,簡單的業務當數據量急劇增加的時候也是考驗你技術的時候。web集群,數據庫集群,cache集群,這些是大的方面一定要設計好,要求高效,盡量少的冗餘實現儘可能的安全性。其次是單機性能優化,程序設計,算法,針對某個系統的代碼級別優化。如果每個系統都是curd之類的操作,這等於你沒有了解此類業務的真諦,你還是從技術角度來看問題。

請簡述PHP+MySQL的Web應用程序的工作流程?

PHP開發Web應用時所有的請求需要指向具體的入口文件。WebServer是一個內容分發者,他接受用戶的請求後,如果是請求的是css、js等靜態文件,WebServer會找到這個文件,然後發送給瀏覽器;如果請求的是/index.php,根據配置文件,WebServer知道這個不是靜態文件,需要去找PHP解析器來處理,那麼他會把這個請求簡單處理後交給PHP解析器。

php解析器對Mysql進行數據請求,得到數據之後由php輸出到web前端。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/245458.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 13:09
下一篇 2024-12-12 13:09

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • Python Web開發第三方庫

    本文將介紹Python Web開發中的第三方庫,包括但不限於Flask、Django、Bottle等,並討論它們的優缺點和應用場景。 一、Flask Flask是一款輕量級的Web…

    編程 2025-04-29
  • Python熱重載技術

    Python熱重載技術是現代編程的關鍵功能之一。它可以幫助我們在程序運行的過程中,更新代碼而無需重新啟動程序。本文將會全方位地介紹Python熱重載的實現方法和應用場景。 一、實現…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • Web程序和桌面程序的區別

    Web程序和桌面程序都是進行軟件開發的方式,但是它們之間存在很大的區別。本文將從多角度進行闡述。 一、運行方式 Web程序運行於互聯網上,用戶可以通過使用瀏覽器來訪問它。而桌面程序…

    編程 2025-04-29
  • Python包絡平滑技術解析

    本文將從以下幾個方面對Python包絡平滑技術進行詳細的闡述,包括: 什麼是包絡平滑技術? Python中使用包絡平滑技術的方法有哪些? 包絡平滑技術在具體應用中的實際效果 一、包…

    編程 2025-04-29
  • parent.$.dialog是什麼技術的語法

    parent.$.dialog是一種基於jQuery插件的彈出式對話框技術,它提供了一個方便快捷的方式來創建各種類型和樣式的彈出式對話框。它是對於在網站開發中常見的彈窗、提示框等交…

    編程 2025-04-28
  • 微信小程序重構H5技術方案設計 Github

    本文旨在探討如何在微信小程序中重構H5技術方案,以及如何結合Github進行代碼存儲和版本管理。我們將從以下幾個方面進行討論: 一、小程序與H5技術對比 微信小程序與H5技術都可以…

    編程 2025-04-28
  • 使用PHP foreach遍歷有相同屬性的值

    本篇文章將介紹如何使用PHP foreach遍歷具有相同屬性的值,並給出相應的代碼示例。 一、基礎概念 在講解如何使用PHP foreach遍歷有相同屬性的值之前,我們需要先了解幾…

    編程 2025-04-28
  • Python操作Web頁面

    本文將從多個方面詳細介紹Python操作Web頁面的技巧、方法和注意事項。 一、安裝必要的庫 在Python中操作Web頁面,需要用到一些第三方庫。 pip install req…

    編程 2025-04-28

發表回復

登錄後才能評論