Will not database coupling endangers loose coupling achieved through RabbitMQ ?

Asked by Roderick SUMBERS

As stated in NOVA developer's guide "RabbitMQ sits between any two Nova components and allows them to communicate in a loosely coupled fashion".

This seems a wonderful pattern to achieve scaleability/availability through inbuilt RabbitMQ mechanisms.

BUT it looks to my (novice as related to OpenStack code) eyes that in several occasions (for example, between API and COMPUTE), only RPC call is routed through a MQ Message AND ASSOCIATED DATA IS COMITTED TO THE DATABASE by the message sender, and then RETRIEVED by the RPC Message consumer.

As Complexity grows, coupling between components will raise through the database structure and shared data ; moreover, all components instance will have to share access to a central common database (oops for scalability).

If we want to keep the good points of RabbitMQ oriented design, shouldn't we rework some code to ensure that the components communicate ONLY THROUGH RabbitMQ, and not through a common database ?

Best regards to all of you who work on this wonderful project,

Roderick SUMBERS.

Question information

Language:
English Edit question
Status:
Answered
For:
OpenStack Compute (nova) Edit question
Assignee:
No assignee Edit question
Last query:
Last reply:
Revision history for this message
Vish Ishaya (vishvananda) said :
#1

Hi Roderick,

You are correct, and there are already plans to change this. We will be discussing it more at the design summit in a few weeks.

Vish

On Mar 28, 2011, at 6:05 AM, Roderick SUMBERS wrote:

> Question #150766 on OpenStack Compute (nova) changed:
> https://answers.launchpad.net/nova/+question/150766
>
> Description changed to:
> As stated in NOVA developer's guide "RabbitMQ sits between any two Nova
> components and allows them to communicate in a loosely coupled fashion".
>
> This seems a wonderful pattern to achieve scaleability/availability
> through inbuilt RabbitMQ mechanisms.
>
> BUT it looks to my (novice as related to OpenStack code) eyes that in
> several occasions (for example, between API and COMPUTE), only RPC call
> is routed through a MQ Message AND ASSOCIATED DATA IS COMITTED TO THE
> DATABASE by the message sender, and then RETRIEVED by the RPC Message
> consumer.
>
>
> As Complexity grows, coupling between components will raise through the database structure and shared data ; moreover, all components instance will have to share access to a central common database (oops for scalability).
>
> If we want to keep the good points of RabbitMQ oriented design,
> shouldn't we rework some code to ensure that the components communicate
> ONLY THROUGH RabbitMQ, and not through a common database ?
>
>
> Best regards to all of you who work on this wonderful project,
>
> Roderick SUMBERS.
>
> --
> You received this question notification because you are a member of Nova
> Core, which is an answer contact for OpenStack Compute (nova).

Revision history for this message
Roderick SUMBERS (rsumbers) said :
#2

Thanks Vish,
 Is there any way to specifically track down/ be informed of the followups of this design topic (bug report ?) when discussion advances, or will you publish news in this thread?
R.

Revision history for this message
Vish Ishaya (vishvananda) said :
#3

I have this flagged in my inbox to post something when there more information/blueprint, but in case i forget, try pinging in a couple weeks.

Vish

On Mar 28, 2011, at 11:41 AM, Roderick SUMBERS wrote:

> Question #150766 on OpenStack Compute (nova) changed:
> https://answers.launchpad.net/nova/+question/150766
>
> Status: Answered => Open
>
> Roderick SUMBERS is still having a problem:
> Thanks Vish,
> Is there any way to specifically track down/ be informed of the followups of this design topic (bug report ?) when discussion advances, or will you publish news in this thread?
> R.
>
> --
> You received this question notification because you are a member of Nova
> Core, which is an answer contact for OpenStack Compute (nova).

Revision history for this message
Tom vN (tomvn) said :
#4

Are you guys discussing this internally until the design summit or would you be interested in suggestions from the masses?

Revision history for this message
te sd (uddr333) said :
#5

I recognize correctly, your trouble i due to the fact that the line endpoints touch, but the traces are thick, so a notch is seen on the junction. See more detail here https://www.jewelrynest.com/designer-diamond-necklaces/classic-solid-gold-diamond-necklaces.html

Can you help with this problem?

Provide an answer of your own, or ask Roderick SUMBERS for more information if necessary.

To post a message you must log in.