program story

javascript node.js가 Google 앱 엔진에없는 이유

inputbox 2020. 11. 1. 17:42
반응형

javascript node.js가 Google 앱 엔진에없는 이유


Google은 V8 JavaScript 엔진을 만들었습니다. V8은 처음 실행될 때 JavaScript 소스 코드를 기계 코드로 직접 컴파일합니다.

Node.js는 V8을 기반으로합니다. Google이 Microsoft Azure와 같은 Node.js 서버를 제공하지 않는 이유는 무엇입니까?

Google App Engine은 Node.js를 넣을 수있는 자연스러운 장소입니다.

Google이 왜 그렇게하지 않는지 아십니까?


2014 년 6 월부터 Google은 Google App Engine (Google Compute Engine과 다름)에서 맞춤 언어에 대한 제한된 미리보기를 제공했습니다 .

App Engine 및 커스텀 런타임으로 Node.js 애플리케이션 빌드를 시청 하고 https://cloud.google.com/appengine/docs/managed-vms/를 확인 하세요 .

App Engine은 이제 두 번째 호스팅 옵션 인 관리 형 VM을 제공합니다. 관리 형 VM 호스팅 환경을 사용하면 구성 가능한 Compute Engine 가상 머신 (VM)에서 App Engine 애플리케이션을 실행할 수 있습니다. 또한 관리 VM을 사용 하여 Node.js 및 기타 런타임 과 같이 사용자가 구성 할 수있는 커스텀 런타임 을 배포 할 수 있습니다 .

베타에 들어가는 절차는 다음과 같습니다.

관리 형 VM 프로젝트 등록 및 만들기

관리 형 VM은 제한된 미리보기 상태이므로이 기능에 액세스하려면 가입하고 결제 지원 프로젝트를 만들고 프로젝트에 대해 알려 주어야 관리 형 VM에서 실행되도록 허용 할 수 있습니다. 이 단계를 따르세요:

  1. 관리 형 VM에 액세스하려면 가입하세요.
  2. app-engine-managed-vms Google 그룹에 가입하여 관리 형 VM에 대한 토론에 참여하세요.
  3. 프로젝트 (또는 앱-동일한 것)는 미국 데이터 센터에 있어야합니다. 기존 프로젝트를 사용하려는 경우 다음 단계로 건너 뜁니다. 그렇지 않으면 미국 데이터 센터에서 새 앱을 만듭니다. https://preview.appengine.google.com으로 이동하여 새 앱을 만듭니다.
  4. 프로젝트에 대한 결제를 활성화합니다. https://cloud.google.com/console/project/apps~ 페이지를 방문합니다. 여기서은 프로젝트의 ID입니다. 왼쪽 메뉴에서 설정을 클릭 한 다음 결제를 활성화합니다. 앱이 Premier 계정으로 청구되는 경우 app-engine-managed-vm-tt-id@google.com으로 이메일을 보내 새 클라우드 프로젝트를 동일한 계정으로 청구하도록합니다.
  5. 제목 줄에 애플리케이션 ID를 입력하여 app-engine-managed-vm-tt-id@google.com으로 이메일을 보냅니다.

이메일을 받으면 백그라운드에서 몇 가지 리소스를 구성하고 프로젝트를 시작할 준비가되면 이메일을 통해 알려드립니다. 이메일에는 설정에 대한 최종 지침이 포함되어 있습니다. 이 안내를 따르는 동안 오류가 발생하면 app-engine-managed-vm-tt-id@google.com으로 문의하세요.


Node.js는 Google의 경쟁자 인 Joyent가 관리합니다.

Node.js는 Google과 전혀 관련이 없지만 실제로는 Google이 시작한 오픈 소스 프로젝트를 기반으로 구축되었습니다.

구글은 애저처럼이 사업에 뛰어 들었을 지 모르지만 이미 많은 PaaS가이 사업을하고있어 그만한 가치가 없을 수도 있습니다. 저는 GAE를 사용한 적이 없지만 다른 PaaS와는 상당히 다르며 코드를 실행하려면 GAE 라이브러리를 사용해야합니다.

이것은 내 개인적인 느낌이며 실제로 Node.js 커뮤니티가 찾고있는 것이 아닙니다. Node.js는 예를 들어 전화 앱용 API에서 큰 비중을 차지하는 빠르고 가벼운 앱을 빠르게 만드는 데 사용됩니다.

그럼에도 불구하고 Node.js 용 PaaS를 찾고 있다면 다음과 같은 것들이 많이 있습니다.

  • Joyent (노 데짓)
  • WebSockets를 지원하는 dotCloud .
  • Windows Azure
  • Nodester (최근 App Fog에서 구입)
  • 모든 Cloud Foundry 호스트는 Node.js도 지원해야합니다.
  • 그리고 더 많은...

그것들은 내 머릿속에서 약간의 이름 일뿐입니다. 꽤 많지만 그게 중요한 것입니다. 오, Heroku 도 있지만 Socket.IO 기반 앱에 대해 실망스러운 WebSocket을 지원하지 않습니다.


Google Compute Engine (기본적으로 가상 컴퓨터)에 노드를 쉽게 설치할 수 있습니다. 다음은 링크입니다. https://developers.google.com/datastore/docs/getstarted/start_nodejs/

감사합니다 Lars


Google appengine에서 수년간의 경험을 쌓은 후 지금은 다른 클라우드 서비스로 전환합니다.

저는 구글 앱 엔진이 실제로 클라우드 컴퓨팅 산업에서 구식 서비스라고 생각합니다. 이는 새로운 기술에 느리고 배포하기 어렵고 API를 배우는 데 시간을 낭비하고 사용하는 언어에 필요한 많은 기능이 부족합니다.

Google의 대규모 커뮤니티에 관계없이 누구에게도 Google appengine을 사용하도록 제안하지 않습니다.

[새로운 paas]

나는 당신이 openshift, appfog, heroku .etc의 새로운 paas 클라우드 컴퓨팅 기술을 사용할 것을 강력히 권장합니다. 이것은 훨씬 더 확장 가능하고, 변경이 덜 필요하며, 한 플랫폼에서 다른 플랫폼으로 더 쉽게 마이그레이션 할 수 있으며, 자연적인 lanuage와 그 표준의 아름다움을 더 자유롭게 코딩 할 수 있습니다. 추악한 플랫폼 특정 API가없는 라이브러리.

[iaas]

실행중인 OS 환경에 대한 더 많은 제어를 원한다면 linode, digital ocean, amazon, google cloud engine, microsoft azure 등 iaas 공급자를 사용해 볼 수 있습니다.


App Engine은 서비스로서의 플랫폼이기 때문에 GAE에 새로운 언어 / 스택을 추가하기 위해 Google은 과다한 App Engine 서비스 와 상호 작용하는 중간 수준의 라이브러리를 만들어야 합니다 .

또한 모든 App Engine 앱은 샌드 박스 이며 샌드 박스 환경 내부에서 제한되는 몇 가지 기능이 있습니다. 즉, 서비스 라이브러리를 만들어야하는 것 외에도 Google은 GAE에 도입하려는 모든 언어 / 스택에 대해 안전한 샌드 박스 환경을 만들어야합니다.

개인적으로 두 번째 이유는 Google이 Azure만큼 공격적인 새로운 언어 / 스택에 대한 지원을 도입하지 않는 이유라고 생각합니다. App Engine은 어떤면에서 Azure보다 더 '관리'되며 새로운 언어 / 스택에 대한 초기 개발 비용이 더 큽니다.


2016 년 3 월에 출시되었습니다.

https://cloudplatform.googleblog.com/2016/03/Node.js-on-Google-App-Engine-goes-beta.html


Node.js는 최근 Google Cloud 사용자에 대한 지원을 활성화했습니다. 주요 문서 페이지는 다음과 같습니다.

현재 Compute Engine 인스턴스 가 필요한 것 같습니다 .


배경 : App Engine 표준 및 App Engine 가변형

App Engine에는 Standard와 Flexible의 두 가지 버전이 있기 때문에이 주제에 대해 약간의 혼란이있는 것 같습니다. NodeJS는 App Engine Flexible에서 지원되지만 App Engine Standard 에서는 지원 되지 않습니다 . ( 차이점에 대한 자세한 설명은 여기참조 하십시오 ).

App Engine Standard는 몇 초 만에 확장되며 (가변형 환경의 경우 몇 분이 아님) 무료 등급이 있으므로 비용을 들이지 않고도 개발하고 데모 할 수 있습니다. 이러한 이점은 유연성을 희생하여 제공 됩니다 . App Engine Standard는 특정 언어와 라이브러리 만 지원하며 디스크 나 SSH에 쓰기를 허용하지 않습니다. 즉, 환경이 표준화되었습니다 .

답변 : App Engine 표준에 대한 NodeJS 지원

App Engine Standard 에 대한 NodeJS 지원에 관심이있는 경우 https://issuetracker.google.com/issues/67711509 문제에 별표를 표시 하세요 .

Google addresses features that get attention from the community (see here). The best way to give your attention to this feature, is to star it on the Google Issue tracker linked to above.


Google announced on March, 21st 2016 that Node.js on Google App Engine was going beta: https://cloudplatform.googleblog.com/2016/03/Node.js-on-Google-App-Engine-goes-beta.html?m=1

This was expected as Google also joined the Node.js Foundation and Google develops the V8 JavaScript engine which powers Chrome and Node.js: https://nodejs.org/en/blog/announcements/welcome-google/

Google announced a partnership with NodeSource at the same time.


Google has just announced support for Node.js on App Engine.

enter image description here See: https://cloud.google.com/nodejs/

Here's an example of how to deploy Node.js app on App Engine.


Google is a software-conservative company. Programming a backend in JavaScript would be absolutely unimaginable for Google's managers. Creating infrastructure Google itself won't be using is not a good investment. Reference: Notes from the Mystery Machine Bus

참고URL : https://stackoverflow.com/questions/12450321/why-is-javascript-node-js-not-on-google-app-engine

반응형