Apple’s ServiceTalk is now open source! For the uninitiated, ServiceTalk is a JVM network application framework that is aimed at providing a common and extensible networking abstraction on top of a lower-level networking framework (for instance, Netty).
ServiceTalk embraces the fact that applications tend to be multi-faceted; they have a mixed requirement of high vertical scalability for some areas and ease of development (low concurrency endpoints) in other areas.
ServiceTalk provides different application level protocols to users, eg: HTTP/1.1, HTTP/2.0, gRPC. A design goal is to provide consistent APIs and features across these different protocols when possible to maximize reuse and minimize cognitive overhead making it easier to adopt ServiceTalk across multiple protocols. However, this ease of use does not come for free, it necessitates that ServiceTalk provides generic concepts that abstract protocol specifics.
As reported by InfoQ, the idea behind open-sourcing ServiceTalk is to provide building blocks to enable contributions from the Java community.