Distributed RPC is used to query on and retrieve results from Trident topology on the fly. Storm has an in-built distributed RPC server. The distributed RPC server receives the RPC request from the client and passes it to the Storm topology. The topology processes the request and sends the result to the distributed RPC server, which is redirected by the distributed RPC server to the client.
We can configure the distributed RPC server by using the following properties in the storm.yaml file:
drpc.servers: - "nimbus-node"
Here, nimbus-node is the IP of the distributed RPC server.
Now, run this command on the nimbus-node machine to start the distributed RPC server:
> bin/storm drpc
Let's assume we are storing the count aggregation of hello world Trident topology in a database and want to retrieve the count for a given country on the fly....