Google Apps Engine 관련 개발 중에 드는 생각.
전문적으로 개발하는 것은 아니고, 어디까지나 취미로 시작했던 작업이다.
기존에 Azuare로 구현했던 내용을 이번에는 Google Apps Engine으로 개발한 것이다.
아마도 단순 접근성으로 따지면 단연 Google Apps Engine인 것 같다.
제일 먼저 높은 점수로 줄 수 있는 부분은 대부분의 비용이 Free 라는 사실이다.
이거 때문에, Azure에서 이 Google Apps Engine을 선택한 주요한 원인이니까,
상당한 매리트였다.
그리고 Java 지원. 사실 지금 그나마 다룰 줄 언어는 C/C++, C#, Java 뿐이니, Python이라든가, Peal 이렇게 나왔으면 아마도 GG였을 것 같다. Google Apps Engine 초창기는 Python 이라고 했는데, 그 당시의 생각만 했다면 접근 불가였을 것이다. 그런 시스템이 지금은 Java를 훌륭하게 지원한다.
다음은 시작하기 가뿐한 Start up Tutorial 이다. 이것 따라하기만 하면 금방 개념이라든가
처리하는 방법을 배울 수 있었다. 훌륭한 내용이지 않을까 싶다.
그러나, 이런 훌륭한 접근성에 비해 마음에 안드는 부분이 있기는 했다.
제일 먼저 Back 단에서 처리하는 작업을 하기 위한 일종의 Service 개념이 없었다.
지금까지 찾아서 확인한 것 까지 본다면, JSP 페이지와 같은 I/F를 통해 Request/Response 기반의
작업 뿐인 것 같다. 물론 cron 이나, queue와 같은 것들을 활용하여,
각 Request를 마치 Service 처럼 구성하면 될지는 모르겠지만…
처음에 아무 생각없이 Azure에서 구현한 방식대로 구현한 뒤, 내 PC에서 돌릴 때는 문제가 없었다가,
이번에 처음으로 Google Apps Engine에 올려보니, 역시 Request Time out 이 발생하였다.
아마도 Request가 들어오게 되면 처리하는 내용이 많다보니, Response까지 나오는 시간이
의외로 많이 걸리게 되었는데, 바로 걸려 버리는 문제가 발생했다.
일단, 소정의 목적만 달성하고, 현재는 재설계 계획 중이다.
Response가 빠르게 할 수 있도록 Job을 Page 단위로 분해하여 재조립을 해야 할 필요가 느껴졌다.
여튼 현재로는 Back 단에서 서비스 처럼 동작하는 부분이 없다는 약점만은 어떻게든 보완할 필요가 있다.
( 최소한 Azure에는 Worker 라는 개념이 있고, Amazone 에서는 Enterprise 서비스를 활용하면 그 안에서 처리할 방법이 있는 것 같다. )
Java로 웹 서비스 같은 것을 개발할 계획이라면, 한번 활용해 보는 것도 나쁘지 않을 것 같다!!