Grails uygulamasını Scala Play / Spray'e geçirme


12

HTML sunan PostgreSQL ve GSP'ler üzerinde GORM / Hibernate ve ayrıca birkaç REST API'si kullanan orta boy bir Grails web uygulamamız var. Scala'da standartlaştırıyoruz ve bu uygulamayı mevcut veritabanına erişmek için Slick ile Play veya Spray'e geçirmek istiyoruz.

Çevik şu anda kimlik doğrulama / yetkilendirme ve kullanıcı / rol / vb. yönetimi.

Büyük bir patlama göçünden kaçınarak, göçü adım adım yapmak için alabileceğimiz yaklaşımlar nelerdir?

Her ikisi de JVM dilidir, bunları silah uzunluklarında ayrı bağlantı noktalarında çalışan ayrı web uygulamaları olarak ele almanın bir yolu var mı?


Proje adlarıyla eğlenceli, ancak makul bir yaklaşım, tek bir ad alanı sağlamak için bir uygulama proxy'si kullanmak olabilir. Başka bir seçenek de Tomcat gibi bir web kapsayıcısında ayrı WAR dosyaları olarak çalıştırmaktır. Grails veya Scala yapmadım, ancak web API'leri Java Servlets etrafında bir sarıcı ise, o zaman altınsınız. Değilse, ayrı bağlantı noktalarını vb. Gizlemek için uygulama proxy'sini kullanmanız gerekir
Berin Loritsch

Yanıtlar:


1

Şahsen, bir yeniden yazma benim için daha verimli geliyor, ancak adım adım parçalar halinde yapmanız gerekiyorsa, aşağıdaki yaklaşımı uygulamanızı öneririm:

  • Slick'i kullanmak için mevcut veritabanı kodunuzu taşıyın (muhtemelen mevcut kodunuzu çok fazla değişiklikten korumak için etrafındaki sarmalayıcılara ihtiyacınız olacaktır).
  • Ardından Play'i çalışma zamanınıza entegre edin ve Play İşlemleri ile kimlik doğrulama ve yetkilendirme için Silhouette'i kullanın.
  • Daha sonra, tek tek GSP'leri birer birer Oynat / Dön'e taşıyabilmeniz gerekir.

Ne yazık ki, aynı bağlantı noktasını dinlemelerini sağlamanın bir yolunu bilmiyorum, bu yüzden kesintisiz hale getirmek için Grails'ten Play bağlantı noktasına yönlendirmeniz gerekir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.