I used unix sockets since there is no single point server in theNo problem with using unix sockets, since we don't have any other way.
architecture. So all the client must know complete information about
the nodes in the cluster. And more over there is not much sync between
the nodes in the cluster. The communication is always between the
client (which requests for the data) and not among the data instances.
However if your systems don't create much socket descriptors , you can
Since the data is sharded we can not have joins on the data and if we
require join support we will have to sync with other nodes in the
cluster and then i think the event/poll will be of great use.
At present i classify the requests into node-level and cluster-level.
In node-level queries only one data instance is pinged and requested
for data and in the cluster-level queries all the nodes are pinged and
the aggregation of results is done at the client end.
Let me know if my reason is correct.