When you are trying to create a web site or web app or generally any real-world programming project you will some software services to provide specific functionality to your program. For example, when you are building a website, you definitely need a database to store user or product data in it. The database enables your website to store and retrieve information in a structured and safe way. Doprax provides services to your projects. To use a service you simply add it to your project.having a database is mandatory in Django projects. Because of that, when you create a Django project, you have to choose a database service to add to your project. By default, MySQL is selected for Django projects.
Services are deployed with your projects as separate containers. The service and the main container of your project are connected using a dedicated private network. The hostname of each service is available in the main project as an environment variable. The process of creation of service container and networking is automatic and you don't have to worry about it but a solid knowledge of the way it is done in doprax can help you utilize these services more efficiently.
Example of a project with two services
MySQL is a popular database powering many of the highest traffic sites in the world. Doprax makes it effortless to deploy production-grade MySQL on by just one click. By default, the MySQL version is MySQL-5.7 which is the most popular and used version. Other versions can be used also. When you add MySQL service to your project, the first time that you run your project, the MySQL service will be initialized. Depending on the hardware resource allocated to your service it could take several seconds to a couple of minutes to Mysql to be initialized.
PostgreSQL, also known as Postgres, is an open-source, powerful, object-relational database system. Postgresql could be easily added to your project.
Redis is an open-source in-memory data structure project implementing a distributed, in-memory key-value database with optional durability and is one of the most flexible and popular caching and database servers in use today. Doprax makes it easy to run Redis, complete with persistence so your data is always protected against process restarts and failures.
In the course of processing web requests, you may have to offload tasks to an asynchronous, background process (typically called a worker). Doprax makes this easy to do through Background Workers, which work like any other service. We’ll use Celery, a popular distributed task queue for Python.