Обновление за август 2012:
Документация Akka значительно улучшена и теперь содержит много деталей о ее дизайне и архитектуре.
Оригинальный ответ (май 2010 г.)
Относительно Akka , я не нашел проектный документ как таковой, но недавняя серия постов в блоге " Мышление асинхронное - моделирование домена с использованием транзисторов Akka с Дебашиш Гош достаточно близко.
Вот некоторые существенные моменты в реализации.
- В основе Akka лежит философия «пусть разбивается» . Вы можете создавать иерархии супервизоров, которые будут отвечать за управление жизненными циклами ваших актеров. [...]
- account - это указатель на
Map
, который сохраняется в Redis. Здесь мы храним все счета, которые клиенты открывают хэшированные по номеру счета. [...]
- С помощью Akka вы также можете обеспечить перезапуск перехватывать, когда ваш репозиторий падает и автоматически перезапускается супервизором. postRestart - это ловушка, в которой мы повторно инициализируем структуру Map.
- Akka использует multiverse, реализацию STM на основе Java для обработки транзакций. В коде отметьте ваши транзакции, используя
atomic{}
, а базовый STM
позаботится об остальном.