awesome-repositories.com
Blog
MCP
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetServeur MCPÀ proposNotre méthodologiePresse
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
dotnet avatar

dotnet/orleans

0
View on GitHub↗
10,789 stars·2,129 forks·C#·MIT·14 vuesdocs.microsoft.com/dotnet/orleans↗

Orleans

Orleans is a .NET distributed actor framework designed for building scalable, cloud-native applications. It implements a virtual actor model where entities with stable identities manage their own state and lifecycle across a cluster of servers.

The framework provides a distributed state management system with ACID transaction support and a distributed pub/sub streaming engine for real-time data processing. It distinguishes itself through location-transparent routing, automatic actor activation and deactivation, and elastic cluster scaling that redistributes workloads during node failures.

The system covers a broad set of capabilities including durable task scheduling, actor placement control, and distributed remote data caching. It also includes security features such as cluster communication encryption and request interception for authorization and logging.

The project includes command-line tools for binary builds and integrated parallel test execution for functional validation.

Features

  • Actor Models - Implements a virtual actor model where entities with stable identities manage their own state and lifecycle across a cluster.
  • Cluster Management and Elasticity - Automatically adds or removes servers from the cluster to recover from node failures without downtime.
  • Lifecycle Management - Controls the automatic activation, deactivation, and distribution of virtual actors to ensure high availability.
  • ACID Transaction Semantics - Ensures multiple state updates across different actors are processed atomically and consistently using ACID semantics.
  • Streaming Data Processing - Provides a managed system for processing continuous data streams in near-real time with checkpoints and batch delivery.
  • Distributed State Persistence - Persists actor-specific state to external storage to ensure durability and recovery across node failures.
  • Cloud Native Orchestration - Provides a cloud-native framework to automatically redistribute workloads and recover from node failures.
  • Silo-Based Distribution - Organizes the system into independent server units that automatically redistribute actor workloads during cluster membership changes.
  • Actor Lifecycle Management - Optimizes resource usage by automatically activating actors on request and deactivating them during inactivity.
  • Asynchronous Message Passing - Uses non-blocking request-response patterns for communication between actors to maximize throughput and prevent thread starvation.
  • Distributed State Management - Maintains consistent entity-specific state in memory across multiple servers with automatic distribution and persistence.
  • Location Transparency - Routes requests to actors by resolving their current server placement, abstracting the physical network location.
  • Pub-Sub Messaging - Implements a reliable pub/sub messaging system for decoupled producers and consumers with checkpointing support.
  • Cloud Native Development Frameworks - Provides a programming model for building resilient, elastic services that automatically handle state distribution.
  • Distributed Actor Frameworks - Provides a comprehensive .NET framework for building scalable cloud-native applications using a virtual actor model.
  • Distributed Pub-Sub Adapters - Provides a messaging architecture that synchronizes events and subscription memberships across multiple server instances.
  • Distributed Transaction Coordinators - Coordinates atomic transactions across multiple actors with serializable isolation without requiring a central coordinator.
  • Stateful Distributed Actors - Implements architectural patterns for persisting actor state to external storage while maintaining active data in memory.
  • Cluster Connectivity - Enables external processes to connect to a distributed cluster to invoke remote operations on actors.
  • Interface Versioning - Supports safe rolling updates by managing multiple versions of actor implementations across the cluster.
  • Placement Policies - Determines which server hosts specific actors using load-based or custom proximity policies.
  • Distributed Caches - Implements a shared memory layer that accelerates performance by caching results from external services across the cluster.
  • Real-Time Data Streaming - Processes real-time data streams via reliable pub/sub messaging with checkpoints and batch delivery.
  • Actor-Scoped Scheduling - Triggers periodic tasks within distributed actors to handle recurring logic or timeouts.
  • Task Scheduling - Allows actors to trigger periodic or delayed executions to handle recurring maintenance and timeouts.
  • Task Schedulers - Provides persistent background task scheduling that survives system failures and actor deactivations.
  • Durable Reminders - Provides durable reminders that ensure tasks execute at specific times even after actor deactivations.
  • Broadcast Messaging Channels - Provides one-to-many communication channels for broadcasting data streams to multiple subscribers using external providers.
  • Publish-Subscribe Messaging - Enables low-latency communication between distributed services through a reliable publish-subscribe streaming model.
  • Request Filter Integrations - Implements a pipeline of filters to intercept actor calls for cross-cutting concerns like logging and authorization.
  • Actor Placement Policies - Determines which server hosts a specific actor using configurable load-based or custom proximity policies.
  • Parallel Execution Units - Runs identical stateless logic units across multiple servers simultaneously to increase overall throughput.
  • Entity Routing Versioning - Allows requests to be routed to specific entity implementation versions for safe updates and varied configurations.
  • Durable Reminder Services - Ensures actions are triggered at specific future times even if the actor is not currently active in memory.
  • Actor Frameworks - Distributed virtual actor model framework.
  • Distributed Computing - Framework for building high-scale distributed computing applications.
  • Application Frameworks - Framework for building distributed high-scale computing applications.
  • Developer Utilities - Framework for building distributed, stateful cloud applications.

Historique des stars

Graphique de l'historique des stars pour dotnet/orleansGraphique de l'historique des stars pour dotnet/orleans

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Questions fréquentes

Que fait dotnet/orleans ?

Orleans is a .NET distributed actor framework designed for building scalable, cloud-native applications. It implements a virtual actor model where entities with stable identities manage their own state and lifecycle across a cluster of servers.

Quelles sont les fonctionnalités principales de dotnet/orleans ?

Les fonctionnalités principales de dotnet/orleans sont : Actor Models, Cluster Management and Elasticity, Lifecycle Management, ACID Transaction Semantics, Streaming Data Processing, Distributed State Persistence, Cloud Native Orchestration, Silo-Based Distribution.

Quelles sont les alternatives open-source à dotnet/orleans ?

Les alternatives open-source à dotnet/orleans incluent : akkadotnet/akka.net — Akka.NET is an actor model framework used for building concurrent and distributed applications. It functions as a… hazelcast/hazelcast — Hazelcast is a distributed data platform that combines an in-memory data grid with a stream processing engine to… quarkusio/quarkus — Quarkus is a Kubernetes-native Java framework designed for building high-performance, memory-efficient applications.… asynkron/protoactor-go — protoactor-go is a framework for building concurrent and distributed systems in Go using the actor model. It provides… tporadowski/redis — Redis is a high-performance in-memory key-value store that functions as a distributed cache, message broker, and NoSQL… dodyg/practical-aspnetcore — This project is a comprehensive sample library and implementation guide for ASP.NET Core. It provides a collection of…

Alternatives open source à Orleans

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Orleans.
  • akkadotnet/akka.netAvatar de akkadotnet

    akkadotnet/akka.net

    5,023Voir sur GitHub↗

    Akka.NET is an actor model framework used for building concurrent and distributed applications. It functions as a distributed computing platform and state manager that enables isolated actors to communicate via asynchronous message passing, ensuring thread-safe state management without manual locks. The project is distinguished by its decentralized coordination capabilities, including a distributed state manager that uses sharding and dynamic rebalancing to maintain high availability. It incorporates an event sourcing engine that persists state as a sequence of events in an append-only log an

    C#actoractor-modelakka
    Voir sur GitHub↗5,023
  • hazelcast/hazelcastAvatar de hazelcast

    hazelcast/hazelcast

    6,570Voir sur GitHub↗

    Hazelcast is a distributed data platform that combines an in-memory data grid with a stream processing engine to support real-time analytics and event-driven applications. It functions as a partitioned, distributed key-value store that replicates data across cluster nodes to provide low-latency access and high availability. The platform also serves as a distributed SQL query engine, allowing users to execute standard SQL statements against both in-memory datasets and external data sources. What distinguishes Hazelcast is its use of a distributed consensus subsystem to maintain strongly consis

    Javabig-datacachingdata-in-motion
    Voir sur GitHub↗6,570
  • quarkusio/quarkusAvatar de quarkusio

    quarkusio/quarkus

    15,479Voir sur GitHub↗

    Quarkus is a Kubernetes-native Java framework designed for building high-performance, memory-efficient applications. It utilizes ahead-of-time native compilation to transform Java code into standalone, optimized binaries that eliminate the need for a virtual machine, enabling rapid startup and reduced memory consumption. By performing code augmentation during the build phase, it shifts heavy processing tasks away from runtime, ensuring that applications are optimized for cloud-native environments. The framework distinguishes itself through a unified approach to reactive and imperative program

    Javacloud-nativehacktoberfestjava
    Voir sur GitHub↗15,479
  • asynkron/protoactor-goAvatar de asynkron

    asynkron/protoactor-go

    5,469Voir sur GitHub↗

    protoactor-go is a framework for building concurrent and distributed systems in Go using the actor model. It provides a distributed actor system that enables isolated entities to communicate via asynchronous messaging and share state across a cluster. The framework implements a multi-language actor protocol, allowing interoperability between actors written in Go, C#, and Java. It further supports a virtual actor implementation, where actors are automatically instantiated across a network based on a unique identity. The system includes a supervision model for managing actor lifecycles and fau

    Goactor-modelactorsakka
    Voir sur GitHub↗5,469
  • Voir les 30 alternatives à Orleans→