项目作者: vlingo-net

项目描述 :
The reactive, scalable, and resilient Object, CQRS, and Event Sourcing storage and projection tool for services and applications built on the VLINGO/PLATFORM.
高级语言: C#
项目地址: git://github.com/vlingo-net/xoom-net-symbio.git
创建时间: 2019-05-12T17:08:34Z
项目社区:https://github.com/vlingo-net/xoom-net-symbio

开源协议:Mozilla Public License 2.0

下载


xoom-net-symbio

Build status
Build master
NuGet
Gitter

The reactive, scalable, and resilient CQRS storage and projection tool for services and applications built on the vlingo/platform.

Name

The name “symbio” highlights the symbiotic relationship between domain models and persistence mechanisms.
Domain models must be persisted and individual parts must be reconstituted to memory when needed. Persistence
mechanisms crave data to store. Hence we can conclude that the two need and benefit from the other.

Interestingly too is that the name “symbio” ends with the letters, i and o, for input and output.
The StateStorage, introduced next, produces domain model output to disk, and input from disk back to
the domain model.

Journal Storage

The Journal and related protocols support simple-to-use Event Sourcing, including JournalReader for
streaming across all entries in the journal, and StreamReader for reaching individual “sub-streams”
belonging to entities/aggregates in your application. There is a growing number of implementations:

TODO: List implementations

Object Storage

The ObjectStore is a simple object-relational mapped storage mechanism that can be run against a number of
persistence engines. These are the available implementations:

TODO: List implementations

State Storage

The StateStore is a simple CQRS Key-CLOB/BLOB storage mechanism that can be run against a number of persistence engines.
Use it for both Command/Write Models and Query/Read Models. These are the available storage implementations:

  • In-memory binary: InMemoryBinaryStateStoreActor
  • In-memory text: InMemoryTextStateStoreActor

TODO: Add implementations

We welcome you to add support for your favorite database!

License (See LICENSE file for full license)

Copyright © 2012-2021 VLINGO LABS. All rights reserved.

This Source Code Form is subject to the terms of the
Mozilla Public License, v. 2.0. If a copy of the MPL
was not distributed with this file, You can obtain
one at https://mozilla.org/MPL/2.0/.