Was sind die Unterschiede zwischen Scala middleware Entscheidungen?

Hinweis: Leider wurde diese Frage geschlossen, aber ich versuche, es zu halten, wenn jemand kommt mit der gleichen Frage.

Ich habe auf der Suche nach einer guten Lösung für die Entwicklung eines service in Scala, die sitzen zwischen den mobilen Geräten und bestehenden web-services.

Die aktuelle Liste der lebensfähigen Optionen sind:

Wahrscheinlich gibt es noch weitere Optionen gibt. Wie wird man entscheiden, welche zu benutzen? Was sind die Merkmale (entschuldigen Sie das Wortspiel 😉 eine gute Scala-middleware Wahl. Auf der einen Seite, ich möchte mich für Akka, denn es ist Teil des TypeSafe Scala-stack, aber auf der anderen, so etwas wie Finagle verfügt über eine Vielzahl von Bibliotheken und lässt Sanitär so einfach. Spray sieht nett und einfach zu verwenden.

Ratschlägen, Einsichten oder Erfahrungen wäre sehr dankbar. Ich bin sicher jemand muss habe einige Erfahrung mit einigen von diesen, dass Sie nicht Geist freigeben.

UPDATE:

Ich würde gerne für diese Frage geöffnet werden. Eine gute Antwort auf diese Frage werden helfen, neue Scalateers zu vermeiden, die im Zusammenhang Fallstricke.

UPDATE 2:

Dies sind meine eigenen Erfahrungen, da diese Frage:

Finagle - ich habe Finagle für ein Projekt und es ist rock solid.

Spray - In meinem neuesten Projekt bin ich mit Spray und ich bin sehr glücklich. Die neuesten Versionen basieren auf Akka 2, und Sie können es direkt mit dem Spray-can-Bibliothek, die beseitigt die Notwendigkeit für einen web-server. Spray ist ein Satz von Bibliotheken, anstatt einen Rahmen und ist sehr modular. Die Erfahren Sie mehr über Spray: REST auf Akka video gibt eine gute übersicht, und dieser blog Cakesolutions zeigt eine wirklich schöne Entwicklung Konzept und Architektur.

UPDATE 3:

Leben bewegt sich ziemlich schnell. Wenn Sie don ' T stop und umsehen, einmal in eine Weile, Sie könnte es verpassen. - Ferris Bueller

Diesen Tagen die Wahl hat, einfacher. Meiner bescheidenen Meinung nach-Spray hat den Kampf gewonnen. Es wird integriert in Akka, um das nächste Akka HTTP. Ich verwende das Spray jetzt an mehreren Projekten und kann ehrlich sagen, dass es toll und am besten unterstützten software, die ich jemals erlebt habe.

Diese keine Antwort auf die ursprüngliche Frage, aber zumindest gibt einige Hinweise darauf, warum ein Spray scheint die beste Wahl in den meisten Fällen. Es ist extrem flexibel, non-blocking, und sind sehr stabil. Es ist sowohl für client-side und server-side-Bibliotheken und eine große testkit. Außerdem haben Sie einen Blick auf diese Statistiken, um sich ein Bild über die Leistung: Web-Framework-Benchmarks

  • Vielen Dank für das hinzufügen von finagle @ErnestFriedman-Hill . Wenn Sie könnte, ich würde für Sie lieben, um zu erklären, warum Benutzer markiert diese Frage als nicht konstruktiv. Ich habe nicht verwendet eine der oben genannten Systeme in der Produktion noch, Sie haben verbrachten eine Woche auf die überprüfung Sie und andere, und würde geliebt haben, Einblicke in andere Erfahrungen.
  • Im Grunde, weil StackOverflow ist nicht ausgelegt für die Diskussion Fragen. Eine gute Frage ALSO hat eine spezifische, nachprüfbare Antwort, die man nicht offen zur Debatte. Ihnen ist durchaus respektabel Frage, aber es ist einfach nicht das, was SO sehen will. Dies sind drei Beispiele aus den FAQ, dass Sie eigentlich nicht hier Fragen: "Was ist deine Lieblings ______?" "Ich verwende ______ für ______, was verwenden Sie?" "Ich bin gespannt, ob sich andere Menschen fühlen wie ich es Tue." Ihre Fragen zu sein scheint, der eine Art hybrid aus diesen drei Gegenbeispiele.
  • Ich kann mich irren, aber vielleicht ist dies eine Frage, die nachvollziehbare Antwort. Als ich diese Frage stellte, landete ich mit Finagle. Das Projekt endete in Ordnung, und läuft wie ein Uhrwerk, aber ich bin immer noch Fragen, wenn ein Akka-basierten service hätte nicht besser sein können. Ich weiß immer noch nicht die Antwort, und hoffe wirklich, dass Sie die Herren betrachten die Wiedereröffnung.
  • Einen Tipp, wie man Fragen wie diese etwas gültig ist, Fragen Sie: "was sind die Unterschiede zwischen den beiden frameworks?"
InformationsquelleAutor Jack | 2012-01-13
Schreibe einen Kommentar