Alternatives to AIOHTTP logo

Alternatives to AIOHTTP

GraphQL, Tornado, Sanic, Flask, and Node.js are the most popular alternatives and competitors to AIOHTTP.
119
134
+ 1
0

What is AIOHTTP and what are its top alternatives?

It is an Async http client/server framework. It supports both client and server Web-Sockets out-of-the-box and avoids Callback. It provides Web-server with middlewares and pluggable routing.
AIOHTTP is a tool in the Microframeworks (Backend) category of a tech stack.
AIOHTTP is an open source tool with 13.4K GitHub stars and 1.9K GitHub forks. Here’s a link to AIOHTTP's open source repository on GitHub

Top Alternatives to AIOHTTP

  • GraphQL
    GraphQL

    GraphQL is a data query language and runtime designed and used at Facebook to request and deliver data to mobile and web apps since 2012. ...

  • Tornado
    Tornado

    By using non-blocking network I/O, Tornado can scale to tens of thousands of open connections, making it ideal for long polling, WebSockets, and other applications that require a long-lived connection to each user. ...

  • Sanic
    Sanic

    Sanic is a Flask-like Python 3.5+ web server that's written to go fast. It's based on the work done by the amazing folks at magicstack. On top of being Flask-like, Sanic supports async request handlers. ...

  • Flask
    Flask

    Flask is intended for getting started very quickly and was developed with best intentions in mind. ...

  • Node.js
    Node.js

    Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices. ...

  • asyncio
    asyncio

    This module provides infrastructure for writing single-threaded concurrent code using coroutines, multiplexing I/O access over sockets and other resources, running network clients and servers, and other related primitives. ...

  • Twisted
    Twisted

    Twisted is an event-driven networking engine written in Python and licensed under the open source ​MIT license. Twisted runs on Python 2 and an ever growing subset also works with Python 3. Twisted also supports many common network protocols, including SMTP, POP3, IMAP, SSHv2, and DNS. ...

  • Django
    Django

    Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design. ...

AIOHTTP alternatives & related posts

GraphQL logo

GraphQL

30.1K
24.9K
300
A data query language and runtime
30.1K
24.9K
+ 1
300
PROS OF GRAPHQL
  • 74
    Schemas defined by the requests made by the user
  • 62
    Will replace RESTful interfaces
  • 60
    The future of API's
  • 48
    The future of databases
  • 12
    Self-documenting
  • 11
    Get many resources in a single request
  • 5
    Query Language
  • 5
    Ask for what you need, get exactly that
  • 3
    Fetch different resources in one request
  • 3
    Evolve your API without versions
  • 3
    Type system
  • 2
    Easy setup
  • 2
    GraphiQL
  • 2
    Ease of client creation
  • 1
    Good for apps that query at build time. (SSR/Gatsby)
  • 1
    Backed by Facebook
  • 1
    Easy to learn
  • 1
    "Open" document
  • 1
    Better versioning
  • 1
    Standard
  • 1
    1. Describe your data
  • 1
    Fast prototyping
CONS OF GRAPHQL
  • 4
    Hard to migrate from GraphQL to another technology
  • 4
    More code to type.
  • 2
    Takes longer to build compared to schemaless.
  • 1
    All the pros sound like NFT pitches
  • 1
    Works just like any other API at runtime

related GraphQL posts

Shared insights
on
Node.jsNode.jsGraphQLGraphQLMongoDBMongoDB

I just finished the very first version of my new hobby project: #MovieGeeks. It is a minimalist online movie catalog for you to save the movies you want to see and for rating the movies you already saw. This is just the beginning as I am planning to add more features on the lines of sharing and discovery

For the #BackEnd I decided to use Node.js , GraphQL and MongoDB:

  1. Node.js has a huge community so it will always be a safe choice in terms of libraries and finding solutions to problems you may have

  2. GraphQL because I needed to improve my skills with it and because I was never comfortable with the usual REST approach. I believe GraphQL is a better option as it feels more natural to write apis, it improves the development velocity, by definition it fixes the over-fetching and under-fetching problem that is so common on REST apis, and on top of that, the community is getting bigger and bigger.

  3. MongoDB was my choice for the database as I already have a lot of experience working on it and because, despite of some bad reputation it has acquired in the last months, I still believe it is a powerful database for at least a very long list of use cases such as the one I needed for my website

See more
Nick Rockwell
SVP, Engineering at Fastly · | 44 upvotes · 2.3M views

When I joined NYT there was already broad dissatisfaction with the LAMP (Linux Apache HTTP Server MySQL PHP) Stack and the front end framework, in particular. So, I wasn't passing judgment on it. I mean, LAMP's fine, you can do good work in LAMP. It's a little dated at this point, but it's not ... I didn't want to rip it out for its own sake, but everyone else was like, "We don't like this, it's really inflexible." And I remember from being outside the company when that was called MIT FIVE when it had launched. And been observing it from the outside, and I was like, you guys took so long to do that and you did it so carefully, and yet you're not happy with your decisions. Why is that? That was more the impetus. If we're going to do this again, how are we going to do it in a way that we're gonna get a better result?

So we're moving quickly away from LAMP, I would say. So, right now, the new front end is React based and using Apollo. And we've been in a long, protracted, gradual rollout of the core experiences.

React is now talking to GraphQL as a primary API. There's a Node.js back end, to the front end, which is mainly for server-side rendering, as well.

Behind there, the main repository for the GraphQL server is a big table repository, that we call Bodega because it's a convenience store. And that reads off of a Kafka pipeline.

See more
Tornado logo

Tornado

394
398
167
A Python web framework and asynchronous networking library, originally developed at FriendFeed
394
398
+ 1
167
PROS OF TORNADO
  • 37
    Open source
  • 31
    So fast
  • 27
    Great for microservices architecture
  • 20
    Websockets
  • 17
    Simple
  • 14
    Asynchronous
  • 11
    Python
  • 7
    Lightweight
  • 3
    Handles well persistent connexions
CONS OF TORNADO
  • 2
    Event loop is complicated

related Tornado posts

Around the time of their Series A, Pinterest’s stack included Python and Django, with Tornado and Node.js as web servers. Memcached / Membase and Redis handled caching, with RabbitMQ handling queueing. Nginx, HAproxy and Varnish managed static-delivery and load-balancing, with persistent data storage handled by MySQL.

See more
Sanic logo

Sanic

91
129
10
Python 3.5+ web server that's written to go fast
91
129
+ 1
10
PROS OF SANIC
  • 5
    Asyncio
  • 2
    Fast
  • 2
    Easy to use server
  • 1
    Websockets
CONS OF SANIC
    Be the first to leave a con

    related Sanic posts

    Flask logo

    Flask

    17.6K
    15K
    1.6K
    A microframework for Python based on Werkzeug, Jinja 2 and good intentions
    17.6K
    15K
    + 1
    1.6K
    PROS OF FLASK
    • 319
      Lightweight
    • 275
      Python
    • 217
      Minimal
    • 149
      Open source
    • 100
      Documentation
    • 69
      Easy to use
    • 55
      Well designed
    • 55
      Easy to setup and get it going
    • 51
      Easy to develop and maintain applications
    • 48
      Easy to get started
    • 22
      Beautiful code
    • 19
      Rapid development
    • 16
      Powerful
    • 15
      Expressive
    • 14
      Flexibilty
    • 14
      Customizable
    • 14
      Simple to use
    • 13
      Love it
    • 13
      Awesome
    • 13
      Get started quickly
    • 12
      Speed
    • 11
      Perfect for small to large projects with superb docs.
    • 11
      Easy to integrate
    • 10
      For it flexibility
    • 9
      Productive
    • 9
      Flexibilty and easy to use
    • 8
      Not JS
    • 8
      Flask
    • 7
      User friendly
    • 6
      Secured
    • 5
      Unopinionated
    • 3
      Orm
    • 2
      Secure
    CONS OF FLASK
    • 10
      Not JS
    • 7
      Context
    • 5
      Not fast
    • 1
      Don't has many module as in spring

    related Flask posts

    James Man
    Software Engineer at Pinterest · | 45 upvotes · 1.1M views
    Shared insights
    on
    FlaskFlaskReactReact
    at

    One of our top priorities at Pinterest is fostering a safe and trustworthy experience for all Pinners. As Pinterest’s user base and ads business grow, the review volume has been increasing exponentially, and more content types require moderation support. To solve greater engineering and operational challenges at scale, we needed a highly-reliable and performant system to detect, report, evaluate, and act on abusive content and users and so we created Pinqueue.

    Pinqueue-3.0 serves as a generic platform for content moderation and human labeling. Under the hood, Pinqueue3.0 is a Flask + React app powered by Pinterest’s very own Gestalt UI framework. On the backend, Pinqueue3.0 heavily relies on PinLater, a Pinterest-built reliable asynchronous job execution system, to handle the requests for enqueueing and action-taking. Using PinLater has significantly strengthened Pinqueue3.0’s overall infra with its capability of processing a massive load of events with configurable retry policies.

    Hundreds of millions of people around the world use Pinterest to discover and do what they love, and our job is to protect them from abusive and harmful content. We’re committed to providing an inspirational yet safe experience to all Pinners. Solving trust & safety problems is a joint effort requiring expertise across multiple domains. Pinqueue3.0 not only plays a critical role in responsively taking down unsafe content, it also has become an enabler for future ML/automation initiatives by providing high-quality human labels. Going forward, we will continue to improve the review experience, measure review quality and collaborate with our machine learning teams to solve content moderation beyond manual reviews at an even larger scale.

    See more

    Hey, so I developed a basic application with Python. But to use it, you need a python interpreter. I want to add a GUI to make it more appealing. What should I choose to develop a GUI? I have very basic skills in front end development (CSS, JavaScript). I am fluent in python. I'm looking for a tool that is easy to use and doesn't require too much code knowledge. I have recently tried out Flask, but it is kinda complicated. Should I stick with it, move to Django, or is there another nice framework to use?

    See more
    Node.js logo

    Node.js

    167.2K
    141K
    8.5K
    A platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications
    167.2K
    141K
    + 1
    8.5K
    PROS OF NODE.JS
    • 1.4K
      Npm
    • 1.3K
      Javascript
    • 1.1K
      Great libraries
    • 1K
      High-performance
    • 802
      Open source
    • 485
      Great for apis
    • 475
      Asynchronous
    • 420
      Great community
    • 390
      Great for realtime apps
    • 296
      Great for command line utilities
    • 82
      Websockets
    • 82
      Node Modules
    • 69
      Uber Simple
    • 59
      Great modularity
    • 58
      Allows us to reuse code in the frontend
    • 42
      Easy to start
    • 35
      Great for Data Streaming
    • 32
      Realtime
    • 28
      Awesome
    • 25
      Non blocking IO
    • 18
      Can be used as a proxy
    • 17
      High performance, open source, scalable
    • 16
      Non-blocking and modular
    • 15
      Easy and Fun
    • 14
      Easy and powerful
    • 13
      Same lang as AngularJS
    • 13
      Future of BackEnd
    • 12
      Fullstack
    • 11
      Fast
    • 10
      Cross platform
    • 10
      Scalability
    • 9
      Simple
    • 8
      Mean Stack
    • 7
      Great for webapps
    • 7
      Easy concurrency
    • 6
      Typescript
    • 6
      React
    • 6
      Fast, simple code and async
    • 6
      Friendly
    • 5
      Great speed
    • 5
      Easy to use and fast and goes well with JSONdb's
    • 5
      Scalable
    • 5
      Its amazingly fast and scalable
    • 5
      Control everything
    • 5
      Fast development
    • 4
      Isomorphic coolness
    • 4
      Easy to use
    • 4
      It's fast
    • 3
      Great community
    • 3
      Scales, fast, simple, great community, npm, express
    • 3
      TypeScript Support
    • 3
      Sooper easy for the Backend connectivity
    • 3
      Not Python
    • 3
      One language, end-to-end
    • 3
      Easy
    • 3
      Easy to learn
    • 3
      Less boilerplate code
    • 3
      Performant and fast prototyping
    • 3
      Blazing fast
    • 2
      Event Driven
    • 2
      Lovely
    • 2
      Npm i ape-updating
    • 1
      Creat for apis
    • 0
      Node
    CONS OF NODE.JS
    • 46
      Bound to a single CPU
    • 44
      New framework every day
    • 38
      Lots of terrible examples on the internet
    • 31
      Asynchronous programming is the worst
    • 23
      Callback
    • 18
      Javascript
    • 11
      Dependency based on GitHub
    • 11
      Dependency hell
    • 10
      Low computational power
    • 7
      Very very Slow
    • 7
      Can block whole server easily
    • 6
      Callback functions may not fire on expected sequence
    • 3
      Unneeded over complication
    • 3
      Unstable
    • 3
      Breaking updates
    • 2
      No standard approach
    • 1
      Bad transitive dependency management
    • 1
      Can't read server session

    related Node.js posts

    Nick Rockwell
    SVP, Engineering at Fastly · | 44 upvotes · 2.3M views

    When I joined NYT there was already broad dissatisfaction with the LAMP (Linux Apache HTTP Server MySQL PHP) Stack and the front end framework, in particular. So, I wasn't passing judgment on it. I mean, LAMP's fine, you can do good work in LAMP. It's a little dated at this point, but it's not ... I didn't want to rip it out for its own sake, but everyone else was like, "We don't like this, it's really inflexible." And I remember from being outside the company when that was called MIT FIVE when it had launched. And been observing it from the outside, and I was like, you guys took so long to do that and you did it so carefully, and yet you're not happy with your decisions. Why is that? That was more the impetus. If we're going to do this again, how are we going to do it in a way that we're gonna get a better result?

    So we're moving quickly away from LAMP, I would say. So, right now, the new front end is React based and using Apollo. And we've been in a long, protracted, gradual rollout of the core experiences.

    React is now talking to GraphQL as a primary API. There's a Node.js back end, to the front end, which is mainly for server-side rendering, as well.

    Behind there, the main repository for the GraphQL server is a big table repository, that we call Bodega because it's a convenience store. And that reads off of a Kafka pipeline.

    See more
    Conor Myhrvold
    Tech Brand Mgr, Office of CTO at Uber · | 42 upvotes · 6M views

    How Uber developed the open source, end-to-end distributed tracing Jaeger , now a CNCF project:

    Distributed tracing is quickly becoming a must-have component in the tools that organizations use to monitor their complex, microservice-based architectures. At Uber, our open source distributed tracing system Jaeger saw large-scale internal adoption throughout 2016, integrated into hundreds of microservices and now recording thousands of traces every second.

    Here is the story of how we got here, from investigating off-the-shelf solutions like Zipkin, to why we switched from pull to push architecture, and how distributed tracing will continue to evolve:

    https://eng.uber.com/distributed-tracing/

    (GitHub Pages : https://www.jaegertracing.io/, GitHub: https://github.com/jaegertracing/jaeger)

    Bindings/Operator: Python Java Node.js Go C++ Kubernetes JavaScript OpenShift C# Apache Spark

    See more
    asyncio logo

    asyncio

    102
    148
    13
    Asynchronous I/O, event loop, coroutines and tasks
    102
    148
    + 1
    13
    PROS OF ASYNCIO
    • 4
      Cooperative Multitasking
    • 4
      I/O Wait
    • 3
      Network Call
    • 2
      I/O bound computation
    CONS OF ASYNCIO
      Be the first to leave a con

      related asyncio posts

      Jelena Dedovic

      Investigating Tortoise ORM and GINO ORM...

      I need to introduce some async ORM with the current stack: Tornado with asyncio loop, AIOHTTP, with PostgreSQL and MSSQL. This project revolves heavily around realtime and due to the realtime requirements, blocking during database access is not acceptable.

      Considering that these ORMs are both young projects, I wondered if anybody had some experience with similar stack and these async ORMs?

      See more
      Twisted logo

      Twisted

      56
      86
      10
      Event-driven networking engine written in Python
      56
      86
      + 1
      10
      PROS OF TWISTED
      • 5
        Easy-to-understand concurrency
      • 3
        Twisted prevails
      • 1
        It works
      • 1
        Solid, flexible, powerful
      CONS OF TWISTED
        Be the first to leave a con

        related Twisted posts

        Django logo

        Django

        34K
        30.7K
        4K
        The Web framework for perfectionists with deadlines
        34K
        30.7K
        + 1
        4K
        PROS OF DJANGO
        • 660
          Rapid development
        • 480
          Open source
        • 415
          Great community
        • 371
          Easy to learn
        • 270
          Mvc
        • 225
          Beautiful code
        • 217
          Elegant
        • 200
          Free
        • 197
          Great packages
        • 186
          Great libraries
        • 74
          Restful
        • 73
          Comes with auth and crud admin panel
        • 72
          Powerful
        • 69
          Great documentation
        • 64
          Great for web
        • 52
          Python
        • 39
          Great orm
        • 37
          Great for api
        • 28
          All included
        • 25
          Fast
        • 23
          Web Apps
        • 21
          Clean
        • 20
          Used by top startups
        • 19
          Easy setup
        • 17
          Sexy
        • 14
          Convention over configuration
        • 14
          ORM
        • 13
          Allows for very rapid development with great libraries
        • 12
          The Django community
        • 10
          Great MVC and templating engine
        • 10
          King of backend world
        • 8
          Full stack
        • 7
          Batteries included
        • 7
          Its elegant and practical
        • 6
          Fast prototyping
        • 6
          Very quick to get something up and running
        • 6
          Cross-Platform
        • 6
          Have not found anything that it can't do
        • 6
          Mvt
        • 5
          Zero code burden to change databases
        • 5
          Easy to develop end to end AI Models
        • 5
          Easy Structure , useful inbuilt library
        • 4
          Map
        • 4
          Easy to change database manager
        • 4
          Easy
        • 4
          Great peformance
        • 4
          Many libraries
        • 4
          Python community
        • 4
          Modular
        • 4
          Easy to use
        • 3
          Just the right level of abstraction
        • 3
          Scaffold
        • 3
          Full-Text Search
        • 1
          Scalable
        • 1
          Node js
        • 0
          Rails
        • 0
          Fastapi
        CONS OF DJANGO
        • 26
          Underpowered templating
        • 22
          Autoreload restarts whole server
        • 22
          Underpowered ORM
        • 15
          URL dispatcher ignores HTTP method
        • 10
          Internal subcomponents coupling
        • 8
          Not nodejs
        • 8
          Configuration hell
        • 7
          Admin
        • 5
          Not as clean and nice documentation like Laravel
        • 3
          Python
        • 3
          Not typed
        • 3
          Bloated admin panel included
        • 2
          Overwhelming folder structure
        • 2
          InEffective Multithreading
        • 1
          Not type safe

        related Django posts

        Dmitry Mukhin
        Engineer at Uploadcare · | 25 upvotes · 1.5M views

        Simple controls over complex technologies, as we put it, wouldn't be possible without neat UIs for our user areas including start page, dashboard, settings, and docs.

        Initially, there was Django. Back in 2011, considering our Python-centric approach, that was the best choice. Later, we realized we needed to iterate on our website more quickly. And this led us to detaching Django from our front end. That was when we decided to build an SPA.

        For building user interfaces, we're currently using React as it provided the fastest rendering back when we were building our toolkit. It’s worth mentioning Uploadcare is not a front-end-focused SPA: we aren’t running at high levels of complexity. If it were, we’d go with Ember.js.

        However, there's a chance we will shift to the faster Preact, with its motto of using as little code as possible, and because it makes more use of browser APIs. One of our future tasks for our front end is to configure our Webpack bundler to split up the code for different site sections. For styles, we use PostCSS along with its plugins such as cssnano which minifies all the code.

        All that allows us to provide a great user experience and quickly implement changes where they are needed with as little code as possible.

        See more

        Hey, so I developed a basic application with Python. But to use it, you need a python interpreter. I want to add a GUI to make it more appealing. What should I choose to develop a GUI? I have very basic skills in front end development (CSS, JavaScript). I am fluent in python. I'm looking for a tool that is easy to use and doesn't require too much code knowledge. I have recently tried out Flask, but it is kinda complicated. Should I stick with it, move to Django, or is there another nice framework to use?

        See more