C++ distributed programming

MPI might be what you want: http://en.wikipedia.org/wiki/Message_Passing_Interface

There are C++ hooks available in boost: http://www.boost.org/doc/libs/1_39_0/doc/html/mpi.html

Here is an informative podcast about Open-MPI, which is an implementation of MPI: http://twit.tv/floss50


You might try ACE. It is a rather high-level open-source library that introduces quite a lot of abstractions.


Check the Enduro/X framework (https://github.com/endurox-dev/endurox) which basically is middleware for multi-processing. You may write your own cache service and consume it by client processes. It uses Posix queues for high performance IPC. It also have clustering options, so that you may consume some service (might be your cache) which physically runs on different machine. And client processes might event not know that it cache resists elsewhere, as all network abstraction is covered by Enduro/X framework.