문제

현재 Google Appengine (GAE)에 Java 웹 응용 프로그램을 구축하고 있지만 많은 제한 사항으로 인해 GAE에서 Glassfish를 실행하는 내 자신의 서버로 전환해야 할 것이 두렵습니다 (또는 필요한 경우 다른 서버를 설정할 수 있습니다). 또한 Oracle 또는 MySQL 데이터베이스를 실행할 계획입니다. GAE에서 서버로 전환하려면 어떻게해야합니까? 내 코드를 다시 작성해야합니까? Datanucleus를 계속 사용하거나 다른 것으로 전환해야합니까? 다른 뭐야?

도움이 되었습니까?

해결책

우리는 당신이 당신의 앱을 어떻게 작성했는지 모르면 아주 좋은 조언을 줄 수 없습니다. 비즈니스 로직에서 데이터 스토어 액세스를 분리하는 데이터 액세스 계층을 만들었습니까? 아니면 앱 엔진 특정 객체를 전부에 전달합니까? GAE 사용자 서비스를 사용하고 있습니까? 아니면 memcache?

가장 먼저해야 할 일은 모든 가져 오기 진술을 보는 것입니다. 거기에 com.google.something을 볼 때마다, 당신은 그것을 변경해야한다는 것을 알고 있습니다. 앱을 작성하는 방법에 대해 자세히 설명하지는 않았지만 Datanucleus에 대해 묻는 경우 JDO 또는 JPA를 사용하고 있었기 때문에 대부분의 데이터 계층을 재사용 할 수 있습니다. 변경해야 할 주요 필드와 아마도 GAE 특정 주석이있을 수 있습니다. GAE와 같은 엔티티 그룹을 사용하지 않는 SQL 데이터베이스에서는 다른 트랜잭션을 처리하는 방법을 두 번 확인해야 할 것입니다.

다른 팁

원래 Google 캠프 파이어에 제공된 정보를 따르지 않겠습니까? DB2를 사용하여 Appengine 앱을 실행하는 방법에 대한 IBM의 프레젠테이션이있었습니다. 그들은 단순히 클래스 경로에서 datanucleus-rdbms jar를 떨어 뜨리고 연결 URL 등을 변경하여 실행했습니다. 이 PDF에서와 마찬가지로http://download.boulder.ibm.com/ibmdl/pub/software/dw/wes/hipods/gae_java_interoperability.pdf

-앤디 (datanucleus)

나는 시도하지 않았지만 AppScale이라는 GAE의 오픈 소스 구현이 있습니다. http://code.google.com/p/appscale/

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