Cogini Blog

Jake Morrison

Building and Testing Elixir Containers with GitHub Actions

Here are the slides for the presentation Building and Testing Elixir Containers with GitHub Actions I gave to the Elixir LA user's group. It covers testing and other practical concerns when implementing microservices in Elixir. Here is the example code: phoenix_container_example: CI/CD system based on containerized build … Read more…

Jake Morrison

Breaking up the monolith: building, testing, and deploying microservices

I recently worked with a large e-commerce company to "break up the monolith". They have three main applications, a web front end in Elixir/Phoenix, a large Ruby on Rails application used for internal processing, and a large Absinthe GraphQL API that glues the pieces together and integrates with third … Read more…

Jake Morrison

Jobs vs Events

Kafka is popular as a backbone messaging service to connect services. You may be used to using background job processing services like Resque in Ruby or Oban in Elixir, and wonder whether you can replace them with Kafka. In practice, both have their benefits. This post discusses issues that come … Read more…

Jake Morrison

Kubernetes Health Checks for Elixir Apps

Health checks are an important part of making your application reliable and manageable in production. They can also help make development with containers faster. Kubernetes health checks Kubernetes has well-defined semantics for how health checks should behave, distinguishing between "startup", "liveness", and "readiness". Liveness is the core health check. It … Read more…

Jake Morrison

Presentation on thinking functionally in Elixir 2020

Here are the slides for the presentation on thinking functionally in Elixir I gave to the local Elixir user's group. Read more…

Jake Morrison

Choosing a Linux distribution

Short answer: Use Ubuntu LTS Long answer There are two main families, RedHat and Debian. RedHat traditionally comes from the corporate world, and Debian from the free software community. I have been using Linux since 1993, so I will give a bit of a history lesson to explain the motivation … Read more…

Jake Morrison

Deploying an Elixir app to Digital Ocean with mix_deploy

A gentle introduction to getting your Elixir / Phoenix app up and running on a server at Digital Ocean. Read more…

Jake Morrison

Deploying complex apps to AWS with Terraform, Ansible, and Packer

Recently we helped a client migrate a set of complex Ruby on Rails applications to AWS, deploying across multiple environments and regions. They have a half-dozen SaaS products which they have built over the last decade. They had been running them on a set of shared physical servers, with lots … Read more…

Jake Morrison

A new approach to deploying Elixir apps: mix_deploy

A new approach to deploying Elixir apps: mix_deploy Read more…

Jake Morrison

Best practices for deploying Elixir apps

Best practices for deploying Elixir and Phoenix apps, with a working example Read more…

Categories

Development DevOps Products Programming

Tags