Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/captainjono/rxns
Fullstack micro-actor-services for Rx
https://github.com/captainjono/rxns
Last synced: 14 days ago
JSON representation
Fullstack micro-actor-services for Rx
- Host: GitHub
- URL: https://github.com/captainjono/rxns
- Owner: captainjono
- License: mit
- Created: 2016-11-11T07:21:38.000Z (about 8 years ago)
- Default Branch: vnext
- Last Pushed: 2022-12-08T07:39:43.000Z (almost 2 years ago)
- Last Synced: 2024-04-14T17:22:29.059Z (7 months ago)
- Language: C#
- Size: 6.02 MB
- Stars: 14
- Watchers: 3
- Forks: 0
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
- [1. Reactions](#1-reactions)
# 1. Reactions
*What?*
- *Multi*-Cloud Native
- Elastically scalable
- Reactive building blocks
- For Reliable & Maintainable
- Self-documenting, Cross-platform
-Micro Apps!
*And that means*?
Reactions makes building, maintaining and taming Reactive Apps a pleasure.
*How?*
Use the familiar Rx API to create reactive micro apps, that can scale horiztonally or vertically by implementing the Reactions building blocks & patterns.
*In Short!*
- Reactions are designed to grow with your app.
[Reactors](reactors.md) move seemlessly from [0InProsss, to OutOfProcess, to Cloud](cloudscaling.md) with ***zero-downtime*** in seconds- Reactions are a way of [seperating concerns in your app](strangleAMonolith.md), de-coupling your buisness logic from your service logic from your scaling logic. The micro-arcitecture reimagines all facets of your app with a micro-service lense.
- Reactions gives you [insight into your app](appstatus.md), exposing a rich set of a real-time diagnostics via its appstatus interface that can be accessed localy or remotely
- Reactions is [cloud native](CloudPatterns.md), without the cloud lock-in. Migrate from in-process to Cloud based Queues, ServiceBuses, Functions with basic code changes.
- Reactions support partially or fully event sourced architectures while providing deep insight into the event flow and bottlenecks in your App.Core motivations include:
* `IObservbale` everything
* All features wrapped in domain interfaces
* Testability and maintainability are a first order concern, along with speed and ergonomics
* Sensible defaults that are resillisant to failures in occasionally connected environments
* Take it as you come. Each building block can be taken in isolation or as a whole *Module*.
* Allows you dip your toes in the water before drinking the cool-aid and going all in.
* Without the cruft - *dependency free* on `.NET5`
* Has been PCL complient since `2013`
* Will always work on any platform that `.net` supports
* `.NET5+ .netCore / Full framework 4.6.1+ / Mono / Xamarin / etc`
* Modern IDE friendly with an API that is discoverable via *intellisense*. Just start typing `IRxn..` or `Rxn..` and your on your way...*....Philisophy?*
- Reactions belives some services shouldnt be outsourced and provides a base-layer of functionality critical to any reactive app. Made up of intelligently choosen patterns and practices that dont lock you in... The idea being, as your apps hockey-stick kicks' in, you can replace any of these core functions with Cloud managed services in a cost-effective, piecemeal way.*What capabilities does Reactions provide?*
* [Reactors](reactors.md)
* [AppStatus](appstatus.md)
* [DDD/CQRS](cloudpatterns.md)
* [DDD Aggegrates](dddaggs.md)
* [Domain Contexts](dddcontexts.md)
* [BuildingBlocks](buildingblocks.md)
* [RxnHosts](rxnhosts.md)
* [Cloud scaling](cloudscaling.md)
* [Docker support](rxncreate.md)
* [Real-time App Monitoring](scaling.md)
* [Task Scheduling](scheduler.md)
* [CI/DI](cicd.md)
* [Migration guide / strangle the monolith](strangleAMonolith.md)
* [ViewProcessors](ViewProcessors.md)
* [Azure Integration](rxnInAzure.md)
* [Cloud Costings](costings.md) *comming soon**Where or How should I apply Reactions to my code?*
* Creating app pipelines that are decoupled and well structured
* Creating micro-services that are [highly elastic](cloudscaling.md)
* Creating decoupled micro-frontends with `redux style`, `one-way` data->flows
* Creating high performance event sourced apps that run on commodity infrastructure
* Useful for [transitional architectures](strangleAMonolith.md), adding event driven components to legacy systems in a peice-meal fashion
* Remove bottlenecks in existing apps without going all in on cloud native concepts
* Offloading tasks from expensive `monoliths` / `database centeric systems`
* Sheilding your your `domain modal` / `app` from cloud lock-in