Node.js의 인기가 높아짐에 따라 소규모 프로젝트를 수행하는 사람들이 여러 명있는 것을 보았습니다.
또한 Node.js가 무엇을 할 수 있는지에 대한 아이디어를 얻기 위해 찬반 양론 목록을 살펴 보았지만 여전히 PHP, Perl 또는 Ruby와 같은 다른 성숙한 서버 측 기술과 어떻게 다른지 명확하지 않습니다. 울타리.
구체적으로 Node.js를 현재 대안과 차별화하는 이유는 무엇입니까?
Node.js의 인기가 높아짐에 따라 소규모 프로젝트를 수행하는 사람들이 여러 명있는 것을 보았습니다.
또한 Node.js가 무엇을 할 수 있는지에 대한 아이디어를 얻기 위해 찬반 양론 목록을 살펴 보았지만 여전히 PHP, Perl 또는 Ruby와 같은 다른 성숙한 서버 측 기술과 어떻게 다른지 명확하지 않습니다. 울타리.
구체적으로 Node.js를 현재 대안과 차별화하는 이유는 무엇입니까?
답변:
Node.js를 기존 서버 측 프레임 워크, 비동기 이벤트 및 프로그래밍 언어로 JavaScript 를 사용하는 것과 다른 두 가지 중요한 사항이 있습니다.
기존 서버 측 프레임 워크의 대부분은 동기식 아키텍처를 사용하지만 Node.js는 비동기식 아키텍처를 사용하며 JavaScript는 잘 처리 할 수 있습니다. 이는 서버 가 이벤트에 반응하고 이벤트 (메시지)를 데이터베이스 등으로 보냅니다. 이 프로그래밍 스타일은 동기식 스타일과 매우 다르며 다른 언어에서는 사용하기 어려울 수 있습니다. Node.js는 비동기 IO를 사용하는 비동기 스타일을 사용하며 확장 성이 뛰어납니다.
이벤트 중심 아키텍처 참조
JavaScript는 웹 응용 프로그램이 클라이언트에서 사용하는 프로그래밍 언어입니다. 서버 측에서 동일한 언어를 사용한다는 것은 개발자가 자신의 JavaScript 지식을 클라이언트와 서버 모두에 적용하고 필요에 따라 동일한 기능을 사용할 수 있음을 의미합니다.
Ryan Dahl의 Node.js 소개 프레젠테이션 에서 Node.js 이벤트 중심 아키텍처에 대해 자세히 설명합니다.
async
것들 과 함께 롤백 할 때 변경 될 수 있습니다. 문제는 다른 언어로 확장 가능한 비동기 코드를 작성할 수 없다는 것이 아니라 , 언어 수준이 제대로 지원되지 않으면 (정확하게) 수행하기가 더 어렵다는 것입니다.
이벤트 중심 이기 때문에 차이점이 있습니다. 따라서 서버의 확장 성이 향상됩니다.
간단히 말해서;
실 모형
이벤트 모델
Session_Started
또는 Context_Authenticated
또는 Page_Load
? 와 같은 처리기를 볼 수 있습니다 .
나는 그것이 인기가 JavaScript를 사용했기 때문이라는 인상을 받았습니다. 많은 웹 개발자가 JavaScript를 알고 있기 때문에 이제는 동일한 언어를 사용하여 서버 측 코드를 개발할 수있는 판매 시점입니다. 이것은 내가 생각할 수있는 몇 가지 장점이 있습니다.