A blazingly fast, low-latency actor engine written in Go for building highly concurrent and distributed systems.
Hollywood is a high-performance actor engine written in Go that implements the Actor Model for building highly concurrent and distributed systems. It enables developers to create scalable, fault-tolerant applications through message-passing between independent actors, with a focus on speed and low latency.
Go developers building low-latency, high-throughput systems such as game servers, trading engines, advertising brokers, or any distributed application requiring robust concurrency.
Developers choose Hollywood for its exceptional performance (10 million messages/second), lightweight design, and built-in support for clustering, remote actors, and WebAssembly compilation, all while maintaining simplicity and extensibility.
Blazingly fast and light-weight Actor engine written in Golang
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Benchmarks show 10 million messages per second using optimized protobuf and dRPC transport, as highlighted in the README, making it ideal for low-latency applications like trading engines.
Guaranteed message delivery via buffer mechanisms and actor supervision hierarchies ensures system resilience, even on actor failure, as described in the features section.
Supports fire-and-forget, request-response, or both messaging styles, allowing developers to tailor communication to specific use cases without overhead.
Enables self-discovering actors across networks for scalable deployments, with examples in the remote and chat examples demonstrating distributed capabilities.
Compiles to WebAssembly for both GOOS=js and wasm32, extending usability to web and embedded environments, a unique feature noted in the README.
Remote communication requires protobuf definitions for serialization, adding setup complexity compared to local-only use, as admitted in the quickstart section for remote actors.
As a newer project, it lacks the extensive tooling, libraries, and community support of established actor frameworks like Akka, which may hinder integration in complex systems.
Requires Golang 1.21 or higher, potentially blocking teams on older versions or legacy projects from adoption without upgrades.