摘要:很多同學可能都聽說過,并且知道他是可以運行在服務器上的,但是他的使用場景可能大家并不是很清楚,最近也在看學習,就做了一下小總結的優勢現在的很多的服務器端的語言有什么問題呢,現在的服務器端的語言在用戶訪問服務器時,為每個用戶鏈接創建了一個線程
很多同學可能都聽說過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機制,因此可以實現這些數據到數據庫中的寫入,而不必再為每條數據的寫入而等待一段時間;
這些都是叢書上看到總結的,還望指正,?。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/87828.html
創業團隊擼 Node 前言 大家好,我是 Scott,2016 年 9 月 25 日在杭州大搜車總部舉行的杭州 Node Party 上分享了一個話題 - 《創業公司擼 Node》 ,分享之后我以文字的形式又記錄了一遍,分享給沒有與會的朋友,也方便大家通過搜索引擎者一些技術社區平臺來看到這篇文章。 寫在前面,感謝芋頭哥和大搜車,給了我這個機會跟大家在大搜車面基,說實話,從我出道以來,這還真的是我...
摘要:年,保羅格雷厄姆在他的一篇文章中提到,他的公司決定使用一門編程語言。然而,仍未得到與其他語言同等的尊重。被評為年開發者調查中最受歡迎的框架。是中最流行的編程語言。也就是說,我認為質疑是否是一種真正的編程語言的時代已經過去。 原文:JavaScript-A First-Class Language At Last作者:Tom Goldenberg譯者:LeviDing聲明:轉載請聯系本人...
摘要:年,保羅格雷厄姆在他的一篇文章中提到,他的公司決定使用一門編程語言。然而,仍未得到與其他語言同等的尊重。被評為年開發者調查中最受歡迎的框架。是中最流行的編程語言。也就是說,我認為質疑是否是一種真正的編程語言的時代已經過去。 原文:JavaScript-A First-Class Language At Last作者:Tom Goldenberg譯者:LeviDing聲明:轉載請聯系本人...
摘要:年,保羅格雷厄姆在他的一篇文章中提到,他的公司決定使用一門編程語言。然而,仍未得到與其他語言同等的尊重。被評為年開發者調查中最受歡迎的框架。是中最流行的編程語言。也就是說,我認為質疑是否是一種真正的編程語言的時代已經過去。 原文:JavaScript-A First-Class Language At Last作者:Tom Goldenberg譯者:LeviDing聲明:轉載請聯系本人...
摘要:單線程使用單線程來運行,而不是向之類的其它服務器,每個請求將生產一個線程,這種方法避免了上下文切換和內存中的大量執行堆棧,這也是和其它服務器為解決上一個年,著名的并發連接問題而采用的方法。 showImg(https://segmentfault.com/img/remote/1460000019968794?w=1080&h=675);當我們學習一項新的事物的時候,我們首先要知道它來...
閱讀 2609·2021-11-18 10:02
閱讀 2279·2021-09-30 09:47
閱讀 1745·2021-09-27 14:01
閱讀 3109·2021-08-16 11:00
閱讀 3163·2019-08-30 11:06
閱讀 2392·2019-08-29 17:29
閱讀 1532·2019-08-29 13:19
閱讀 445·2019-08-26 13:54