asynkron/protoactor-go

Proto Actor - Ultra fast distributed actors for Go, C# and Java/Kotlin

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 39 minutes ago
Added to GitGenius on September 12th, 2026
Created on April 17th, 2016
Open Issues & Pull Requests: 52 (+0)
GitHub issues: Enabled
Number of forks: 572
Total Stargazers: 5,501 (+0)
Total Subscribers: 196 (+0)

Repository Insights (GitGenius)

Most active contributors

Sign in to see contributor activity.

Related repositories by overlapping contributors

No overlapping-contributor repos identified yet.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Issue API getrepoissuespagesummary failed: 429 Rate limit exceeded. Please try again later.

Detailed Description

Proto Actor is an actor model framework for Go that enables ultra-fast distributed computing with cross-platform support between Go and C#.

The project addresses the challenge of building concurrent and distributed systems by implementing the actor model, where independent actors communicate through message passing rather than shared state. Proto Actor builds on established technologies: it uses Protocol Buffers for serialization, gRPC streams for network transport, and Consul for clustering. This composition of existing tools rather than custom implementations provides network protocol tolerance and proven stability. The framework achieves high throughput, passing over two million messages per second between nodes while preserving message order.

Proto Actor suits teams building distributed systems who want to avoid vendor lock-in and maintain flexibility across platforms. The Go implementation is in beta with production users already, though the API may change before reaching version 1.0. Organizations migrating between platforms can continue running actor-based services across Go and C# simultaneously. The minimalistic API design prioritizes ease of use and performance over complex configuration patterns. Developers should be comfortable with explicit serialization concerns and Protocol Buffers rather than expecting automatic object marshaling.

The project maintains active community engagement through a Slack channel. Development follows a philosophy of composition over custom implementation, deliberately reusing proven technologies rather than building proprietary infrastructure. The codebase includes comprehensive testing infrastructure, with test execution configured to skip integration tests requiring external dependencies like Consul unless explicitly needed.