2 releases
0.3.0 | Sep 20, 2022 |
---|
#1055 in WebAssembly
1MB
31K
SLoC
THE COSMIC HYPERVERSE
cosmic-hyperverse
is part of THE COSMIC INITIATIVE a WebAssembly orchestration framework.
The Cosmic Hyperverse is the infrastructure component of The Cosmic Initiative framework that orchestrates and enforces security. It is responsible for making the universe painless to extend by supplying goodies such as provisioning, sharding, load balancing, routing, discovery & of course security.
WORK IN PROGRESS
this framework is a work in progress and not ready for production. And it is not yet fully documented for feedback and discussion . right now there is little in the way of Drivers other than creating a few generic Particles and passing Waves between them
BUILDS ON THE COSMIC UNIVERSE
The concepts in the cosmic-hyperverse
package build upon the concepts in the cosmic-universe
package so familiarity with The Cosmic Universe is recommended before grappling with Hyperversal concepts.
TERMS
To avoid name collision with other domain many concepts in The Cosmic Initiative are given names from Astro Physics concepts:
- Hyperverse - A Platform implementation of The Cosmic Initiative.
- Star - A node/container for managing state and execution of Particles.
The Hyperverse distributes its provisioning of Particles amongst its Stars in order to spread computation load for storage, cpu & memory. - Lane - Stars are connected via Lanes which serves as the transit mechanism for Waves
- Machine - Although Stars are the 'node' component for managing Particles--the stars are more of 'virtual nodes' that live inside a Machine. The Machine will connect the internal Lanes between Stars, provide a service Stars within other Machines to connect & the Machine manages clients on behalf of its stars that are required to connect to other external Stars. This architecture facilitates the rearrangement of infrastructure without the Stars needing any special knowledge of the Hyperverse cluster that it resides in. For example in the standalone configuration ALL of the Stars execute on one Machine, and in yet another configuration each Star may have it's own Machine but in both cases the Stars see the Hyperverse the same without needing any special knowledge of how the Hyperverse cluster is composed.
- Registry - The Registry holds important information on where a Particle lives and security rules. It is used by the Hyperversal dimension to route Waves and synchronize the provisioning of Particles
- Driver Particles are supported through Drivers. Each Kind has exactly one Driver. Drivers dwell within Stars
HYPERVERSE COMPOSITION
To create a new Hyperverse composition (which means you are creating a new Platform) you need to implement the Hyperverse trait. An incomplete example can be found in the test package. It's incomplete because not every feature is needed for testing at this moment, however, it does show how the DriverFactories are created and a basic in memory registry.
MACHINE
A Point of interest is how the Machine works. It relies heavily on the Hyperverse to provide it with all of its customizations.
DRIVER EXAMPLE
A ver simple example of a Driver is the BaseDriver. It does nothing but allows other particles to be created as children in it's point hierarchy.
MORE TO COME
More documentation will be forthcoming on the cosmic-hyperverse
as it is tested in it's first Starlane
reference implementation
Dependencies
~16–28MB
~454K SLoC