Alternatives to Finagle logo

Alternatives to Finagle

Finatra, gRPC, Akka, Spring Boot, and Play are the most popular alternatives and competitors to Finagle.
67
92
+ 1
12

What is Finagle and what are its top alternatives?

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.
Finagle is a tool in the Concurrency Frameworks category of a tech stack.
Finagle is an open source tool with 8K GitHub stars and 1.4K GitHub forks. Here鈥檚 a link to Finagle's open source repository on GitHub

Top Alternatives to Finagle

  • Finatra

    Finatra

    At Twitter, Finagle provides the building blocks for most of the code written on the JVM. It has long-served as Twitter's extensible, protocol-agnostic, highly-scalable RPC framework. ...

  • gRPC

    gRPC

    gRPC is a modern open source high performance RPC framework that can run in any environment. It can efficiently connect services in and across data centers with pluggable support for load balancing, tracing, health checking... ...

  • Akka

    Akka

    Akka is a toolkit and runtime for building highly concurrent, distributed, and resilient message-driven applications on the JVM. ...

  • Spring Boot

    Spring Boot

    Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can "just run". We take an opinionated view of the Spring platform and third-party libraries so you can get started with minimum fuss. Most Spring Boot applications need very little Spring configuration. ...

  • Play

    Play

    Play Framework makes it easy to build web applications with Java & Scala. Play is based on a lightweight, stateless, web-friendly architecture. Built on Akka, Play provides predictable and minimal resource consumption (CPU, memory, threads) for highly-scalable applications. ...

  • Akka HTTP

    Akka HTTP

    The Akka HTTP modules implement a full server- and client-side HTTP stack on top of akka-actor and akka-stream. It鈥檚 not a web-framework but rather a more general toolkit for providing and consuming HTTP-based services. While interaction with a browser is of course also in scope it is not the primary focus of Akka HTTP. ...

  • RxJS

    RxJS

    RxJS is a library for reactive programming using Observables, to make it easier to compose asynchronous or callback-based code. This project is a rewrite of Reactive-Extensions/RxJS with better performance, better modularity, better debuggable call stacks, while staying mostly backwards compatible, with some breaking changes that reduce the API surface. ...

  • Netty

    Netty

    Netty is a NIO client server framework which enables quick and easy development of network applications such as protocol servers and clients. It greatly simplifies and streamlines network programming such as TCP and UDP socket server. ...

Finagle alternatives & related posts

Finatra logo

Finatra

34
45
13
Fast, testable, Scala services built on TwitterServer and Finagle, by Twitter
34
45
+ 1
13
PROS OF FINATRA
  • 7
    Fast
  • 6
    Easy
CONS OF FINATRA
    Be the first to leave a con

    related Finatra posts

    gRPC logo

    gRPC

    707
    837
    43
    A high performance, open-source universal RPC framework
    707
    837
    + 1
    43
    PROS OF GRPC
    • 17
      Higth performance
    • 10
      Easy setup
    • 9
      The future of API
    • 4
      Contract-based
    • 3
      Polyglot
    CONS OF GRPC
      Be the first to leave a con

      related gRPC posts

      Shared insights
      on
      Kafka
      gRPC
      at

      By mid-2015, Uber鈥檚 rider growth coupled with its cadence of releasing new services, like Eats and Freight, was pressuring the infrastructure. To allow the decoupling of consumption from production, and to add an abstraction layer between users, developers, and infrastructure, Uber built Catalyst, a serverless internal service mesh.

      Uber decided to build their own severless solution, rather that using something like AWS Lambda, speed for its global production environments as well as introspectability.

      See more
      Akka logo

      Akka

      733
      764
      79
      Build powerful concurrent & distributed applications more easily
      733
      764
      + 1
      79
      PROS OF AKKA
      • 29
        Great concurrency model
      • 15
        Fast
      • 10
        Actor Library
      • 9
        Open source
      • 6
        Resilient
      • 5
        Message driven
      • 5
        Scalable
      CONS OF AKKA
      • 3
        Mixing futures with Akka tell is difficult
      • 2
        Closing of futures
      • 2
        No type safety
      • 1
        Typed actors still not stable
      • 0
        Very difficult to refactor

      related Akka posts

      To solve the problem of scheduling and executing arbitrary tasks in its distributed infrastructure, PagerDuty created an open-source tool called Scheduler. Scheduler is written in Scala and uses Cassandra for task persistence. It also adds Apache Kafka to handle task queuing and partitioning, with Akka to structure the library鈥檚 concurrency.

      The service鈥檚 logic schedules a task by passing it to the Scheduler鈥檚 Scala API, which serializes the task metadata and enqueues it into Kafka. Scheduler then consumes the tasks, and posts them to Cassandra to prevent data loss.

      See more
      Shared insights
      on
      Akka
      Kafka

      I decided to use Akka instead of Kafka streams because I have personal relationships at @Lightbend.

      See more
      Spring Boot logo

      Spring Boot

      15.2K
      13.1K
      874
      Create Spring-powered, production-grade applications and services with absolute minimum fuss
      15.2K
      13.1K
      + 1
      874
      PROS OF SPRING BOOT
      • 131
        Powerful and handy
      • 122
        Easy setup
      • 115
        Java
      • 84
        Spring
      • 81
        Fast
      • 40
        Extensible
      • 33
        Lots of "off the shelf" functionalities
      • 28
        Cloud Solid
      • 22
        Caches well
      • 20
        Many receipes around for obscure features
      • 19
        Modular
      • 19
        Productive
      • 18
        Integrations with most other Java frameworks
      • 17
        Spring ecosystem is great
      • 17
        Fast Performance With Microservices
      • 15
        Community
      • 14
        Auto-configuration
      • 12
        Easy setup, Community Support, Solid for ERP apps
      • 12
        One-stop shop
      • 11
        Cross-platform
      • 11
        Easy to parallelize
      • 10
        Easy setup, good for build erp systems, well documented
      • 10
        Powerful 3rd party libraries and frameworks
      • 9
        Easy setup, Git Integration
      • 2
        Kotlin
      • 2
        It's so easier to start a project on spring
      CONS OF SPRING BOOT
      • 18
        Heavy weight
      • 17
        Annotation ceremony
      • 10
        Many config files needed
      • 8
        Java
      • 5
        Reactive
      • 4
        Excellent tools for cloud hosting, since 5.x

      related Spring Boot posts

      Is learning Spring and Spring Boot for web apps back-end development is still relevant in 2021? Feel free to share your views with comparison to Django/Node.js/ ExpressJS or other frameworks.

      Please share some good beginner resources to start learning about spring/spring boot framework to build the web apps.

      See more
      Praveen Mooli
      Engineering Manager at Taylor and Francis | 14 upvotes 路 1.8M views

      We are in the process of building a modern content platform to deliver our content through various channels. We decided to go with Microservices architecture as we wanted scale. Microservice architecture style is an approach to developing an application as a suite of small independently deployable services built around specific business capabilities. You can gain modularity, extensive parallelism and cost-effective scaling by deploying services across many distributed servers. Microservices modularity facilitates independent updates/deployments, and helps to avoid single point of failure, which can help prevent large-scale outages. We also decided to use Event Driven Architecture pattern which is a popular distributed asynchronous architecture pattern used to produce highly scalable applications. The event-driven architecture is made up of highly decoupled, single-purpose event processing components that asynchronously receive and process events.

      To build our #Backend capabilities we decided to use the following: 1. #Microservices - Java with Spring Boot , Node.js with ExpressJS and Python with Flask 2. #Eventsourcingframework - Amazon Kinesis , Amazon Kinesis Firehose , Amazon SNS , Amazon SQS, AWS Lambda 3. #Data - Amazon RDS , Amazon DynamoDB , Amazon S3 , MongoDB Atlas

      To build #Webapps we decided to use Angular 2 with RxJS

      #Devops - GitHub , Travis CI , Terraform , Docker , Serverless

      See more
      Play logo

      Play

      682
      495
      492
      The High Velocity Web Framework For Java and Scala
      682
      495
      + 1
      492
      PROS OF PLAY
      • 79
        Scala
      • 55
        Built on akka
      • 55
        Web-friendly architecture
      • 50
        Stateless
      • 47
        High-scalable
      • 46
        Fast
      • 39
        Open source
      • 34
        Java
      • 27
        High velocity
      • 24
        Fun
      • 9
        Lightweight
      • 8
        Non-blocking io
      • 5
        Developer friendly
      • 5
        Simple template engine
      • 4
        Scalability
      • 3
        Pure love
      • 2
        Resource efficient
      CONS OF PLAY
      • 3
        Evolves fast, keep up with releases
      • 1
        Unnecessarily complicated

      related Play posts

      Alex A

      Some may wonder why did we choose Grails ? Really good question :) We spent quite some time to evaluate what framework to go with and the battle was between Play Scala and Grails ( Groovy ). We have enough experience with both and, to be honest, I absolutely in love with Scala; however, the tipping point for us was the potential speed of development. Grails allows much faster development pace than Play , and as of right now this is the most important parameter. We might convert later though. Also, worth mentioning, by default Grails comes with Gradle as a build tool, so why change?

      See more
      Akka HTTP logo

      Akka HTTP

      25
      17
      0
      HTTP client and server built on Akka actors and streams
      25
      17
      + 1
      0
      PROS OF AKKA HTTP
        Be the first to leave a pro
        CONS OF AKKA HTTP
          Be the first to leave a con

          related Akka HTTP posts

          RxJS logo

          RxJS

          669
          490
          12
          The Reactive Extensions for JavaScript
          669
          490
          + 1
          12
          PROS OF RXJS
          • 4
            Easier async data chaining and combining
          • 3
            Steep learning curve, but offers predictable operations
          • 2
            Works great with any state management implementation
          • 2
            Easier testing
          • 1
            Ability to build your own stream
          CONS OF RXJS
          • 1
            Steep learning curve

          related RxJS posts

          Netty logo

          Netty

          177
          267
          13
          Asynchronous event-driven network application framework
          177
          267
          + 1
          13
          PROS OF NETTY
          • 7
            High Performance
          • 3
            Easy to use
          • 3
            Just like it
          CONS OF NETTY
            Be the first to leave a con

            related Netty posts