question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Missing detailed docs on RPC implementation (integration with other frameworks)

See original GitHub issue

Hi, I’m trying to implement support for RPC in my non-nameko service that connects to RabbitMQ (AMQP). I wasn’t able to find any description of how RPC exchange should happen.

I can see that Nameko is serializing RPC call to JSON - this is what I receive on subscriber side: {"kwargs": {}, "args": ["test string"]}. I’ve figured that the queue will be named as 'rpc-' + my_service_name. It seems that there is another exclusive queue created with GUID appended to it’s name, which I suppose is used for the response.

Do you have any docs or quick info on how exactly RPC exchange happens? It would save lots of reverse-engineering effort for anyone trying to integrate with nameko.

Thanks

Issue Analytics

  • State:closed
  • Created 7 years ago
  • Comments:16 (7 by maintainers)

github_iconTop GitHub Comments

4reactions
izmailoffcommented, Jan 11, 2018

I wrote a short article on RPC implementation in Nameko. It’s not exactly detailed as much as technical docs would be but explains enough to know how it works: http://izmailoff.github.io/architecture/rpc-revived/. Hopefully it will be useful for someone. Pls let know your feedback and if I missed anything if you read it. Cheers.

Read more comments on GitHub >

github_iconTop Results From Across the Web

REST vs. RPC: what problems are you trying to solve with ...
If you ask most software developers why they define and build APIs, they are likely to explain that they have an application that...
Read more >
or how REST is no longer the only respectable solution for APIs
I've used Gradle to build the code and Java 8 and Groovy to implement the servers/clients, but whatever stack you use, the procedure...
Read more >
4. Integration - Building Microservices [Book] - O'Reilly
First, we are allowing external parties to view and bind to internal implementation details. The data structures I store in the DB are...
Read more >
JSON-RPC 2.0 Specification
1 Overview. JSON-RPC is a stateless, light-weight remote procedure call (RPC) protocol. Primarily this specification defines several data structures and the ...
Read more >
gRPC: Main Concepts, Pros and Cons, Use Cases | AltexSoft
gRPC is a framework for implementing RPC APIs via HTTP/2. ... various applications and opening your application for integration by others.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found