.githubTwitter OSS: Add ISSUE_TEMPLATEChristopher Coco9 months ago
docfinagle-docs: Add Http Headers to protocol sectionJordan Parker1 day ago
finagle-base-httpfinagle-*: Refactor HttpNackFilter and expose its RoleBryce Anderson9 days ago
finagle-benchmarkfinagle-ostrich4: Remove from the projectKevin Oliver2 days ago
finagle-benchmark-thrift/src/main/thriftfinagle-benchmark: Move the thrift out to work around the nested object bugNik Shkrob1 year ago
finagle-coreMake TraceInitializerFilter visibleNikolaj Hald Nielsen2 days ago
finagle-examplefinagle-ostrich4: Remove from the projectKevin Oliver2 days ago
finagle-exceptionfinagle-core: Remove deprecated ClientBuilder methodsJillian Crossley4 months ago
finagle-expfinagle-exp: Fix log levels on failures in DarkTrafficFilterKevin Oliver9 days ago
finagle-httpfinagle: Fix Java API for withStackKevin Oliver1 day ago
finagle-http2finagle-http2: Fix out of order client stream ID bugJordan Parker3 days ago
finagle-integrationfinagle-netty4: Do not leak Netty 4 byte buffers into the application codeVladimir Kostyukov6 days ago
finagle-memcachedfinagle: Fix Java API for withStackKevin Oliver1 day ago
finagle-muxfinagle-mux: Add counter for TReq messagesJordan Parker3 days ago
finagle-mysqlfinagle: Fix Java API for withStackKevin Oliver1 day ago
finagle-netty4finagle-netty4: Run the Netty4ProxyHandler connect promise laterVladimir Kostyukov1 day ago
finagle-netty4-httpfinagle-netty4: Remove Shared variants of BufAsByteBuf and ByteBufAsBufVladimir Kostyukov6 days ago
finagle-redisfinagle: Fix Java API for withStackKevin Oliver1 day ago
finagle-serversetsfinagle-serversets: Fix AddressOrderingRuben Oanta18 days ago
finagle-statsfinagle-*: update BUILD files to avoid deprecated syntaxDaniel Schobel1 month ago
finagle-thriftfinagle: Fix Java API for withStackKevin Oliver1 day ago
finagle-thriftmuxfinagle-thriftmux: Add withStack and filtered to ServerYufan Gong6 days ago
finagle-toggledocs: Use https links for githubKevin Oliver14 days ago
finagle-tunablefinagle-tunable, util-tunable: Set TunableMap source for maps composing StandardTunableMapJillian Crossley16 days ago
finagle-zipkinfinagle-zipkin: Update README to use Finagle 6 APIsKevin Oliver17 days ago
finagle-zipkin-coresource: Deprecate com.twitter.util.NonFatalVladimir Kostyukov4 months ago
projectfinagle-ostrich4: Remove from the projectKevin Oliver2 days ago
sitefinagle: Add links to blog from docsKevin Oliver8 days ago
.gitignorefix broken WatermarkPool link in doc, also add *.pyc to .gitignoreDi Xu2 years ago
.mailmapadd a .mailmapmarius a. eriksen5 years ago
.travis.ymlfinagle-ostrich4: Remove from the projectKevin Oliver2 days ago
ADOPTERS.mdfinagle: Add Fitbit to ADOPTERS.mdAlexander Pakulov25 days ago
CHANGESfinagle: Fix Java API for withStackKevin Oliver1 day ago
CONFIG.iniFix some lint errors in CONFIG.ini and OWNERS - missing newlines - trailing whitespaceEitan Adler1 year ago
CONTRIBUTING.mddocs: update CONTRIBUTING.mdKevin Oliver3 days ago
CONTRIBUTORS[split] finagle-doc: beginnings of a finagle user's guidemarius a. eriksen4 years ago
GROUPS[split] Use new git-review with simplified OWNERS/GROUPSmarius a. eriksen5 years ago
LICENSEProject scaffoldingNick Kallen6 years ago
OWNERSfinagle: dschobel to root ownersDaniel Schobel3 months ago
README.mdfinagle: Add links to blog from docsKevin Oliver8 days ago
link-netty.sh[split] finagle-core: introduce Transports and Dispatchersmarius a. eriksen5 years ago
pushsite.bashcsl: Fix Finagle pushsite for 2.12Jillian Crossley4 months ago
sbtUpdate docs on contributingKevin Oliver7 months ago


Build status Codecov branch Project status Gitter Maven Central


This project is used in production at Twitter (and many other organizations), and is being actively developed and maintained.

Finagle logo


Releases are done on an approximately monthly schedule. While semver is not followed, the changelogs are detailed and include sections on public API breaks and changes in runtime behavior.

Getting involved

  • Website: https://twitter.github.io/finagle/
  • Source: https://github.com/twitter/finagle/
  • Mailing List: finaglers@googlegroups.com
  • Chat: https://gitter.im/twitter/finagle
  • Blog: https://finagle.github.io/blog/

Finagle is an extensible RPC system for the JVM, used to construct high-concurrency servers. Finagle implements uniform client and server APIs for several protocols, and is designed for high performance and concurrency. Most of Finagle’s code is protocol agnostic, simplifying the implementation of new protocols.

For extensive documentation, please see the user guide and API documentation websites. Documentation improvements are always welcome, so please send patches our way.


The following are a few of the companies that are using Finagle:

For a more complete list, please see our adopter page. If your organization is using Finagle, consider adding a link there and sending us a pull request!


We feel that a welcoming community is important and we ask that you follow Twitter's Open Source Code of Conduct in all interactions with the community.

The master branch of this repository contains the latest stable release of Finagle, and weekly snapshots are published to the develop branch. In general pull requests should be submitted against develop. See CONTRIBUTING.md for more details about how to contribute.

About FluentSend Feedback