your programing

node.js가 공유 호스팅에서 실행되지 않는 이유는 무엇입니까?

lovepro 2020. 12. 25. 23:37
반응형

node.js가 공유 호스팅에서 실행되지 않는 이유는 무엇입니까?


첫 번째 : 알려진 모든 웹 호스팅 회사에서 nodejs의 공유 호스팅을 검색했지만 아무도 찾지 못했습니다. 그런 다음 nodejs는 공유 호스트 시스템에서 실행할 수 없다는 것을 알게되었습니다. 이유를 알고 싶어요?

두 번째로 저는 보통 예산을 가진 평범한 사람입니다. vps 또는 deicated 서버 또는 클라우드 호스팅을 선택하면 노드가 실행되지만 PHP 공유 호스팅 서비스에 비해 용돈 범위를 벗어납니다. node.js를 배워야합니까?


이론적으로는 가능하지만 실제로 그러한 인프라를 제자리에 두는 것은 호스팅 제공 업체에 따라 다릅니다.

클래식 웹 플랫폼과 비교하는 노드는 자체 지속 가능한 플랫폼입니다. 예를 들어 PHP의 경우 apache 또는 nginx (또는 기타)와 함께 실행되며 PHP 자체는 로직 구현과 크게 다르지 않고 웹 서버 솔루션이 필요한 일부 라이브러리가있는 스크립트 언어입니다. 웹 서버는 트래픽에 대한 특정 포트를 수신하기 위해 소켓을 생성하고 자체 마법을 수행하며 요청을 처리하기 위해 PHP를 실행합니다.

그 동안 node.js는 자체 소켓을 생성하고이를 자체 포트에 바인딩합니다. 그것은 훨씬 더 낮은 수준의 액세스를 제공하므로 자체 웹 서버입니다. 하나의 포트 두 응용 프로그램에 바인딩 할 수 없으므로 이미 공유 할 수 없습니다.
트래픽을 node.js 프로세스로 라우팅하는 프록시를 만들 수있는 서비스 (웹 서버)가 있지만 일부 경우에는 효율적이지 않으며 공유 호스팅은 이러한 기능을 제공하지 않습니다.

node.js는 여전히 상당히 젊고 다르기 때문에 여전히 대부분의 공유 호스팅 서비스에 영향을 미치지 않았습니다. '공유'방식으로 node.js 애플리케이션을 호스팅 할 수있는 온라인 서비스가 있습니다.

또한 AWS에서 EC2 Micro 인스턴스를 1 년 동안 무료 (프리 티어)로 대여 할 수 있으므로 다양한 항목을 시도하고 테스트 할 수있는 충분한 가능성과 시간이 제공됩니다. 공유 호스팅으로 허용되지 않는 거의 모든 작업 (소프트웨어 설치, OS 구성 수정 등)을 수행 할 수있는 준 전용 시스템이 제공됩니다.


Heroku를 살펴보십시오. 트래픽이 적은 간단한 앱의 경우 무료이며 추가 비용으로 더 많은 트래픽을 위해 쉽게 확장 할 수 있습니다. 또한 Git을 사용하여 배포하므로 업데이트하는 것이 정말 간단합니다.


node.js 앱을 배포하는 다른 방법이 있습니다.

Openshift , Heroku , AppFog , Paastor , dotCloud 등과 같은 PaaS 서비스를 사용할 수 있습니다 .


노드는 대부분의 서버처럼 작동하지 않습니다. IIS와 Apache를 사용하면 여러 사이트를 실행하는 하나의 서버가있어 공유 환경에 적합합니다. 노드를 사용하면 자체 서버를 실행하므로 대신 컴퓨터에서 리소스를 공유하는 경향이 있습니다.

나는 당신의 동기를 모르기 때문에 노드를 배우는 것이 가치가 있는지 말할 수는 없지만 당신이 거기에 가고 당신의 기술을 확장하기로 선택하면 당신의 경력 기회를 확장 할 수 있습니다.

다음은 저렴한 가격대의 몇 가지 호스팅 옵션입니다.

http://nodester.com/

https://www.nodejitsu.com/


다른 훌륭한 노드 앱 호스팅 옵션으로는 Joyent의 SmartOS 및 Microsoft Azure가 있습니다. 둘 다 무료 평가판 기간이 있습니다.

Azure는 Windows Server, Ubuntu Linux 또는 Azure의 특수 "웹 사이트"공유 배포 체계에서 노드 앱을 호스팅 할 수 있으므로 node.js를위한 훌륭한 학습 플랫폼이 될 수 있습니다.

http://www.windowsazure.com/en-us/develop/nodejs/tutorials/create-a-website-(mac)/

노드 앱 호스팅을위한 또 다른 비용 효율적인 솔루션은 Azure의 "웹 사이트"접근 방식입니다 (월 약 $ 10). 단점은 IIS를 통해 노드 앱을 호스팅하는 공유 환경을 사용해야한다는 것입니다. 실제로 이것은 저에게 잘 맞았지만 Windows에서 실행할 때 Node의 특정 Linux 기능을 사용할 수 없다는 점에서 제한적이며 노드 서비스를 구성하는 방법을 직접 배우지 않을 것입니다. 당신에게 중요하지 않습니다. (참고 : Azure의 GIT 배포 프로세스는 로컬 GIT 리포지토리에서 앱을 배포하려는 경우 훌륭하게 작동합니다. 또한 NodeIIS는 특정 기간 동안 사용하지 않을 때 노드 앱을 중지하고 다음과 같은 경우에 다시 자동 시작됩니다. 앱 요청이 들어옵니다.)

Joyent의 SmartOS 플랫폼은 node.js 앱 호스팅에 최적화 된 Linux OS입니다. 뛰어난 신뢰성과 성능은 물론 훌륭한 진단 도구를 제공합니다.

http://wiki.joyent.com/wiki/display/jpc2/Developing+a+Node.js+Application

지금까지 찾은 가장 비용 효율적인 솔루션은 월 5 달러에 전체 Linux VM을 호스팅 할 수있는 훌륭한 새 호스팅 솔루션 인 DigitalOcean입니다! 지금까지 Node 앱을 호스팅하는 데 큰 행운이있었습니다 : https://www.digitalocean.com/pricing


a2hosting은 공유 호스팅에서 Node.js를 허용하지만 거기에 대한 경험이 없습니다.

업데이트 : DigitalOcean을 사용하십시오. 비공개 VPS

참조 URL : https://stackoverflow.com/questions/17529613/why-node-js-cant-run-on-shared-hosting

반응형