Nginx가 무엇이고 이 서버가 어떻게 작동하는지 알기

광고하는

Nginx가 무엇인지 알고 싶다면 이 짧고 빠른 기사를 통해 해당 주제에 대한 의심이 확실히 해소될 것입니다. 그래서 Nginx는 특히 HTTP 브라우징을 위해 출시된 인터넷 서버 전용 오픈 소스 소프트웨어입니다.

요즘에는 HTTP 로드 밸런서, 리버스 프록시 및 POP 3, IMAP 및 SMTP 프로토콜용 이메일 프록시로도 작동합니다.

같은 것이 2004년 10월에 출시되었으며 이 소프트웨어의 제작자는 Igor Sysoev였습니다. 그는 C10K로 알려진 문제를 해결하기 위해 2002년에 프로젝트 생성을 시작했습니다. 귀하의 가장 큰 주요 과제는 10,000개의 동시 연결을 관리하는 것이었습니다(동시에).

nginx o que e
Nginx(구글 이미지)

현재 더 많은 연결이 있고 서버가 이를 원활하게 관리한다는 것을 알고 있습니다. 그리고 바로 이러한 단순한 이유로 인해 사용자에게 뛰어난 비동기 아키텍처를 제공하여 오늘날 가장 신뢰할 수 있는 서버 유형 중 하나가 되었습니다. 규모, 성능 및 속도 측면에서 모두.

Nginx는 여러 초고속 연결을 쉽게 지원할 수 있기 때문에 Netflix, Google, Adobe, WordPress 등과 같이 트래픽이 많은 대부분의 웹사이트에서 이미 Nginx를 사용하고 있습니다.

어떻게 작동합니까?

이제 Nginx가 무엇인지 알았으니 어떻게 작동하는지 언급하지 않을 수 없지만 해당 주제에 들어가기 전에 먼저 인터넷 서버가 실제로 어떻게 작동하는지 알아야 합니다.

서버는 누군가가 웹을 검색할 때마다, 소셜 네트워크에서든 검색 엔진에서 조사를 할 때든, 그가 원하는 것을 찾고 링크를 클릭하기로 결정할 때마다 이와 같이 작동합니다. 그는 결국 부탁을 한다.

따라서 인터넷에서 페이지를 로드하도록 요청할 때 브라우저는 웹사이트 서버에 접속합니다. 그런 다음 서버는 요청된 파일을 검색하고 단순히 브라우저에 전달합니다.

모르는 경우 기존 웹 서버는 각 요청에 대해 개별 스레드를 생성하지만 Nginx는 그런 식으로 작동하지 않는다는 것을 알고 있습니다.

앞에서 언급했듯이 성능이 뛰어나고 비동기식 이벤트 지향 아키텍처도 있습니다. 이는 유사 스레드가 작업자라는 프로세스에 의해 관리됨을 의미합니다. 차례로 각 작업자 프로세스에는 작업자 연결로 알려진 더 작은 단위가 있습니다.

따라서 작업자 연결이 작업자 프로세스에 대한 요청만 받은 다음 마스터 프로세스로 전송되므로 이 전체 유닛이 모든 추가 요청을 처리하는 데 전적으로 책임이 있습니다. 마지막으로 마스터 프로세스는 요청한 결과를 보여줍니다.

어떻게 보면 간단해 보일 수도 있지만 단일 작업자 연결이 최대 1,024개의 요청을 처리할 수 있다는 점을 알고 계십시오. 바로 이러한 이유로 Nginx 서버는 사소한 문제 없이 수백만 건의 요청을 완벽하게 처리할 수 있습니다. 이것은 또한 트래픽이 많은 웹사이트가 이 기술을 사용하는 또 다른 큰 이유입니다.

아파치 대 Nginx:

거의 모든 웹 서버 중에서 Apache가 가장 인기가 있으며 Nginx 서버의 주요 적이기도 합니다. Apache는 90년대에 등장했으며 전 세계적으로 수많은 사용자를 보유하고 있습니다.

그러나 온라인 프로젝트를 만들려고 하는데 프로젝트에 어떤 유형과 최상의 서버를 사용할지 아직 확신이 서지 않는다면 아래에서 두 가지를 간단히 비교한 내용을 확인하십시오.

성능 및 성능:

두 서버 모두 속도는 동일하지만 Nginx는 동시에 1,000개의 정적 콘텐츠 연결을 쉽게 실행할 수 있습니다. 이는 Apache보다 2배 빠릅니다. 그리고 여전히 훨씬 적은 메모리를 사용합니다. 이 경우 Nginx 서버가 확실히 최선의 선택입니다.

운영 체제 호환성:

서버를 선택할 때 고려해야 할 세부 사항 중 하나는 결코 호환성이 아닙니다. 이 경우 둘 다 UNIX 시스템을 지원하는 많은 운영 체제에서 작동할 수 있습니다.

그러나 불행히도 이와 관련하여 Windows에서 Nginx 유형 서버의 성능과 성능은 다른 플랫폼만큼 좋지 않습니다.

지원하다:

초심자든 고급 사용자든 상관없이 모든 사람은 예외 없이 인터넷에서 예기치 않은 문제가 발생했을 때 서로 도울 수 있는 장소나 커뮤니티가 필요합니다.

둘 다 이메일을 통해 지원을 제공하며 Stack Overflow에 대한 포럼도 있습니다. 불행히도 Apache는 Apache Foundation이라는 회사 자체에서 제공되는 지원 측면에서 원하는 부분이 많습니다.

결론:

보시다시피 Ngnix는 리버스 프록시, 로드 밸런서 및 메일 프록시로도 작동하는 인터넷 서버입니다. 모든 소프트웨어의 구조는 모두 비동기식이며 모든 이벤트 중심입니다. 그러면 많은 수의 동시 요청이 가능해집니다.

Nginx 유형의 서버는 확장성이 뛰어나므로 트래픽 양의 증가와 함께 작업이 증가한다는 것을 절대 언급하지 않을 수 없습니다.

Apache와 Ngnix는 확실히 오늘날 최고의 웹 서버입니다. 이제 남은 것은 온라인 프로젝트에서 사용할 서버를 선택하는 것입니다. 당신의 선택에 성공?