The Philosophy of Channels ( Django Channels )
I've not been as proactive as I could have been at communicating my reasoning and long-term vision for what Channels could do; I'm hoping this blog post will rectify some of that. Let me take you through the specific set of problems I'm looking to tackle, why I chose to design things the way I did, and what I see as the path forwards.
A web application comprises of different file-types like media files for the application, files uploaded by the user and more, so is the case with a typical Django application, these files can be classified into two Static Files and Media Files as what Django calls it. This article is focused on how files are served so I'll not be concentrating on configuration or setup of files or server .
Showing you how to use @property in Django model and making code more streamlined.
So we have a decently complex Django app. Celery workers, RabbitMQ, and app servers. Our existing Fabric deployment model (fab prod deploy) doing its thing (git fetch, restart gunicorn, etc) works well enough but is slow (especially waiting for Celery to restart as needed). We are not ready (yet) to move to a full CI/CD solution, but want to take a few steps closer. Can anyone recommend some tooling that fits in to fairly vanilla deployment (i.e. the above) that will give us things like the ability to manage virtualenvs, rollback deployments (I'm thinking symlinked directories here) - obviously these aren't perfect, especially w.r.t. migrations, etc, but would cover 99% of our use case without having to significantly re-tool.
Copyright (c) 2016 - Ankur Gupta. Thanks to the folks at Agiliq for donating the domain. Agiliq is an app development studio building web and mobile apps. Check them out.
© Sva prava pridržana, Kompjuter biblioteka, Beograd, Obalskih radnika 4a, Telefon: +381 11 252 0 272 |
||