Publishing domain events from aggregate roots

Starting with Spring Data Ingalls release publishing domain events by aggregate roots becomes easier. Instead of leveraging Spring’s ApplicationEventPublisher you can use @DomainEvents annotation on a method of your aggregate root. Let’s look at an example.

Read More

Centralized logging on AWS with Boxfuse

In a previous post we saw what steps we needed to do in order to configure a service running on multiple EC2 instances to use CloudWatch Logs as a centralized logging tool. In this post we will use Boxfuse to deploy our cloudwatch-logs-demo app and configure logging leveraging again CloudWatch Logs.

$ git clone https://github.com/altfatter/boxfuse-demo
$ cd boxfuse-demo
$ mvn clean package
Read More

Centralized logging with CloudWatch Logs

In this blog post we will see how we can leverage Amazon CloudWatch Logs for centralized logging in Amazon AWS environment. A demo application is provided to see things in action. The plan is the following:

  1. deploy the application on an EC2 instance
  2. configure logging to send the log events to CloudWatch Logs service
  3. launch multiple ec2 instances running the demo application
  4. browse logs from multiple EC2 instances
Read More

AsyncRabbitTemplate with Spring Boot

Spring AMQP in version 1.6 introduced the AsyncRabbitTemplate which allows the caller of the send and receive operations (sendAndReceive, convertSendAndReceive) not to block. The caller instead gets a handle to the computation in progress in the form of a ListenableFuture or can handle the result in a callback via ListenableFutureCallback

Read More

Centralized configuration with Spring Cloud Config

In this blog post I am looking into Spring Cloud Config project which is a great tool for centralized configuration management in a microservice environment. I have prepared a simple example project which you can find on my github account. It contains a config-service leveraging Spring Cloud Config Server and three little services using Spring Cloud Config Client.

Read More

Docker App

In this blog post I would like to show you that the recently introduced Docker Native application (currently in private beta) makes it possible to configure a docker container with outside container storage without any workarounds on Mac or Windows, similarly how it works on Linux.

Read More

Application events with Spring

In this post I am looking into the awesome application event support provided by Spring Framework, which starting from version 4.2 got even better by introducing an annotation model to consume events, the possibility to publish any object as event not forcing to extend from ApplicationEvent.

Read More

SOAP over HTTPS with client certificate authentication

Recently I had to consume a SOAP web service over HTTPS using client certificate authentication. I thought I will write a blog post about it describing my findings. For the example I will build a simple service which exposes team information about the UEFA EURO 2016 football championship. The service will be secured with client certificate authentication and accessible only over HTTPS.

Read More