Frank.PulseFlow
1.0.28-preview
See the version list below for details.
dotnet add package Frank.PulseFlow --version 1.0.28-preview
NuGet\Install-Package Frank.PulseFlow -Version 1.0.28-preview
<PackageReference Include="Frank.PulseFlow" Version="1.0.28-preview" />
paket add Frank.PulseFlow --version 1.0.28-preview
#r "nuget: Frank.PulseFlow, 1.0.28-preview"
// Install Frank.PulseFlow as a Cake Addin #addin nuget:?package=Frank.PulseFlow&version=1.0.28-preview&prerelease // Install Frank.PulseFlow as a Cake Tool #tool nuget:?package=Frank.PulseFlow&version=1.0.28-preview&prerelease
PulseFlow Local Messaging
PulseFlow Local Messaging is a lightweight, high-performance messaging system that enables seamless communication
Table of Contents
Overview
PulseFlow Local Messaging is a lightweight, high-performance messaging system that enables seamless communication between different parts of an application. It's designed to be simple, flexible, and scalable, allowing for easy integration into any system architecture.
Key Features
- Lightweight: PulseFlow is a lightweight messaging system, with a small footprint and minimal resource requirements.
- High Performance: It's designed for high performance and scalability, capable of handling a vast volume of messages simultaneously.
- Asynchronous Communication: PulseFlow supports asynchronous data flow, allowing for non-blocking and concurrent message transmissions.
- Flexible and Adaptable: It's flexible and adaptable, capable of handling various types of messages and adapting its processing logic based on the nature and requirements of each message.
- Simple and Easy to Use: PulseFlow is simple and easy to use, with a straightforward API and minimal configuration requirements.
Illustration
graph TD
Pulse[Pulse: Data/Messages] -->|transmitted via| Conduit[Conduit: Message Pathway]
Conduit -->|delivered to| Nexus[Nexus: Processing Service]
Nexus -->|processed by| PulseFlow[PulseFlow: Message Handler]
PulseFlow -->|manipulates| Pulse
In this Mermaid diagram:
- Pulse is shown as the starting point for data/messages.
- Conduit is represented as the pathway for transmitting messages.
- Nexus is the central processing service.
- PulseFlow is depicted as handling and manipulating the messages.
When you include this in a GitHub Markdown file, GitHub will render the Mermaid diagram as a visual graph. Remember to remove the extra backticks (```) in the beginning and end when adding this to your README.
Use Cases
PulseFlow is a general-purpose messaging system that can be used in a wide variety of applications. It's particularly useful in scenarios where there's a need for asynchronous communication between different parts of the system.
Getting Started
This section provides a quick guide on how to get started with PulseFlow Local Messaging.
Installation
PulseFlow is available as a NuGet package, which can be installed using the following command:
dotnet add package Frank.PulseFlow
Concepts
This section provides an in-depth explanation of the key concepts and components within the system: Nexus, Conduit, Pulse, and PulseFlow. Understanding these concepts is crucial for grasping how the system operates and interacts with data.
Nexus
The Nexus is the central hub of our messaging system, analogous to a neural network's core. It serves as the primary processing service, where all data messages, or 'Pulses', are received, interpreted, and routed to their respective destinations.
- Role: Nexus acts as the orchestrator within the system, managing the flow of messages and ensuring that each one is processed according to predefined rules and logic.
- Functionality: It handles various tasks like message validation, transformation, and decision-making on how and where messages should be directed post-processing.
- Scalability and Performance: Designed for high performance and scalability, Nexus can handle a vast volume of messages simultaneously, ensuring minimal latency and high throughput in data processing.
Conduit
The Conduit represents the pathway through which messages, or 'Pulses', are transmitted within the system. It's the messenger that ensures the delivery of data from one point to another.
- Mechanism: Conduit facilitates the smooth and efficient transport of messages across different parts of the system.
- Reliability and Integrity: Ensuring data integrity, Conduit maintains the fidelity of the messages as they traverse through various processes.
- Asynchronous Communication: It supports asynchronous data flow, allowing for non-blocking and concurrent message transmissions, which is key for a responsive and efficient system.
Pulse
Pulse is the term used to describe the individual units of data or messages that flow through the system.
- Data Encapsulation: Each Pulse is a packet of information, encapsulating the necessary data in a well-defined format.
- Types and Variability: Pulses can vary in type and structure, ranging from simple text messages to complex data structures, each tailored to carry specific information relevant to its intended process.
- Lifecycle: The lifecycle of a Pulse includes its creation, transmission through the Conduit, processing in the Nexus, and final delivery or action as dictated by the system's logic.
PulseFlow
PulseFlow is the sophisticated mechanism responsible for handling and manipulating the Pulses as they move through the system.
- Message Handling: It's specifically designed to process each Pulse, applying necessary transformations, routing, and any other required operations.
- Flexibility and Adaptability: PulseFlow is adept at handling various types of Pulses, capable of adapting its processing logic based on the nature and requirements of each message.
- Integration Point: Acting as a key integration point within the system, it ensures that Pulses are managed efficiently and effectively, readying them for their next phase in the data journey.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net7.0
- Microsoft.Extensions.Hosting.Abstractions (>= 7.0.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Frank.PulseFlow:
Package | Downloads |
---|---|
Frank.PulseFlow.Logging
This is a ILogger{T} compatible "sink" for logs that can be "hooked into", to allow to listen to logging however you wish. PulseFlow uses Channel -mechanism for internal messaging |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
2.0.8-preview | 109 | 3/3/2024 |
2.0.0 | 370 | 2/4/2024 |
1.7.7-preview | 91 | 2/4/2024 |
1.7.0 | 520 | 1/21/2024 |
1.6.5-preview | 106 | 1/21/2024 |
1.6.4-preview | 111 | 1/21/2024 |
1.6.3-preview | 104 | 1/19/2024 |
1.6.0 | 273 | 1/14/2024 |
1.5.0 | 555 | 12/31/2023 |
1.4.1-preview | 118 | 12/31/2023 |
1.4.0 | 142 | 12/19/2023 |
1.3.46-preview | 117 | 12/19/2023 |
1.3.44-preview | 109 | 12/15/2023 |
1.3.0 | 563 | 12/15/2023 |
1.2.36-preview | 118 | 12/14/2023 |
1.2.1.41-preview | 116 | 12/15/2023 |
1.2.1.39-preview | 114 | 12/15/2023 |
1.2.1 | 141 | 12/14/2023 |
1.1.0 | 136 | 12/14/2023 |
1.0.28-preview | 107 | 12/14/2023 |
1.0.15-preview | 131 | 12/14/2023 |
1.0.10-preview | 125 | 12/14/2023 |
1.0.8-preview | 124 | 12/14/2023 |
1.0.0 | 134 | 12/14/2023 |
2023-12-14:
1.0 Initial release of PulseFlow
1.1 Added support for .NET 7.0 and .NET 8.0