Ⅰ Node.js適合替換java做大型的電子商務購票網站嗎
可以,買東西的Shopetti、租車的Uber、付款的paypal、道瓊斯的網站、eBay都有用node.js。
node本身雖然出來沒幾年,但是node.js自身的開發並不是占很大部分,node最重要的部分是google的v8,v8是Lars Bak領導開發的,在開發v8之前他開發了smalltalk和Sun的java的hotspot jvm。
Ⅱ nodeJs 適合用來開發商城
當然,主要前後端要分離,別用傳統的一個地址整個頁面全部刷新,這樣沒法反而低效率了。
nodejs只作為rest api伺服器。
Ⅲ nodejs的優勢
NodeJs的優勢:
現在的很多的伺服器端的語言(PHP,JAVA,ASP.net),有什麼問題呢,現在的伺服器端的語言在用戶訪問伺服器時,為每個用戶鏈接創建了一個線程,但每個線程大約要耗費2M的內存,如果一個8G內存的伺服器,也就能鏈接4000個左右的用戶,如果用戶的鏈接數較大,就必須增加伺服器的數量,而且現在用戶的鏈接方式有很多(如app,網頁同時訪問),這就又涉及到伺服器共享的問題,所以伺服器怎麼支持最大的同時鏈接用戶量就成了一個問題;
NodeJS修改了客戶端到伺服器端的鏈接方法,解決了這個問題,他不在為每個客戶端創建一個新的線程,而是為每個客戶端鏈接出發一個NodeJs內部進行處理的事件,所以NodeJS具備同時處理多達幾萬個用戶的客戶端鏈接的能力;
NodeJS適合開發的應用程序:
當應用程序需要處理大量並發的輸入/輸出,而在向客戶端發出響應之前,應用程序內部並不需要進行非常復雜的處理的時候,我們應該考慮使用NodeJs來進行應用程序的開發,例如:
1、聊天伺服器:如果聊天的人很多,用戶的與伺服器之間的並發鏈接量很大,但是伺服器端的數據處理並不復雜;
2、綜合類服務網站和電子商務網站的伺服器:在這類網站中的伺服器端,往往可能每秒存內可以接受多達上千條的數據並且需要將這些數據寫入資料庫中,NodeJs可以通過其隊列機制將這些數據迅速寫入緩存區中,然後再通過每一個單獨的處理從緩存區中取出這些數據並將其寫入資料庫中,如果是其他的伺服器(如Apache伺服器或Tomcat伺服器)的話,由於這些伺服器採用的是阻塞型I/O機制,因此每條數據寫入到資料庫中都要等待一段時間(等上一條寫完,才能寫下一條),但是NodeJs使用的是非阻塞的I/O機制,因此可以實現這些數據到資料庫中的寫入,而不必再為每條數據的寫入而等待一段時間;
總結:
一個規模稍微大點的系統都不是一種開發語言可以搞定的,往往是幾種混雜一起,比如c、c++做伺服器端開發,java做業務邏輯,php等做前端展示,此外還需要消息中間件等等。
nodejs可以很快地在伺服器端做原型(原來只有c系和java等能做的事情,性能還很高),而且代碼量相對會少很多;另一點是它的語法優勢,js閉包等。但它不太適合做cpu密集型處理的工作,只能繞著彎去解決,據說這次QCon會有人分享這方面的研究成果,可以關注下。
每種語言都有它適合的領域,沒必要強求一門語言可以解決所有事情,擁有其它語言的特性,只有不斷的tradeoff把系統做出來才是目標。這些都是叢書上看到總結的,還望指正
Ⅳ nodejs的優勢和劣勢是什麼
nodejs優勢在於原型開發快,學習門檻低,簡單業務運行效率高於java等後台腳本語言的vm。
劣勢同樣明顯,javascript引擎基於事件的函數回調模型既是優勢又是劣勢:導致復雜邏輯失控,不能用於生產環境。此架構並非新興事物,早年的windows 3的消息模型類似:所謂的協同式多任務(不展開)。最終不得不讓步於搶佔多任務。導致入門易,優化難,難調試,大型業務框架不易成型
Ⅳ nodejs有哪些優點和缺點
一、說的最多的問題:生態。fibjs 作為新興的開發框架,生態必定會是原始的。並且因為顛覆了 nodejs 的範式,所以也不太能直接借用 npm 的生態。雖然很多 npm 組件其實是可以直接使用的,但是更多人需要的 web/db/io 相關組件一概不可用。沒有英文文檔,在把 fibjs 推向國外社區上乏力,也進一步限制了生態的發展。
二、fiber 相比 callback 而言的唯一缺點是堆棧內存佔用。golang 採取增長堆棧的方式解決了這個問題。因為涉及到 v8 的實現,fibjs 目前沒有好的解決方案。針對這個問題,fibjs 實際上並不是完全的 fiber,等待時間較長的模塊,fibjs 仍然採取的是 callback 的設計。比如 web server 的處理 handler。這樣一來,fiber 的數量便不會因為連接的暴漲而增加太多。一個網站同時 1萬個連接,每秒請求可能只有 500,每個請求 100ms,同時處理的請求也才 50 個而已,而 fibjs 發起萬級 fiber 毫無壓力。這樣的數量級根本沒有到需要考慮內存的程度。
三、fibjs 仍比較年輕,沒有經過更多應用的檢驗,很多組件甚至在孢子社區內部也沒有實用過。以 ssl 為例,最近公司內部在應用的時候便發生了連接一些網站證書驗證問題。即便使用過的組件,也會存在設計不合理的問題。這些都是需要社區的支持,一起驗證、建議和改進的。
Ⅵ 請教nodejs 有哪些開源的優秀商城
PHP 和 Java 之所以有那麼多人用來開發商城,是因為成熟。也僅僅是只是因為成熟而已。
Node 現在開發後端應用的問題我覺得是這些:
1. 標准庫還是停留在前端需求水平,無法滿足後端需求,例如 setTimeout、所有 Collection 類型
2. 第三方庫不成熟 / 不穩定,大部分都是玩具性質的
3. 經驗豐富的開發人員少,很少有純後端主動轉 Node 的,基本都是前端兼職
事實上,現在用 Koa 配合 Mongoose 寫後端程序,無需 IDE 加持,便捷程度是現在大部分後端開發者完全想像不到。
但是,假如我是一個商城開發項目的負責人,我是不會選擇 Node 的,因為商城不可能只有我一個人開發。
Ⅶ 各位大哥能借一個csdn賬號嗎,需要下載一個基於nodejs+mongodb/mysql完成一個電子商務系統
你還不如自己注冊一個賬號快點,不會有人出借賬號的,畢竟下載積分都是要錢充值,攢的不容易。
Ⅷ NodeJs的優勢和適合開發的程序
很多同學可能都聽說過nodejs,並且知道他是可以運行在伺服器上的javascript,但是他的使用場景可能大家並不是很清楚,最近也在看學習nodejs,就做了一下小總結;
NodeJs的優勢:
現在的很多的伺服器端的語言(PHP,JAVA,ASP.net),有什麼問題呢,現在的伺服器端的語言在用戶訪問伺服器時,為每個用戶鏈接創建了一個線程,但每個線程大約要耗費2M的內存,如果一個8G內存的伺服器,也就能鏈接4000個左右的用戶,如果用戶的鏈接數較大,就必須增加伺服器的數量,而且現在用戶的鏈接方式有很多(如app,網頁同時訪問),這就又涉及到伺服器共享的問題,所以伺服器怎麼支持最大的同時鏈接用戶量就成了一個問題;
NodeJS修改了客戶端到伺服器端的鏈接方法,解決了這個問題,他不在為每個客戶端創建一個新的線程,而是為每個客戶端鏈接出發一個NodeJs內部進行處理的事件,所以NodeJS具備同時處理多達幾萬個用戶的客戶端鏈接的能力;
NodeJS適合開發的應用程序:
當應用程序需要處理大量並發的輸入/輸出,而在向客戶端發出響應之前,應用程序內部並不需要進行非常復雜的處理的時候,我們應該考慮使用NodeJs來進行應用程序的開發,例如:
1、聊天伺服器:如果聊天的人很多,用戶的與伺服器之間的並發鏈接量很大,但是伺服器端的數據處理並不復雜;
2、綜合類服務網站和電子商務網站的伺服器:在這類網站中的伺服器端,往往可能每秒存內可以接受多達上千條的數據並且需要將這些數據寫入資料庫中,NodeJs可以通過其隊列機制將這些數據迅速寫入緩存區中,然後再通過每一個單獨的處理從緩存區中取出這些數據並將其寫入資料庫中,如果是其他的伺服器(如Apache伺服器或Tomcat伺服器)的話,由於這些伺服器採用的是阻塞型I/O機制,因此每條數據寫入到資料庫中都要等待一段時間(等上一條寫完,才能寫下一條),但是NodeJs使用的是非阻塞的I/O機制,因此可以實現這些數據到資料庫中的寫入,而不必再為每條數據的寫入而等待一段時間;
總結:
一個規模稍微大點的系統都不是一種開發語言可以搞定的,往往是幾種混雜一起,比如c、c++做伺服器端開發,java做業務邏輯,php等做前端展示,此外還需要消息中間件等等。
nodejs可以很快地在伺服器端做原型(原來只有c系和java等能做的事情,性能還很高),而且代碼量相對會少很多;另一點是它的語法優勢,js閉包等。但它不太適合做cpu密集型處理的工作,只能繞著彎去解決,據說這次QCon會有人分享這方面的研究成果,可以關注下。
每種語言都有它適合的領域,沒必要強求一門語言可以解決所有事情,擁有其它語言的特性,只有不斷的tradeoff把系統做出來才是目標。
這些都是叢書上看到總結的,還望指正
Ⅸ nodejs做商城會不會炸
做商城一般都會牽扯到並發量的問題,特別是搞活動啥的搶購之類的,和用什麼語言關系不大,而且nodejs會比一般的語言,比如java之類的要好很多,主要是要看你怎麼做負載均衡,包括應用的負載,資料庫的負載等,主要是要看有幾台伺服器等這些因素
Ⅹ 想用nodejs 做電商, 可行嗎
適不適合,看用的人,無關工具
1:電商平台肯定要考慮以後幾萬幾十萬人用吧,雖然可能項目失敗了都沒到5000。
2:想成本低速度快,找個開源php java的改改。
3:想從頭做、迅速出demo去搞天使投資,nodejs走起。
4:有預算,下周就要用,現在很多電商的saas平台,規模小的話,一年幾k,隨時租用,自營和多商戶都有。
5:有長期規劃,有資金支持,還是參照大型電商平台的業務,用java開搞吧,以後上各種框架、中間件,技術體系建設,都不是問題了,畢竟那麼多電商已經躺出路子了。