github.com/porthos-rpc/porthos-go (go): Package porthos is a RPC library for the Go programming language that operates over AMQP.  The client is very simple. NewClient takes a broker, a service name and a timeout value (message TTL). The service name is only intended to serve as the request routing key (meaning every service name (or microservice) has its own queue). Each client declares only one response queue, in order to prevent broker's resources wastage.  The server also takes a broker and a service name. After that, you Register all your handlers and finally ListenAndServe.  Extensions can be used to add custom actions to the RPC Server. The available "events" are incoming and outgoing.  Then you just have to add the extension to the server:  This extension will ship metrics to the AMQP broker, any application can consume and display them as needed.  Access Log Extension
Keywords: amqp|broker|rpc-client|rpc-library|rpc-server