1、為什麼用node做中間層不用php
node 非同步載入介面,node執行效率高
2、如何優化網站高並發訪問
解決高並發訪問,或者說改善,提高一點思路:
1.使用Squid或者Varnish做緩存代理,將經常訪問的圖片等靜態內容緩存起來,提高訪問速度;
2.使用CDN內容分發網路,減少主伺服器的壓力(附CDN相關內容:CDN通過在網路各處放置節點伺服器所構成的在現有的互聯網基礎之上的一層智能虛擬網路,CDN系統能夠實時地根據網路流量和各節點的連接、負載狀況以及到用戶的距離和響應時間等綜合信息將用戶的請求重新導向離用戶最近);
3.使用LVS伺服器負載均衡,LVS伺服器結合Keepalived做高可用;
4.LVS下面還可跟Nginx做負載均衡,再次分擔壓力,比如淘寶使用的再Nginx基礎上改進的Tnginx。
5.DNS伺服器上也可下功夫,比如做高級視圖等等,這樣可以解決不同網段訪問Web伺服器的速度問題;
6.最大的瓶頸還是在IO上,比如存儲IO,比如資料庫的IO。存儲一方面需要保證數據不丟失,另一方面需要保證性能,比如做RAID、LVM;存儲還需要考慮使用一套存儲之間的數據同步(GFS、OCFS可以實現),數據的備份等等;資料庫的話可以考慮使用查詢緩存等等,這塊我也正在學習中,展開有很多東西;
7.程序的話也可以優化,比如如果是Java Web程序,並且使用了Hibernate框架,就可以考慮使用查詢緩存了;
8.硬體層:比如提高帶寬,購買高轉數性能好的硬碟等等;
9.緩存機制,緩存機制的種類很多,有頁面緩存(Squid),數據緩存(memcache),查詢緩存,編譯緩存(PHP是腳本語言在編譯時有編譯緩存).
10.資料庫IO是最大問題,所以現在又了NOSQL的解決方案,首先將數據寫入內存中,然後定時寫入硬碟
11.程序優化,增加執行效率,用更好的演算法等等。(採用分層,因為每個程序擅長處不一樣,比如JAVA適合做中間層,C++做底層,現在又流行一種node.js做中間層,可以加強執行效率,多線程,以及一些安全問題)
12.隊列系統,有些數據不要一來就馬上處理,做個隊列(先進先出),延遲處理。
3、Node.js真的有高並發優勢嗎
是的,適合I/O密集型應用,其特點為:
1. 它是一個Javascript運行環境
2. 依賴於Chrome V8引擎進行代碼解釋
3. 事件驅動
4. 非阻塞I/O
5. 輕量、可伸縮,適於實時數據交互應用
6. 單進程,單線程
最大優勢:可以處理數萬條連接,本身沒有太多的邏輯,只需要請求API,組織數據進行返回即可
缺點也是明顯的:
1. 不適合CPU密集型應用;
2. 只支持單核CPU,不能充分利用CPU
3. 可靠性低,一旦代碼某個環節崩潰,整個系統都崩潰
4、如何使用node做中間層
介紹UCloud內部如何利用Node.js 構建分布式集群,並分享了實踐過程中走過的坑,希望對正在使用Node.js或是即將使用Node.js的朋友有一些幫助。UCloud內部大規模使用了Node.js 技術,利用Node.js研發了一套RPC框架,主要涉及API、Web Console、服務中間層、運營報表、內部運營工具和內部系統等,解決以下四個問題:1. 服務調動發現程序間解耦;2. 自動快速擴容服務能力;3. 腳本語言提高研發效率;4. 配置集中管理變更應用自動載入。
5、用nodejs做中間層具體怎麼實現
python提供http介面給nodejs用。
速度會慢一丟丟,但是職責會更清晰。
這樣做的好處是
1.一個Server端(Python)可以服務於多個Client端(Node|iOS|Android)。2.某一端可以隨意換實現代碼,只要保證http介面一樣,比如後端某天想換java,寫好介面測試直接換,都不用通知前端童鞋。
可以這樣架構
Python負責數據存取。Node負責頁面渲染,用戶許可權驗證。
6、在三層編程模式中,想做中間層的工作,求助高人問題!!
中間層其實基本上什麼都不要做,,就是調用數據訪問層的方法,實現表示層與數據訪問層的分離,
7、用java做後台用nodejs做前台是什麼意思
前端:負責所有和用戶有交互的產品,包括 WEB以及手機客戶端
後端:負責各種業務 API 的開發,以及伺服器端其他系統的開發
架構:負責設計實現關鍵系統的架構,伺服器維護以及開發過程管理,團隊建設
他們的前端,指的是web服務+頁面渲染那層,用nodejs, 而業務邏輯用的是java.
nodejs處理用戶請求,然後通過api(rest/webservice)等方式調用java的業務邏輯.
8、node 在高並發下的性能優化,各位有哪些好的建議嗎
有高並發優勢。
Node.js優點:
1、採用事件驅動、非同步編程,為網路服務而設計。其實Javascript的匿名函數和閉包特性非常適合事件驅動、非同步編程。
2、Node.js非阻塞模式的IO處理給Node.js帶來在相對低系統資源耗用下的高性能與出眾的負載能力,非常適合用作依賴其它IO資源的中間層服務。
3、Node.js輕量高效,可以認為是數據密集型分布式部署環境下的實時應用系統的完美解決方案。
4. 有高並發優勢。
9、如何利用node解決seo問題
<
10、想用nodejs做中間層用哪個框架比較好
webexpressweb開發框架ejs頁面模板。可以方便的把html改寫成ejs。eco頁面模板,類似ejs。與ejs的不同點是:邏輯部分用CoffeeScript而不是javascriptjade頁面模板