How To Deploy Nuxt to AWS Lambda

Nuxt’s default deployment mode is as a continuously running Node.js server. That’s a problem for developers who prefer cost-efficient serverless technologies like AWS Lambda.

Published 29 Oct 2024 · 10 min read · Tom Gregory

How to Deploy Eureka into AWS ECS

Discover how to setup Eureka in AWS ECS following an example project.

Published 13 Apr 2022 · 9 min read · Tom Gregory

3 surprising facts about AWS SQS FIFO queues

The first-in-first-out (FIFO) queue is the type of AWS SQS queue that guarantees order and provides exactly once delivery of messages. That sounds great, but there are some other important features to understand to avoid unexpected queue behaviour. In this article you’ll discover the 3 most important caveats with SQS FIFO queues. 1) If a message fails to be processed, it may block other messages When you send a message to a FIFO queue a message group id must be provided....

Published 8 Mar 2021 · 8 min read · Tom Gregory

3 options for cross-account VPC access in AWS

Using separate AWS accounts provides strong separation of resources, which is great until the point you need cross-account access from a VPC in one account to another. In this article you’ll learn 3 ways to setup a secure connection across accounts, with full working examples you can try out yourself. Why do we need cross-account VPC access? A Virtual Private Cloud (VPC) is a private network which you create in the AWS cloud....

Published 15 Feb 2021 · 16 min read · Tom Gregory

5 reasons for developers to get an AWS certification

AWS is the leading cloud provider with 32% of the market share. It offers highly available and cost effective services, so it’s no surprise companies are migrating from on-premises to AWS in droves. As developers, we’re often caught in the middle of this, being asked to re-architect software to new models such as containers or serverless. Sometimes the reasons for this seem unjustified given the huge changes required, but a lack of knowledge of AWS can hold you back from engaging in discussion....

Published 15 Jan 2021 · 5 min read · Tom Gregory

AWS ECS deployments step-by-step

The default ECS deployment type is called rolling update. With this simple approach, running ECS tasks are replaced with new ECS tasks. You control this process with the deployment configuration, where you define the minimum and maximum number of tasks allowed during a deployment. Through this mechanism you can ensure enough tasks are running to service your traffic, and likewise you’re not overspending by running too many. To understand the deployment process we’ll take the following simple setup as an example....

Published 7 Dec 2020 · 9 min read · Tom Gregory

S3 bucket access from the same and another AWS account

Creating an S3 bucket is easy enough, but to apply the principle of least privilege properly we need to understand how to create the right permissions for specific IAM identities. This might be straightforward if it weren’t for the multiple ways to configure permissions in S3, each having its own rules and edge cases. This article helps you navigate this minefield, with details not only of how the S3 permissions work, but also how you can implement some common real-world scenarios such as S3 bucket access from another AWS account....

Published 30 Nov 2020 · 14 min read · Tom Gregory

AWS Fargate Spot vs. Fargate price comparison

Discover how much Fargate Spot could save you on your AWS bill with this price comparison between 100 Fargate Spot and 100 Fargate containers. Did you know you could save money in AWS by switching from Fargate to Fargate Spot? If you’re using ECS, Fargate Spot offers significant cost reductions by using spare capacity in the AWS cloud. But just how much could you save? AWS say up to 70%, but we’re going to put that to the test with a head-to-head price comparison between 100 Fargate Spot and 100 Fargate containers running over 24 hours....

Published 2 Nov 2020 · 8 min read · Tom Gregory

Setup Spring Boot behind a load balancer using the X-Forwarded headers

If you’ve ever deployed Spring Boot behind a load balancer, you might be aware of issues coming from differences between the request into the load balancer and the request into your application. These requests will often have a different protocol, host, or port. If Spring Boot isn’t correctly setup it can lead to all sorts of mayhem, such as generating incorrect URLs for you application. In this article you’ll discover how to make use of the X-Forwarded headers passed from a load balancer to your Spring Boot application, to help your application generate URLs correctly based on the originating request....

Published 12 Oct 2020 · 8 min read · Tom Gregory