2010-10-28 9 views
7

Ich baue eine Community-Website mit Grails und ich möchte Benutzerbenachrichtigungen genau wie stackoverflow.com implementieren. Zum Beispiel wird der Benutzer über neue Ereignisse ('Sie haben neue Kommentare', 'einer Ihrer Favoriten hat sich geändert') per E-Mail oder in seinem Postfach benachrichtigt, wenn er auf die Website zurückkehrt.Beste Lösungsarchitektur für Benutzerbenachrichtigungen in der Java/Grails-Umgebung?

Ich nehme an, dass dies ein häufiges Problem ist und ich würde gerne hören, was einfache Lösung Sie Rat für die Implementierung der Back-End in Grails Bereich. Zum Beispiel ist Java Message Service eine empfohlene Lösung dafür?

Vielen Dank.

+1

definieren "einfache Lösung". –

Antwort

4

IMHO-Nr. Java Message Service ist im Grunde asynchrone oder in die Warteschlange gestellte Operationen durchzuführen.

Sie benötigen nur ein Benutzer-Messaging-System und Benachrichtigung. Ich bin mir nicht bewusst, dass es ein Plugin gibt, das es aus der Box tun kann.

Ich empfehle Ihnen, Ihre eigene Nachricht Domain POGO an Ihr Benutzermodell mit einem MarkAsRead Flag zu implementieren.

Wenn Sie dies mit E-Mail integrieren möchten, können Sie JMS verwenden, um die Benutzernavigation und E-Mail/Senden zu entkoppeln. Dies ist besonders nützlich, wenn Sie eine stark frequentierte Website/Webapp haben

+2

Ich würde nicht sagen, dass JMS absolut nicht der richtige Weg ist. Wenn Ihre Nutzerbasis bedeutend ist, ist es keine gute Idee, dass Ihre App auf E-Mails wartet, die für viele Nutzer gesendet werden. Es ist möglicherweise besser, die Benachrichtigungen an eine Warteschlange zu übertragen und die Warteschlange einen Dienst für Sie bereitstellen zu lassen. Aber Sie können einfach beginnen, wie Sammy vorgeschlagen, und dann JMS später implementieren, sehr einfach. Vor allem, wenn Sie beginnen, die Arbeit auf eine Service-Ebene zu schieben. – Gregg

+0

Zustimmen. Aber ich denke, dass fabien7474 von der Welt "Message" in JMS getäuscht wurde, wenn man annimmt, dass es sich um eine Benutzer/E-Mail-Messaging-Management-Technologie handelt. – Sammyrulez

+0

Dies ist die Lösung, die ich gewählt habe. Vielen Dank. – fabien7474

Verwandte Themen