Какие существуют распределенные системы с общим состоянием, которые могут обрабатывать объекты на родном языке?
Насколько я знаю, есть Терракота и Маглев. Есть ли другие?
5 ответов
Практически у каждого крупного поставщика есть один плюс несколько независимых поставщиков:
- memcached [1] - вездесущий, управляемый сообществом;
- Infinispan [2] - при поддержке JBoss с открытым исходным кодом;
- Velocity [3] - коммерческий (Microsoft), только в бета-версии, .NET;
- Gemfire [4] - коммерческий (VMWare)
- Согласованность [5] - коммерческая (Oracle)
- GigaSpaces XAP [6] - коммерческий
- ScaleOut [7] - коммерческий
- Терракота [8] - коммерческая
Обратите внимание, что между решениями для совместного использования состояний и решениями распределенного кэширования существует довольно тонкая грань. Я перечислил только те, которые хранят состояние в основной памяти, которые часто называют "сетками данных" на улице.
Надеюсь это поможет.
- [1] memcached.org
- [2] jboss.org/infinispan
- [3] blogs.msdn.com/b/velocity/
- [4] www.gemstone.com/products/gemfire
- [5] www.oracle.com/technetwork/middleware/coherence/overview/index.html
- [6] gigaspaces.com
- [7] www.scaleoutsoftware.com/products/scaleout-stateserver/
- [8] www.terracotta.org
memcache: многие крупные сайты используют его, включая Google AppEngine. Есть привязки к нему для всего под солнцем (в значительной степени;-)
Поскольку вы упомянули MagLev, очевидно, есть также GemStone/S, поверх которого построен MagLev, и GemFire, их продукт JVM/.NET/C++.
Memcached, пожалуй, наиболее часто используемый (так как их крупнейший пользователь Facebook на данный момент делит с ним 28 ТБ ОЗУ).