Distributed shared memory library for C++?

£可爱£侵袭症+ 提交于 2019-11-30 04:37:27

问题


I am writing a distributed application framework in C++. One of the requirements is the provision of distributed shared memory. Rather than write my own from scratch (and potentially re-invent the wheel), I thought I would see if there were any pre-existing Open source libraries - a quick google search did not yield anything to useful.

Does anyone on here have any experience of a good C++ DSM library that they can recommend?

Ideally, the library will support MRMW (Multiple readers/multiple writers), but I can make do with MRSW (Multiple readers, single writer) if need be. I am developing on Linux.


回答1:


Have you considered memcached ?

It is network distributed and it can be really fast.

It has bindings for lots of languages, you can access it from different OS and supports multiple writers multiple readers.




回答2:


Ace shared memory is for sharing on 1 platform.

Distributed Shared Memory is very much non-trivial as there are issues regarding transactionality to solve. To effectively use Distributed Shared Memory (even for a copy) you will find you need (among other things) distributed synchronization algorithms and protocols that need resiliency in the face of failure. (Shshooot! aint that always the way!)

Significant research papers have been written about these issues (see some of the chapter bibliographies of Taubenfield's book)

This is really a warning that "rolling your own" will be a significant project in and of itself.




回答3:


Try the ACE library, it has a lot of good stuff you'll like. They have a Shared_memory class in there but I'm not sure its a DSM - if not, they have plenty of other network/distributed stuff you might find interesting.



来源:https://stackoverflow.com/questions/1453878/distributed-shared-memory-library-for-c

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!