<div dir="ltr">Dims,<div><br></div><div>No problem with creating the specs, we just want to understand if the community is OK with our suggestions in general :)</div><div>If so, I'll create the appropriate specs and we'll discuss them :)</div>
<div><br></div><div>Thanks</div><div>-- Dina</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Jun 10, 2014 at 3:31 PM, Davanum Srinivas <span dir="ltr"><<a href="mailto:davanum@gmail.com" target="_blank">davanum@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Dina, Alexey,<br>
<br>
Do you mind filing some spec(s) please?<br>
<br>
<a href="http://markmail.org/message/yqhndsr3zrqcfwq4" target="_blank">http://markmail.org/message/yqhndsr3zrqcfwq4</a><br>
<a href="http://markmail.org/message/kpk35uikcnodq3jb" target="_blank">http://markmail.org/message/kpk35uikcnodq3jb</a><br>
<br>
thanks,<br>
dims<br>
<div><div class="h5"><br>
On Tue, Jun 10, 2014 at 7:03 AM, Dina Belova <<a href="mailto:dbelova@mirantis.com">dbelova@mirantis.com</a>> wrote:<br>
> Hello, stackers!<br>
><br>
><br>
> Oslo.messaging is future of how different OpenStack components communicate<br>
> with each other, and really I’d love to start discussion about how we can<br>
> make this library even better then it’s now and how can we refactor it make<br>
> more production-ready.<br>
><br>
><br>
> As we all remember, oslo.messaging was initially inspired to be created as a<br>
> logical continuation of nova.rpc - as a separated library, with lots of<br>
> transports supported, etc. That’s why oslo.messaging inherited not only<br>
> advantages of now did the nova.rpc work (and it were lots of them), but also<br>
> some architectural decisions that currently sometimes lead to the<br>
> performance issues (we met some of them while Ceilometer performance testing<br>
> [1] during the Icehouse).<br>
><br>
><br>
> For instance, simple testing messaging server (with connection pool and<br>
> eventlet) can process 700 messages per second. The same functionality<br>
> implemented using plain kombu (without connection pool and eventlet)  driver<br>
> is processing ten times more - 7000-8000 messages per second.<br>
><br>
><br>
> So we have the following suggestions about how we may make this process<br>
> better and quicker (and really I’d love to collect your feedback, folks):<br>
><br>
><br>
> 1) Currently we have main loop running in the Executor class, and I guess<br>
> it’ll be much better to move it to the Server class, as it’ll make<br>
> relationship between the classes easier and will leave Executor only one<br>
> task - process the message and that’s it (in blocking or eventlet mode).<br>
> Moreover, this will make further refactoring much easier.<br>
><br>
> 2) Some of the drivers implementations (such as impl_rabbit and impl_qpid,<br>
> for instance) are full of useless separated classes that in reality might be<br>
> included to other ones. There are already some changes making the whole<br>
> structure easier [2], and after the 1st issue will be solved Dispatcher and<br>
> Listener also will be able to be refactored.<br>
><br>
> 3) If we’ll separate RPC functionality and messaging functionality it’ll<br>
> make code base clean and easily reused.<br>
><br>
> 4) Connection pool can be refactored to implement more efficient connection<br>
> reusage.<br>
><br>
><br>
> Folks, are you ok with such a plan? Alexey Kornienko already started some of<br>
> this work [2], but really we want to be sure that we chose the correct<br>
> vector of development here.<br>
><br>
><br>
> Thanks!<br>
><br>
><br>
> [1]<br>
> <a href="https://docs.google.com/document/d/1ARpKiYW2WN94JloG0prNcLjMeom-ySVhe8fvjXG_uRU/edit?usp=sharing" target="_blank">https://docs.google.com/document/d/1ARpKiYW2WN94JloG0prNcLjMeom-ySVhe8fvjXG_uRU/edit?usp=sharing</a><br>

><br>
> [2]<br>
> <a href="https://review.openstack.org/#/q/status:open+owner:akornienko+project:openstack/oslo.messaging,n,z" target="_blank">https://review.openstack.org/#/q/status:open+owner:akornienko+project:openstack/oslo.messaging,n,z</a><br>

><br>
><br>
> Best regards,<br>
><br>
> Dina Belova<br>
><br>
> Software Engineer<br>
><br>
> Mirantis Inc.<br>
><br>
><br>
</div></div>> _______________________________________________<br>
> OpenStack-dev mailing list<br>
> <a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
> <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
><br>
<span class="HOEnZb"><font color="#888888"><br>
<br>
<br>
--<br>
Davanum Srinivas :: <a href="http://davanum.wordpress.com" target="_blank">http://davanum.wordpress.com</a><br>
<br>
_______________________________________________<br>
OpenStack-dev mailing list<br>
<a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
</font></span></blockquote></div><br><br clear="all"><div><br></div>-- <br><div dir="ltr"><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)"><p style="font-size:small;margin:0px;font-family:Helvetica">
Best regards,</p><p style="font-size:small;margin:0px;font-family:Helvetica">Dina Belova</p><p style="font-size:small;margin:0px;font-family:Helvetica">Software Engineer</p><p style="font-size:small;margin:0px;font-family:Helvetica">
Mirantis Inc.</p></div></div>
</div>