The days of desktop systems serving single users are long gone?—?web applications nowadays are serving millions of users at the same time. With many users comes a wide range of new problems?—?concurrency problems. In this article I’m going to present two approaches for managing concurrency in Django models.
Detailed writeup by Andrew Godwin and the changes he is planning for Channels 2.0.
Embed docs directly on your website with a few lines of code.
I'll show you how to use uWSGI to host multiple sites and properly route traffic based on the host-name to those sites.
We deploy Python/Django apps to a wide variety of hosting providers at Caktus. Our django-project-template includes a Salt configuration to set up an Ubuntu virtual machine on just about any hosting provider, from scratch. We've also modified this a number of times for local hosting requirements when our customer required the application we built to be hosted on hardware they control. In the past, we also built our own tool for creating and managing EC2 instances automatically via the Amazon Web Services (AWS) APIs. In March, my colleague Dan Poirier wrote an excellent post about deploying Django applications to Elastic Beanstalk demonstrating how we’ve used that service.
Learn how to build and deploy a Django API and set up a continuous integration and delivery pipeline using Semaphore and Heroku.
After taking serious time and effort, you have built your own Django application. What if the website takes too much performance overhead and gets too slow after some reasonable good amount of traffic? There are a couple of features and methods for optimizing the code and improving the overall user experience.
Let’s take a closer look at how to connect and fetch data from GraphQL as well as create and update records from Django ORM to graphene object type.
Provide hints to optimize database usage by deferring unused fields (and more).