2010-05-31 6 views
5

나는 하루에 약 25 만 명의 방문자를 얻는 웹 사이트를 재건하는 일을 담당하고 있습니다. 우리는 스칼라를 사용하고 싶지만 Spring (일부 사소한 경우)과 Hibernate (우리가하는 스칼라 컬렉션을 사용하고자한다면 여기에 아주 성가신 불일치가있다)와는 잘 작동하지 않는다.트래픽이 많은 사이트의 스칼라에 가장 적합한 웹 데이터베이스 솔루션은 무엇입니까?

응용 프로그램 자체에는 약 40-50 개의 테이블이 있습니다.

Hibernate 외에도, Scala와 함께 훌륭하게 작동하며 최대 절전 모드만큼 성능이 뛰어난 ORM이 있습니까? 그것은 또한 동일한 능력을 가지고 있습니까, 아니면 우리가 Hibernate를 사용하지 않는다면 우리는 새는 추상화를 수행 할 것입니까?

우리가 새로운 프레임 워크를 사용하는 것은 큰 위험이 될 것이며, 업계에서 많은 지원을받지 못하는 것처럼 보일 것입니다 ... 그리고 동시에 Hibernate는 Scala를 사용하여.

1) 자바 컬렉션 < -> 스칼라 컬렉션은 절대적으로 고통 스럽습니다. 쓰는 데는 더 많은 상용구와 쓰레기가 있습니다.

2) IDE에서 JavaConversions 및 Java 인터페이스를 자동으로 가져 오지 않으므로 수동으로 수행해야합니다. IDEA에서 수입을 최적화하는 것은 모든 수작업을 파괴 할 것입니다.

3) 도메인 개체와 DAO 클래스에서 항상 앞뒤로 변환하는 데 드는 성능 비용이 있습니다.

4) 죄처럼 추악한 코드를 만드는 많은 주조가 필요하지는 않습니다.

사실 저는 100 % 스칼라에 맞게 만든 자체 orm을 쓰고 싶지만 분명히 지금은 우리 프로젝트의 범위를 벗어났습니다.

그래서 가장 좋은 방법은 무엇입니까?

답변

6
  1. Lift Framework을 고려 했습니까? 그것은 매우 훌륭한 퍼시스턴스 모듈을 가지고 있습니다 - Lift Record (당신이 찾고있는 Scala에서 ActiveRecord 개념의 구현).
    또한 NOSQL을 사용하기로 결정한 경우 (기존 RDBMS보다 훨씬 높은 처리량 요구를 충족시킬 수 있음) Lift에는 Mongo DB, Redis and Couch에 대한 모듈이 있습니다.
  2. 또 다른 입증 된 ORAC 솔루션은 JPA입니다. 스칼라에서는 JPA 주석을 자유롭게 사용할 수 있습니다.

    두 솔루션 모두 상당히 신뢰할 수 있으며 엔터프라이즈 지원을 제공합니다 (알고있는 한).

    P. 언급 할만한 가치가 있습니다 - Lift Framework는 요즘 스칼라 웹 프레임 워크의 산업 표준 중 하나입니다. 입증 된 명성을 얻었으며 이미 좋은 시작 도서가 있습니다.
+2

David와 나머지 리프트 커뮤니티와 관련해서는 실제로 나에게 호소하지 않습니다. 상황이 이상하고 너무 다릅니다. 그냥 튀어 나와 일관성없는 것으로 보이는 것들이 있습니다. 몇 달 전에 몇 번 해봤지만 ... 코드 기반은 계속 진화 해 왔으며, 다음 릴리스 이전에 한 두 달 정도만 작성 되었기 때문에 "시작"애플리케이션은 항상 작동하지 않았습니다. 스칼라 2.8을 사용하면 상황이 훨씬 더 변할 것입니다. 나는 좀 더 전통적인 - 희박하고, 효율적이며, 깨끗하고, 간결하며, 또한 전통적인 것이 필요하다. – egervari

+1

Grails와 Lift와 같은 기존의 광범위하게 사용되는 웹 응용 프로그램 프레임 워크와 다른 것을 원하십니까? –

5

Circumflex을 살펴보십시오. Scala 용으로 작성된 ORM입니다.

+1

얼마나 많은 사람들이 이것을 사용하고 있습니까? 성공 사례가 있습니까? 그것이 한 달 안에있을 가능성은 어느 정도입니까? 년? :/ – egervari

+0

소스는 GitHub (끝에있는 링크)에서 쉽게 사용할 수 있지만 모든 오픈 소스 프로젝트와 마찬가지로 저자가 포기할 지 여부도 알 수 없습니다. 그것은 위험합니다 (ASF 프로젝트는 별개입니다). 개인적으로 작은 내부 프로젝트에이 프로젝트를 사용하여 유용하다고 판단했습니다.간단하고 간결하며 내 눈을 사로 잡는 프레임 워크로 완벽합니다. GitHub URL : http://github.com/inca/circumflex – KushalP

관련 문제