Continuing on from the previous episode, we look at creating a Docker Swarm cluster and using Traefik to load balance and route requests to various applications. Using this and CloudFlare proxies, we're able to create and deploy hobby applications in minutes.
I often create Rails projects and while some of these applications are fairly simple, deployment to a production environment still requires a lot of infrastructure setup. In this episode, we take a look at creating a Rails project template and being able to deploy it to a production environment within minutes.
As an application grows in popularity and usage you'll need to scale the application to support your new users and their data. One way in which your application may need to scale is on the database level. In this episode, we look at reading from a replica database while writing to a primary database. We also look at structuring our application top support multiple databases; each containing their own schema.
User experience is important and there are little things that we can do to help improve this experience. By giving real time feedback on text inputs to approaching limits on fields, the user can modify and update their text accordingly before they submit the form. In this episode, we look at database level, model validations and limiting text input on the client side.
Active Record supports application-level encryption. The encryption layer sits between the database and the application. The application will access unencrypted data, but the database will store it encrypted. In this episode, we look at implementing encryption for a model's attribute and Action Text.