Message queues and databases


#1

Hey Guys,

I know a lot of banks use message queues to pass messages (IBM MQ :scream:, RabbitMQ :rabbit2: etc) between their various components. Give your microservices style setup are you doing the same or making direct calls to each service using some form of service discovery?

I know you’re also evaluating databases for your current account service. If it is not too sensitive I’m sure the community would enjoy a blog post about your evaluations and conclusions :grin:

Jim


(Alex Sherwood) #2

I’m not sure if this directly answers your question about message queues but it sounds like you might be interested in this talk from Simon who discusses several of the services & databases that :mondo: uses.


(simon) #3

We’ve replatformed since i gave this talk. We used to use Rabbit MQ for RPC (remote procedure calls) between our services, and NSQ for Asynchronous messaging. :rabbit:

Since we moved onto Kubernetes :heart: we swapped out Rabbit for Linkerd which uses HTTP. We’re also planning on switching out NSQ for Kafka at some point.

IBM MQ is used for inter-bank-messaging :slight_smile:

As a touch typer, the first thing i do when i get a new machine is re-bind CAPSLOCK to CTRL, a decision i’m beginning to regret since we started working on systems that date from the EBCDIC era.


#4

Ah cool. So let’s see if I have this straight…

If I were, for example, an API frontend server, and I need to get the balance for a given user I would make RPC calls to linkerd rather than directly to the customer and account services (for example). Essentially meaning you don’t need to worry about service discovery beyond where my nearest friendly linkerd node is?

What does linkerd give you over Rabbit MQ?

EBCDIC :frowning2: You poor people.


(Oliver Beattie) #5

Yep, that’s right. :thumbsup: linkerd in turn gets discovery information from the Kubernetes API.

linkerd gives us much more sophisticated load balancing and fault tolerance because it’s built on Twitter’s Finagle. You can read more about these on the Finagle website, but it’s pretty cool. :muscle:


#6

Thanks guys, very cool - will check linkerd out!


(Alex Sherwood) #7

@JimBlizz just in case you’ve missed this, Oliver’s just published a new blog post which goes into this in more detail


#8

Thanks @alexs! That is just the sort of thing I’m interested in. :sunglasses: