<div dir="ltr"><br><div class="gmail_extra">I want to propose the following changes to implement the local executor and removal of the local engine. As mentioned before, oslo.messaging includes a "fake" driver that uses a simple queue. An example in the use of this fake driver is demonstrated in test_executor. The use of the fake driver requires that both the consumer and publisher of the queue is running in the same process so the queue is in scope. Currently, the launcher for both the api/engine and the executor are launched on separate processes. </div>
<div class="gmail_extra"><br></div><div class="gmail_extra">Here're the proposed changes.</div><div class="gmail_extra">1) Rewrite the launch script to be more generic which contains option to launch all components (i.e. API, engine, executor) on the same process but over separate threads or launch each individually.</div>
<div class="gmail_extra">2) Move transport to a global variables, similar to global _engine and then shared by the different component.</div><div class="gmail_extra">3) Modified the engine and the executor to use a factory method to get the global transport</div>
<div class="gmail_extra"><br></div><div class="gmail_extra">This doesn't change how the workflows are being processed. It just changed how the services are launched.</div><div class="gmail_extra"><br></div><div class="gmail_extra">
Thoughts?</div><div class="gmail_extra">Winson</div><div class="gmail_extra"><br></div><div class="gmail_extra"><br></div></div>