문제

유지하고 싶은 코드가 이미 상당 부분 작동 중이라는 점을 고려하면 GAE에 대한 대안은 무엇입니까?즉, 파이썬을 파고 있는 셈이다.하지만 제 사용 사례는 요청 수가 적고 CPU 사용량이 많은 사용 사례에 가깝고, App Engine을 영원히 사용하지 못할 수도 있다는 걱정이 듭니다.Amazon Web Services 및 기타 종류의 클라우드 제공업체에 대해 많은 사람들이 이야기하는 것을 들었지만 이러한 다른 서비스 중 대부분이 앱이 제공하는 다양한 서비스(데이터 쿼리, 사용자 인증, 자동 확장)를 제공하는 곳이 어디인지 파악하는 데 어려움을 겪고 있습니다. 엔진이 제공합니다.여기서 내 옵션은 무엇입니까?

도움이 되었습니까?

해결책

GAE가 자신의 클래스에 있기 때문에 지금 GAE에 대한 또 다른 대안이 있다고 생각하지 않습니다. 물론 GAE는 클라우드 컴퓨팅이지만 GAE는 클라우드 컴퓨팅의 하위 집합으로 본다. Amazon의 EC2는 또한 클라우드 컴퓨팅 (기쁨 가속기, 슬라이스 호스트 슬라이스)이지만 분명히 두 개의 다른 짐승이기도합니다. 그래서 지금 당신은 당신의 요구에 따라 아키텍처를 다시 생각 해야하는 상황에 처해 있습니다.

GAE의 즉각적인 이점은 인프라 (확장 가능한 웹 서버 및 데이터베이스 관리)와 관련하여 본질적으로 유지 보수가 없다는 것입니다. GAE는 기본 시스템이 아닌 응용 프로그램에만 집중하기를 원하는 개발자에게 더욱 맞춤화되어 있습니다. 이제 이러한 다른 클라우드 컴퓨팅 솔루션을 사용하면 VM 이미지/템플릿을 제공하여 원하는만큼 응용 프로그램에 대해 걱정할 수 있습니다. 궁극적으로 귀하의 요구는 귀하가 취해야 할 접근 방식을 지시합니다.

이제이 모든 것을 염두에두고 우리는 또한 우리의 요구를 충족시킬 수있는 하이브리드 솔루션과 해결 방법을 구축 할 수 있습니다. 예를 들어, Gae는 보이지 않습니다 곧장 이 특정 앱에 적합한 것은 설명합니다. 다시 말해, GAE는 비교적 많은 수의 요청, 적은 수의 CPU 사이클을 제공합니다 (유료 버전이 다른지 확실하지 않음).

그러나이 도전에 대처하는 한 가지 방법은 GAE와 관련된 맞춤형 솔루션을 프론트 엔드로, Amazon AWS (EC2, S3 및 SQS)를 백엔드로 구축하는 것입니다. 어떤 사람들은 당신이 AWS에 전체 스택을 빌드 할 수도 있다고 말하지만, 여기에는 기존 코드를 많이 다시 작성하는 것도 포함될 수 있습니다. 또한 이전의 해결 방법으로 stackoverflow 게시물 GAE에서 배경 작업을 시뮬레이션하는 방법을 설명합니다. 또한, 당신은 조사 할 수 있습니다 HTTP 맵/감소 작업량도 배포합니다.

다른 팁

앱 스케일

AppScale은 사용자가 자체 Google App Engine 애플리케이션을 배포하고 호스팅 할 수있는 플랫폼입니다. Xen 및 KVM뿐만 아니라 Amazon EC2 및 유칼립투스를 통해 자동으로 실행됩니다. 그것은 개발되었고 유지됩니다 앱 스케일 시스템. Python, Go, PHP 및 Java Google App Engine 플랫폼을 지원합니다.

http://github.com/appscale/appscale

그동안 ...

... AMOST 2015이며 컨테이너가 앞으로 나아갈 수있는 방법 인 것 같습니다. gae에 대한 대안이 떠오르고 있습니다.

Google이 출시되었습니다 Kubernetes, 컨테이너 스케줄링 소프트웨어가 개발 한 소프트웨어 GCE 컨테이너를 관리합니다, 그러나 다른 클러스터에도 사용할 수 있습니다.

일부가 있습니다 다가오는 Paas 다음과 같은 도커에

주시 할 흥미로운 것들.

조금 늦었지만, 나는 헤로쿠에게 갈 것입니다.

Heroku는 Polyglot Cloud Application 플랫폼입니다. Heroku를 사용하면 서버에 대해 전혀 생각할 필요가 없습니다. 선택한 프로그래밍 언어로 최신 개발 관행을 사용하여 앱을 작성할 수 있습니다. Heroku 명령 줄 도구를 사용하여 앱을 관리하고 Heroku 인프라에서 실행되는 GIT 개정 제어 시스템을 사용하여 코드를 배포합니다.

https://www.heroku.com/about

2016년 현재, 덩어리로 만들 의향이 있다면 PaaS (서비스로서의 플랫폼) 및 FaaS (서비스로서의 기능) 동일 서버리스 컴퓨팅 카테고리를 선택하면 몇 가지 FaaS 옵션이 있습니다.

소유권

AWS 람다

AWS Lambda를 사용하면 서버를 프로비저닝하거나 관리하지 않고도 코드를 실행할 수 있습니다.사용한 컴퓨팅 시간에 대해서만 비용을 지불하며, 코드가 실행되지 않을 때는 요금이 부과되지 않습니다.Lambda를 사용하면 관리할 필요 없이 거의 모든 유형의 애플리케이션 또는 백엔드 서비스에 대한 코드를 실행할 수 있습니다.코드를 업로드하기만 하면 Lambda가 고가용성으로 코드를 실행하고 확장하는 데 필요한 모든 것을 처리합니다.다른 AWS 서비스에서 자동으로 트리거되도록 코드를 설정하거나 웹 또는 모바일 앱에서 직접 호출할 수 있습니다.

AWS 단계 함수 AWS Lambda를 보완합니다.

AWS Step Functions를 사용하면 시각적 워크플로를 사용하여 분산 애플리케이션과 마이크로서비스의 구성 요소를 쉽게 조정할 수 있습니다.각각 개별 기능을 수행하는 개별 구성 요소로 애플리케이션을 구축하면 애플리케이션을 빠르게 확장하고 변경할 수 있습니다.Step Functions는 구성 요소를 조정하고 애플리케이션 기능을 단계별로 실행하는 안정적인 방법입니다.Step Functions는 애플리케이션의 구성 요소를 일련의 단계로 배열하고 시각화하는 그래픽 콘솔을 제공합니다.이를 통해 다단계 애플리케이션을 간단하게 구축하고 실행할 수 있습니다.Step Functions는 각 단계를 자동으로 트리거 및 추적하고 오류가 있는 경우 재시도하므로 애플리케이션이 순서대로 예상대로 실행됩니다.Step Functions는 각 단계의 상태를 기록하므로 문제가 발생하는 경우 신속하게 문제를 진단하고 디버깅할 수 있습니다.코드를 작성하지 않고도 단계를 변경하고 추가할 수 있습니다.

구글 클라우드 기능

2016년 현재 알파 버전입니다.

Google Cloud Functions는 서버나 런타임 환경을 관리할 필요 없이 클라우드 이벤트에 응답하는 작은 단일 목적 함수를 만들 수 있는 경량 이벤트 기반 비동기 컴퓨팅 솔루션입니다.Google Cloud Storage 및 Google Cloud Pub/Sub의 이벤트는 Cloud Functions를 비동기적으로 트리거할 수 있습니다. 또는 동기 실행을 위해 HTTP 호출을 사용할 수 있습니다.

애저 함수

개발을 가속화하는 이벤트 기반 서버리스 컴퓨팅 환경입니다.수요에 따라 확장할 수 있으며 사용한 리소스에 대해서만 비용을 지불하면 됩니다.

열려 있는

서버리스

서버리스 프레임워크를 사용하면 자동 확장, 실행당 지불, 이벤트 기반 기능을 모든 클라우드에 배포할 수 있습니다.현재 Amazon Web Service의 Lambda를 지원하고 있으며 다른 클라우드 제공업체도 지원하도록 확장하고 있습니다.

철기능

IronFunctions는 프라이빗, 퍼블릭, 하이브리드 등 모든 클라우드를 위한 오픈 소스 서버리스 컴퓨팅 플랫폼입니다.


FaaS가 CaaS(서비스로서의 컨테이너)와 얼마나 잘 경쟁하는지 지켜봐야 합니다.전자가 더 가벼워 보입니다.둘 다 마이크로서비스 아키텍처에 적합한 것으로 보입니다.

나는 FaaS와 같은 기능이 라인의 끝이 아닐 것으로 예상하며, 앞으로 수년 후에는 추가 서비스 추상화를 보게 될 것입니다.테스트 전용 개발 후 일반 언어 시나리오가 이어집니다.

Amazon의 Elastic Compute Cloud 또는 EC2는 좋은 옵션입니다. 기본적으로 웹 인터페이스를 통해 제어 할 수있는 (위아래로 전원을 켜고) SSH 또는 일반적으로 설정 한 모든 것을 통해 액세스 할 수있는 서버에서 Linux VMS를 실행합니다. 물론 원하는 경우 파이썬을 실행하십시오.

Microsoft Windows Azure를 고려할 가치가 있습니다. 나는 그것을 사용하지 않았기 때문에 그것이 좋은지 말할 수 없으며 현재 CTP라는 것을 명심해야합니다.

여기에서 확인하십시오.

클라우드에 관심이 있고 생산 및/또는 테스트를 위해 직접 만들고 싶을 수도 있습니다. 유칼립투스. EC2와 호환되지만 오픈 소스와 호환되는 것으로 추정됩니다.

당신은 또한 살펴보고 싶을 수도 있습니다 AWS 탄성 콩선 - IAA (IE EC2)가 오히려 PAAS로 설계되었다는 점에서 GAE 기능과 더 가까운 곳이 있습니다.

CPU 집중 요청에 사용되는 다른 서버와 App Engine을 어떻게 쉽게 연결할 수 있는지 보는 데 더 관심이 있습니다.

Typhoonae 이 작업을 수행하려고합니다. 나는 그것을 테스트하지 않았지만 여전히 베타 버전에 있지만 적극적인 개발이 적어 보입니다.

클라우드 컴퓨팅으로의 전환은 너무 빠르게 발생하여 다른 플랫폼을 테스트 할 시간이 없습니다. 나는 당신이 시도하는 것이 좋습니다 Jelastic Java에도 관심이 있다면.

Jelastic의 가장 큰 장점 중 하나는 응용 프로그램 기능의 변경 사항을 제외하고는 응용 프로그램 코드를 변경할 필요가 없지만 선택한 플랫폼이이를 요구하는 이유는 아닙니다. 이를 참조하면 실제로 시간을 낭비하지 않습니다. 배포 프로세스는 완벽하며 .WAR 파일을 추가로 배포 할 수 있습니다. GAE를 사용하려면 시스템 요구 사항에 대한 앱을 수정해야합니다. Java와 협력하고보다 유연한 플랫폼을 찾기 시작한 경우 Jelastic은 호환되는 대안입니다.

Red Hat의 Cape Dwarf 프로젝트를 사용하여 수정없이 Wildfly Appserver (이전 JBoss) 위에서 GAE 앱을 실행할 수 있습니다.

여기에서 확인할 수 있습니다.

http://capedwarf.org/

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top