파이썬으로 제대로된 서버개발을 한 적은 없어서 몇 가지 조사하다가 발견한것들
WebFramework
- Django
- Flask
- Bottle https://bottlepy.org/docs/dev/
- Pylons
- Pyramit https://trypyramid.com/
- Falcon
- Eve https://github.com/pyeve/eve
- CherryPy
- FastAPI https://github.com/tiangolo/fastapi
https://towardsdatascience.com/why-we-switched-from-flask-to-fastapi-for-production-machine-learning-765aab9b3679 - https://github.com/juancarlospaco/faster-than-requests
- …
엄청많다
ORM
- SqlAlchemy
- https://github.com/python-gino/gino
- PonyORM
https://ponyorm.org/ - DjangoORM
SQL
- PyPika
https://pypika.readthedocs.io/en/latest/ - https://github.com/tmuzzin/PythonSQLGenerator
- https://github.com/hhyo/mybatis-mapper2sql
- PyDAL
https://github.com/web2py/pydal
비동기 기술
- celery
- faust
- async
- PyKafka
https://pykafka.readthedocs.io/en/latest/ - kafka-python
https://github.com/dpkp/kafka-python - Winton Kafka Streams
https://github.com/wintoncode/winton-kafka-streams
개발환경
- anaconda
- miniconda
- virtualenv
https://virtualenv.pypa.io/en/latest/ - virtualenv wrapper
https://virtualenvwrapper.readthedocs.io/en/latest/ - pew
https://github.com/berdario/pew - tox
https://tox.readthedocs.io/en/latest/ - nox
https://nox.thea.codes/en/stable/ - pipenv
https://pipenv.pypa.io/en/latest/advanced/
package.json처럼 실행환경을 지정할 수 있게 하는게 낫지 않을까? 커스텀 환경을 사용하려면 sh를 별도로 만드는게 나을 것 같다. - poetry
https://python-poetry.org/docs/
실행환경
- Gunicorn
- uWSGI
- Uvicorn(ASGI)
https://www.uvicorn.org - supervisord
http://supervisord.org/ - honcho
https://github.com/nickstenning/honcho - forever
- pm2
- unicorn
배포환경
- zappa – aws lambda (반푼이)
- serverless – aws lambda
- https://github.com/GoogleCloudPlatform/functions-framework-python
- https://github.com/tiangolo/uwsgi-nginx-flask-docker
- https://github.com/tiangolo/uvicorn-gunicorn-fastapi-docker
기타 참고
- https://dev.to/sm0ke/flask-dashboard-simple-open-source-starters-4noc