A Java library for building scalable, concurrent web applications using fibers and actors.
COMSAT is a Java library that provides fibers and actors for building scalable, concurrent web applications. It integrates with popular Java web frameworks and tools to simplify writing high-performance, non-blocking code. The project solves the complexity of traditional threading models by offering lightweight concurrency primitives.
Java developers building scalable web applications who need efficient concurrency handling and integration with frameworks like Spring, Dropwizard, or servlet containers.
Developers choose COMSAT for its seamless integration with existing Java ecosystems, lightweight fiber-based concurrency, and actor model support, which together simplify building high-performance web applications without deep expertise in low-level threading.
Fibers and actors for web development
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Seamlessly works with Spring, Dropwizard, Jersey, and servlet containers like Tomcat and Jetty, allowing easy adoption in existing Java projects without major rewrites.
Enables fiber-per-request servlets that handle more concurrent users with fewer threads, improving scalability over traditional blocking I/O.
Provides an actor model API for building HTTP, SSE, and WebSocket services, simplifying development of concurrent, message-driven web applications.
Includes fiber-blocking integrations for JDBC, JDBI, jOOQ, MongoDB, and HTTP clients like OkHttp, covering common dependencies in web apps.
Version 0.7.0 indicates it's not production-stable, with potential for breaking changes and limited long-term support, as noted in the release status.
With over 20 separate artifacts, integrating COMSAT requires careful selection and configuration of modules, increasing setup complexity and risk of conflicts.
Has a smaller ecosystem compared to established concurrency libraries, with fewer third-party tutorials, tools, and community-driven support channels.
Some setups, like using the Java agent for instrumentation, add deployment overhead and can be error-prone in containerized or restricted environments.