API Platform
gunicorn
API Platform | gunicorn | |
---|---|---|
53 | 18 | |
8,343 | 9,587 | |
0.6% | - | |
8.4 | 8.0 | |
5 days ago | 11 days ago | |
TypeScript | Python | |
MIT License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
API Platform
-
Lucky like a 7 — Seven SymfonyCasts Courses to Master Symfony 7
Technically API Platform is not part of Symfony. Although, they are both French. 😉
- Nginx Unit – Universal web app server
-
Shot in the dark
Probably API-platform. The website is down at the moment, but: https://github.com/api-platform/api-platform It's Symfony based (and plays nice in that ecosystem), also allows you to describe entities via Schema org vocab, has a client generator, and comes with docker-compose and helm charts. I've used it extensively to build various headless services. It's really easy to expose annotated Doctrine entities.
-
API Platform up and running in 5 minutes 🚀
API Platform is a framework for API-first projects, built on top of Symfony components. Let's see how to create a minimal and lightweight starter project in just 5 minutes!
- API Platform (the PHP framework for creating REST and GraphQL APIs) has a brand new website!
-
Is that the way to create an API? 😣 yes, I hate PHP
Just use a nice framework like Symfony and for an API there is a nice thing called API Platform
-
Questions about getting started with PHP
On the Symfony side, a headless API can be built really quickly with https://api-platform.com/. You describe your domain entities with Schema.org vocabulary, can use a client generator to hammer out a UI in Next, Nuxt, Quasar, or whatever as a starter, it comes with an admin backend, and a Helm chart to deploy on Kubernetes. Works great for APIs when paired with, say Nuxt SSGs/PWAs if you want more of a JAMstack approach.
- Easiest way to build and maintain a api-first project in php or another Programming Langauge These days?
-
What is the best way to write a dedicated server?
It could be implemented with STOMP, or Mercure (goes well with API-Platform, written in PHP/Symfony), you could write your own with the help of nchan and scale it via Redis. If it's a web service, the best practices for operating and scaling are well established, Godot then just becomes another client.
-
PSX - Build fully typed REST APIs
Why would someone use this over API Platform?
gunicorn
-
Nginx Unit – Universal web app server
I'm hoping so – gunicorn has a long-open pull request that would fix `--reuse-port`, which currently does nothing
https://github.com/benoitc/gunicorn/pull/2938
- SynchronousOnlyOperation from celery task using gevent execution pool on django orm
-
Deploying Django when using python-socketio
However, I'm curious about the best way to deploy, specifically with regard to WSGI. I've tried using the raw eventlet WSGI server (`eventlet.wsgi.server(eventlet.listen(("", 8000)), application)`). I then start it with `python manage.py runserver`. This has worked okay, but I'm unsure about how scalable it is. It seems like the standard stack is Django + Gunicorn + NGINX. Based on `python-socketio` documentation, this should be possible. I tried django + eventlet + gunicorn, but it seems like gunicorn a) [doesn't play nice with eventlet](https://github.com/benoitc/gunicorn/pull/2581) and b) only supports one worker. Gevent + Gunicorn doesn't have this bug, but still only supports one worker. Also, I'm not sure how actively maintained gevent is. So I'm not sure how scalable either Gunicorn + eventlet or Gunicorn + geventlet is as a WSGI server. So I'm not sure if Gunicorn is my best bet, or if it's too limited.
- The Django ecosystem is not so good
-
3 cool project ideas for Python programmers
For building your API, I recommend using the Flask library. It is very beginner-friendly, and you will be able to build a simple API in a matter of minutes! Keep in mind that, for a more serious project, you should definitely use something like gunicorn to run you API as a production server.
-
Django 4.1 Released
Interesting looks like it might actually be a python bug. Somehow just changing from sys.exit(0) -> os._exit(0) apparently fixes it.
https://github.com/benoitc/gunicorn/pull/2820
-
Serverless Templates for AWS and Python
The cool thing is that you can easily migrate your WSGI- application such as Flask, Django, or Gunicorn to AWS.
-
Scope of database threads + connections + sessions
Yeah, that's kind of the impression I was getting. I stumbled across a github issue for gunicorn along these lines.
-
Running Django with Gunicorn - Best Practice
Taking a glimpse at gunicorn's code it looks like they pretty much all do the same: 2. seems to be creating a wsgi app using django's internals, and 3. uses 2.
What are some alternatives?
Symfony DataTables Bundle - DataTables bundle for Symfony
waitress - Waitress - A WSGI server for Python 3
Apigility
Werkzeug - The comprehensive WSGI web application library.
Fusio - Open source API management platform
bjoern - A screamingly fast Python 2/3 WSGI server written in C.
PHP-CRUD-API - Single file PHP script that adds a REST API to a SQL database
uwsgi - Official uWSGI docs, examples, tutorials, tips and tricks
Hateoas - A PHP library to support implementing representations for HATEOAS REST web services.
meinheld - Meinheld is a high performance asynchronous WSGI Web Server (based on picoev)
Kong - 🦍 The Cloud-Native API Gateway and AI Gateway.
hypercorn - Hypercorn is an ASGI and WSGI Server based on Hyper libraries and inspired by Gunicorn.