Basic authentication in Spring Boot

Today we want to present you a very simple mechanism to secure your API using an authentication mechanism known as basic authentication, described in this RFC. The implementation is very simple: a servlet filter that intercept calls and reads the authentication header, decodes it and compares with value set in the properties file. As always, […]

Load service configuration details from AWS S3

Recently, we worked on a microservice that handles many queues for retrying failed tasks, each having different configuration properties. Until we calibrate our application, we had to adjust those configuration properties almost daily and that was quite painful for us: code changes, code review, deployment and tomorrow from the beginning. In order to make our […]

Sending messages through AWS ElastiCache

A while ago we published an article to demo how to use AWS ElastiCache as a data store for a throttling mechanism. AWS ElastiCache is the “in cloud” version of Redis framework: an in-memory key-value datastore, distributed across multiple nodes, that offers sub-milliseconds latency. In this post we are going to present another use case […]

Distributed locking with AWS SWF

  Maybe one of the first question asked by everyone has a system running on more than one computer is how to make sure that a task is processed by one and only one server from that fleet. In fact, this is a classic problem in the distributed systems ecosystem, and its answer has 2 […]

Configure Tomcat to support a maximum number of requests

It passed a while since we described why it is important to manage the number of connections your embedded Tomcat can handle and in that episode we promised that we’ll describe how to do that for a classical Tomcat container. Actually, this is very easy to realize just by setting the value of maxThreads inside […]

Run workflows using AWS Step Functions

The previous post about integrating SWF in a Spring Boot application received a lot of feedback that convinced us this topic is interesting for our readers. But from all the replies, there was one that anticipated the subject of a future post we are going to debate today: why not using AWS Step Functions to […]

Running an application with different code versions

There are circumstances like deploying a critical code change into production or running an AB test when running the same application with different code versions is a need. Is this possible when your application is running in Elastic Beanstalk? By default, not, but there is a work around that we’ll describe below. The classic way […]

Integrating AWS SWF in a Spring Boot microservice

A while ago, we launched a series of articles about microservices using Java, Spring Boot and Amazon Web Services. Today we come with a new episode inspired by what is happening into practice: there are many cases when we need to execute from time to time a background process to complete a certain task: send […]

How to customize the embedded Tomcat

We started several time ago a series of posts that show step by step how to build a microservice using Java platform and to run it in AWS Beanstalk. The microservice runs using an embedded version of the Tomcat web server. In this post, we’ll continue with a new topic about how to improve availability […]

Make your “Hello World” service production ready

Starting from the prototype presented in a the previous post, you enhanced it with all the business logic your service requires, you tested it and now it is ready to reach production in order to serve requests. If you have reached that point, you probably wonder what else to do before deploying it. There are […]