awesome!<span></span><br><br>On Friday, 23 October 2015, Lukáš Fryč &lt;<a href="mailto:lukas.fryc@gmail.com">lukas.fryc@gmail.com</a>&gt; wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi guys,<div><br></div><div>as first major UPS release (1.1.0) with JMS-based token batching will be landing soon,</div><div><br></div><div>just wanted to document how it can be configured for optimal throughput and failover, just in case someone wants to play with that right now:</div><div><br></div><div><a href="https://docs.google.com/drawings/d/13IsJWPSJNYXtst-UVxQYmzH36C_EXQMYYr_jcu7nFmE/edit?usp=sharing" target="_blank">https://docs.google.com/drawings/d/13IsJWPSJNYXtst-UVxQYmzH36C_EXQMYYr_jcu7nFmE/edit?usp=sharing</a><br></div><div><br></div><div><a href="https://issues.jboss.org/browse/AGPUSH-1420" target="_blank">https://issues.jboss.org/browse/AGPUSH-1420</a></div><div><br></div><div><br></div><div>Cheers,</div><div><br></div><div>~ Lukas</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Apr 8, 2015 at 5:57 PM, Lukáš Fryč <span dir="ltr">&lt;<a href="javascript:_e(%7B%7D,&#39;cvml&#39;,&#39;lukas.fryc@gmail.com&#39;);" target="_blank">lukas.fryc@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Okay, first prototype is reading for testing and review: <a href="https://github.com/aerogear/aerogear-unifiedpush-server/pull/522" target="_blank">https://github.com/aerogear/aerogear-unifiedpush-server/pull/522</a><br><br><div class="gmail_quote">po 6. 4. 2015 v 20:17 odesílatel Jay Balunas &lt;<a href="javascript:_e(%7B%7D,&#39;cvml&#39;,&#39;jbalunas@redhat.com&#39;);" target="_blank">jbalunas@redhat.com</a>&gt; napsal:<div><div><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">This all sounds really good to me!  The priority would be wf/eap imo, with others if very easy, or if community members want to jump in and add their favorite.</div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Apr 3, 2015 at 7:54 AM, Sebastien Blanc <span dir="ltr">&lt;<a href="javascript:_e(%7B%7D,&#39;cvml&#39;,&#39;scm.blanc@gmail.com&#39;);" target="_blank">scm.blanc@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span>On Fri, Apr 3, 2015 at 1:50 PM, Matthias Wessendorf <span dir="ltr">&lt;<a href="javascript:_e(%7B%7D,&#39;cvml&#39;,&#39;matzew@apache.org&#39;);" target="_blank">matzew@apache.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Cool stuff<div><br></div><div>I am totally fine having this tied ti wf/eap</div><div><br></div><div>wondering: at some point, should we offer a dist as (only) subststem for wf/eap?</div></blockquote></span><div>+1, I was exactly thinking the same, since we are tied to wf/eap, subsystem makes a lot of sense IMO</div><div><div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div><div><span></span><br><br>On Friday, April 3, 2015, Sebastien Blanc &lt;<a href="javascript:_e(%7B%7D,&#39;cvml&#39;,&#39;scm.blanc@gmail.com&#39;);" target="_blank">scm.blanc@gmail.com</a>&gt; wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">That all sounds very good :) <div>Thanks for the headupate, I will soon give it a try.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Apr 3, 2015 at 10:34 AM, Lukáš Fryč <span dir="ltr">&lt;<a>lukas.fryc@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi guys,<div><br></div><div>so as outlined in previous thread [1], I have prototyped a JMS batching approach for push message delivery.</div><div><br></div><div><br></div><div><br></div><div><br></div><div>We&#39;ve discussed the approach with Matthias, Mirek Novak and Ondrej Chaloupka (EAP QE &amp; JMS/JTA experts, thank you guys!) and these documents describes a concept that we have came with:</div><div><br></div><div>Diagram: <a href="https://docs.google.com/a/fryc.eu/drawings/d/13IsJWPSJNYXtst-UVxQYmzH36C_EXQMYYr_jcu7nFmE/edit?usp=sharing" target="_blank">https://docs.google.com/a/fryc.eu/drawings/d/13IsJWPSJNYXtst-UVxQYmzH36C_EXQMYYr_jcu7nFmE/edit?usp=sharing</a></div><div><br></div><div>Text Doc: <a href="https://docs.google.com/document/d/1X65P_U9O62Z5JZhKi9ZvBuZU1OrL4pNHNddlzJK6rMg/edit?usp=sharing" target="_blank">https://docs.google.com/document/d/1X65P_U9O62Z5JZhKi9ZvBuZU1OrL4pNHNddlzJK6rMg/edit?usp=sharing</a></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div>Implementation-wise, I&#39;ve so far prototyped the messaging part (split SenderService functionality to two subsequent queues with MDBs as shown on diagram),</div><div><br></div><div>but that&#39;s just a start, since we must configure it appropriately for efficiency (queue configuration and batch sizes) and verify that configuration works as expected,</div><div><br></div><div>the prototype lives on a branch (unpolished, to be squashed later): <a href="https://github.com/lfryc/aerogear-unifiedpush-server/tree/jms-batching" target="_blank">https://github.com/lfryc/aerogear-unifiedpush-server/tree/jms-batching</a></div><div><br></div><div>Off course, you can play with it already. :-)</div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div>Apart from the new requirement of using Java EE full profile (JMS), the prototype leverages implementation-specific configurations and APIs:</div><div><ul><li>org.hibernate.Query for token streaming / batch fetching</li><li>HornetQ configurations of queue size, blocking behavior and message de-duplication</li></ul><div>That pretty much binds us to WildFly/EAP - we can tweak it to run on any compliant app server, but without specific configurations it won&#39;t work properly.</div></div><div><br></div><div><br></div><div><br></div><div>Once configured and functionally tested (that can even wait for Beta2 I guess),</div><div><br></div><div>we can cooperate with Mobile QE on testing (Stefan, Adam), their test suite contains mocks of APNS/GCM against which we can load test.</div><div><br></div><div><br></div><div><br></div><div>Cheers!</div><div><br></div><div>~ Lukas</div><div><br></div><div><br></div><div>[1] <a href="http://aerogear-dev.1069024.n5.nabble.com/aerogear-dev-UnifiedPush-new-requirement-JMS-Java-EE-Full-profile-tp11268.html" target="_blank">http://aerogear-dev.1069024.n5.nabble.com/aerogear-dev-UnifiedPush-new-requirement-JMS-Java-EE-Full-profile-tp11268.html</a></div></div>
<br>_______________________________________________<br>
aerogear-dev mailing list<br>
<a>aerogear-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br></blockquote></div><br></div>
</blockquote></div></div></div><span><font color="#888888"><br><br>-- <br>Sent from Gmail Mobile<br>
</font></span><br>_______________________________________________<br>
aerogear-dev mailing list<br>
<a href="javascript:_e(%7B%7D,&#39;cvml&#39;,&#39;aerogear-dev@lists.jboss.org&#39;);" target="_blank">aerogear-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br></blockquote></div></div></div><br></div></div>
<br>_______________________________________________<br>
aerogear-dev mailing list<br>
<a href="javascript:_e(%7B%7D,&#39;cvml&#39;,&#39;aerogear-dev@lists.jboss.org&#39;);" target="_blank">aerogear-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/aerogear-dev</a><br></blockquote></div><br></div>
______________________________<u></u>_________________<br>
aerogear-dev mailing list<br>
<a href="javascript:_e(%7B%7D,&#39;cvml&#39;,&#39;aerogear-dev@lists.jboss.org&#39;);" target="_blank">aerogear-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/aerogear-dev" target="_blank">https://lists.jboss.org/<u></u>mailman/listinfo/aerogear-dev</a></blockquote></div></div></div></div></blockquote></div><br></div>
</blockquote><br><br>-- <br>Sent from Gmail Mobile<br>