A robust set of tools. Simple to adopt. Simple to understand.
Our overarching vision for the vlingo/PLATFORM puts extreme emphasis on simplicity, and to support Domain-Driven Design and other approaches. With our platform components, preconfigured for common use cases, you can be productive within minutes. Seriously.
The type-safe Actor Model toolkit for Reactive concurrency, scalability, and resiliency using Java and other JVM languages. It serves as the foundation for our message-driven platform. Actors are objects, but without direct method invocations. Instead actors send and receive messages asynchronously. You send a message using simple, familiar, method invocation.
Reactive, scalable, and resilient HTTP servers and fluent RESTful services. It is small and fast; perfect for embedding into any given service, such as those using vlingo/actors, vlingo/lattice, and vlingo/symbio. Very lightweight, high-performing, asynchronous request-response for your DDD Bounded Context, highlighting your hard-earned Ubiquitous Language.
Tooling for Reactive Domain-Driven Design projects featuring highly concurrent models. Includes compute grid, actor/object caching, object spaces, cross-node cluster messaging, object aggregates, state aggregates, event sourced aggregates, CQRS with projections, messaging exchanges, and long-running processes (aka Sagas), and scheduled tasks.
Reactive persistence component supporting object, key-value, and journal storage, featuring Event Sourcing and CQRS. The name highlights the symbiotic relationship between models and persistence. Our strong opinion is that your team should choose your persistence types, and that’s why we provide variety rather than limiting your choices.
The vlingo/schemata component is a schema registry. It provides the means for Bounded Contexts, al la services and applications, built using other components, to publish standard types, or schemas, that are made available to client services. The published standard types in the registry are arranged in an organizational, services, and type hierarchy.
The vlingo/cluster sits on top of vlingo/actors to support scalable and fault-tolerant tools, services, and applications. Additional tools that build out our platform will normally be constructed on top of vlingo/cluster. Additionally, you will implement and deploy your services/applications in clusters, and vlingo/lattice provides the grid caching and messaging.