찾다
웹 프론트엔드프런트엔드 Q&Anodejs는 언제 태어났나요?

nodejs는 언제 태어났나요?

Nov 12, 2021 am 11:49 AM
nodejs

nodejs는 2009년 5월에 탄생했습니다. 마스터 Ryan Dahl이 개발한 Chrome V8 엔진을 기반으로 하는 JavaScript 실행 환경입니다. 이벤트 중심의 비차단 I/O 모델을 사용하여 JavaScript가 서버에서 실행될 수 있도록 합니다. 측면.

nodejs는 언제 태어났나요?

이 튜토리얼의 운영 환경: windows7 시스템, nodejs 버전 12.19.0, DELL G3 컴퓨터.

nodejs는 2009년 5월에 탄생했습니다. 마스터 Ryan Dahl이 개발한 Chrome V8 엔진을 기반으로 한 JavaScript 실행 환경입니다.

Ryan의 임무는 C++로 서버를 작성하는 것입니다. 나중에 그는 고성능 서버가 "이벤트 중심, 비차단 I/O" 모델을 충족해야 한다는 경험을 요약했습니다. C++는 개발이 더 까다롭기 때문에 Ryan은 빠른 개발을 위해 더 높은 수준의 언어를 찾고 싶었습니다. Nodejs의 탄생에는 두 가지 점이 기여했다고 할 수 있습니다.

노드의 기원과 배경

Ryan Dahl의 경험은 다소 이상합니다. 그는 2004년에도 대학에서 수학과 박사 과정을 밟고 있었습니다. 그는 뉴욕의 로체스터에서 몇 가지 연구를 수행하면서 프랙탈, 분류 및 p-adic 분석을 수행했는데 이는 오픈 소스 및 프로그래밍과 관련이 없습니다

2006년에 그는 "세상은 너무 넓습니다"라는 생각을 갖게 되었습니다. 보고 싶다'라고 자퇴를 결심하고, 일부 합격을 하기 시작했다. 그는 클라우드 리서치를 이용해 업무를 진행했고, 루비온레일즈를 사용해 스노우보드 회사의 웹사이트를 개발했다. 이것이 시작이었다. (다음 이벤트를 직접 개발할 수 있습니다...)

2008년까지 Chrome이 출시되었으며 동시에 V8 JavaScript 인터프리터도 출시되었습니다. 이는 훌륭하고 강력한 운영 환경입니다. V8이 출시된 후 Ryan Dahl은 매력적이고 깔끔해 보였고 갑자기 Ryan Dahl은 다음과 같은 생각을 했습니다. JavaScript는 단일 스레드이며 비차단으로 구현되었지만 웹 브라우저에서는 사람들이 약간 아이러니합니다. 비차단 요청은 AJAX 요청 및 이벤트를 사용하여 구현되었습니다.

Ryan Dahl은 일부 HTTP 서버 이벤트와 결합된 비동기 IO와 JavaScript가 결합된 것이 매우 멋진 것이 될 것이라고 믿으며 앞으로 4년 동안 이 작업을 해왔습니다.

2009년 2월, 그는 새로운 아이디어를 바탕으로 프로젝트의 첫 번째 코드 라인을 제출했습니다. 프로젝트 이름은 결국 "node"로 명명되었습니다.

Ryan Dahl은 베를린에서 JSConf EU를 개최하고 Node에 대해 연설했습니다. .js가 컨퍼런스에서 공개되었고 Node.js는 점차 전 세계적으로 인기를 끌게 되었습니다.

그래서 Ryan Dahl은 2010년 Joyent(실리콘 밸리의 스타트업 회사)에 합류하여 Node.js 프로젝트 개발을 전담으로 담당했습니다. 현재 Node.js 프로젝트는 개인 프로젝트에서 회사 조직의 프로젝트로 인생의 두 번째 단계에 들어섰습니다.

노드에 대한 그의 아이디어는 모든 것을 비차단 방식으로 수행하는 것입니다. 이를 통해 프로그래밍 프로세스에서 발생하는 많은 문제를 해결할 수 있습니다. 예를 들어 스레드 처리를 끄고 프로세스 추상화 및 직렬화된 통신만 사용할 필요가 있습니다. . 작업을 완료하세요. 그리고 그 과정에서 완전 비동기 방식은 수많은 요청을 처리할 수 있어 이 방식이 매우 좋다고 확신했습니다. (Ryan Dahl이 Go를 만난 지 오래지 않아 그는 Go에 올바른 Green 스레드가 있고 사용하기 쉽기 때문에 원래 아이디어를 변경했습니다. Go와 운영 체제 사이의 인터페이스는 모두 녹색 스레드이고 비차단 I/O이기 때문에 추상화를 사용합니다. 그러나 사용자에게 제공되는 인터페이스는 매우 사용자 친화적입니다. 응답이나 오류를 처리하려면 응답을 기다리고 오류가 발생하면 무엇을 해야 할지 아는 것이 분명합니다. 그러나 Node에서는 다른 함수 호출로 이동해야 하기 때문에 이것이 더 어렵습니다. 다중 콜백 작업, 비록 노드 커뮤니티의 개발이 이 처리 방법에 대한 좋은 솔루션을 만들었지만 본질은 Go와 다릅니다)

[권장 학습: "nodejs tutorial"]

위 내용은 nodejs는 언제 태어났나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
React의 한계는 무엇입니까?React의 한계는 무엇입니까?May 02, 2025 am 12:26 AM

반응 말 : 1) asteeplearningcurveduetoitsvastecosystem, 2) Seochallengswithclient-siderendering, 3) PlatiperFormanceIssUseInlargeApplications, 4) ComplexStateManagementAsAppSgrow, 및 5) theneedTokeEpupWithitsHouou

React의 학습 곡선 : 새로운 개발자를위한 도전React의 학습 곡선 : 새로운 개발자를위한 도전May 02, 2025 am 12:24 AM

ReactisChallengingforbeginnersdueToitssteePlearningCurveanDParadigMshiftTocomponent 기반 Architection.1) 시작된 문서화 forasolidFoundation.2) startWithOficialDocumentationForAsolIdfoundation.2) 이해를 이해하는 방법

React에서 동적 목록을위한 안정적이고 고유 한 키 생성React에서 동적 목록을위한 안정적이고 고유 한 키 생성May 02, 2025 am 12:22 AM

thecorechallengeenderatingStableanduniquekysfordynamiclistsinconsengingconsententifiersacrossre-rendersforefficialdomupdates

JavaScript 피로 : React 및 그 도구로 최신 상태를 유지합니다JavaScript 피로 : React 및 그 도구로 최신 상태를 유지합니다May 02, 2025 am 12:19 AM

JavaScriptFatigueInreactismanageablewithstrestriveStriveStriveStiMelearningandcuratedInformationSources.1) 1))

usestate () 후크를 사용하는 테스트 구성 요소usestate () 후크를 사용하는 테스트 구성 요소May 02, 2025 am 12:13 AM

TOTESTREACTCOMPONENTSUSINSUSISTATEHOOK, useJestAndReactTestingLibraryTosimulationInteractionsandStateChangeSintheUI.1) renderTheComponentAndCheckInitialState.2) SimulateUserActionSlikeClickSorformSubMissions.3) verifyTateRecerFectsin

React의 키 : 성능 최적화 기술에 대한 깊은 다이빙React의 키 : 성능 최적화 기술에 대한 깊은 다이빙May 01, 2025 am 12:25 AM

keysinReactareCrucialforopiTizingPerformanceByIningIneficiveliceListEpdates.1) uskeyStoIndifyAndTrackListElements.2) revingArrayIndiceSkeyStopReverFormanceSues.3) 선택 가능한 식당 LikeItesteM.idtomaintaintAteAndimProvePerform

React의 열쇠는 무엇입니까?React의 열쇠는 무엇입니까?May 01, 2025 am 12:25 AM

RenderingListStoimproverCiliationeficiency를 사용하면 RECTKEYSAREUNIQUEINDIFIERSEDS (1) ISHELPREACTTRACKCHANGENLISTEMS, 2) 사용 ASSABLEANDUNICEIDERIDERSISTEMIDSISRECEMENDEND, 3) RepoySingArrayIndicesAskeyStopReventIsseswithReAdering 및 4) ENS

React에서 고유 키의 중요성 : 일반적인 함정 방지React에서 고유 키의 중요성 : 일반적인 함정 방지May 01, 2025 am 12:19 AM

고유 한 KeysAreCrucialInreactforoptoropiTizing and ComponentStateIntegrity

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

SecList

SecList

SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구