Today is my birthday and what a wonderful day to celebrate my life, but not only. Today I celebrate my first year in Microsoft, one of the most wonderful years in my career.. a year plenty of great new people, amazing challenges, wellness and happiness. 🎉🎊
In an enterprise level, it’s obvious for applications to be based on messaging for communication. This is done using a middleware between these applications as a Message Bus that enables them to work together.
The workshop “Playing with Java Microservices on Kubernetes” was held from 02/01 to 04/01 – 2020, at the National School of Computer Sciences, in Manouba, Tunisia.
Since the release of Java SE 8, all the developers were under the charm of the Lambdas, Streams and even there those who fell in love with Nashorn for years (yes there are somewhere in this globe 😅).. With the crazy growth of the Enterprise Development context thru Spring Boot/Cloud, Docker, Kubernetes and the unlimited number of JS frameworks, the infinite patterns and styles of architectures, many developers lost the frequency of being up-to-date with the upstream 🤪
I was one of the unsynchronized Java developers that couldn’t get up-to-date with all this crazy new comers everyday 🥺🤯 I got the idea to write a new post, to help Java developers get upToDate Quickly on the last five Java Releases 😁
I will be in the National School of Computing Sciences of Tunisia (ENSI Tunisia), from the 2nd to 4th January 2020, to animate a 20 Hours workshop, about Microservices in Java and how to deploy them as Docker Containers to Kubernetes. The event is organized by Mrs Rim Drira.
The Microservices Architecture World, we can meet many concepts and patterns, like the Centralized Configuration, Circuit Breaker, Service Registry and Discovery, etc.. Two of these patterns are the CQRS and the Event Sourcing patterns, coming from the Domain Driven Design planet 🌏 In the most of the use-cases, these two patterns are sold together 😁 in this new tutorial, we will discover what does each one ? why they are usually used together ? and for sure we will implement these two patterns in Java ☕️ obviously 🤓
Nowadays, the most of the Java microservices and even many Java application are packaged and deployed as Docker containers. Everyone is enjoying (I hope 😆) the Docker experience, compared to the traditional VMs. But, the Docker containerization will not come alone.. nothing is autonomous 😁 So, there are many concerns to take into consideration while containerizing Java applications, like playing with the JVM.
The serverless architecture became one of the most buzzy words nowadays. Almost all the cloud providers have a Serverless platforms in their catalogues:
- Microsoft Azure Functions
- Amazon Web Services Lambda
- Google Cloud Functions
- IBM Cloud Functions
- Oracle Functions
In an other world, there are many solutions to have a Serverless Runtime into Kubernetes, which is the most popular (and the most wonderful) container orchestrator in the market. These solutions are so helpful especially if you need portability for your functions. For example, you can have the same Serverless Runtime deployed to Azure Kubernetes Service and Google Kubernetes Engine. You can be deploying the same binaries as functions identically to both of the cloud providers.
In this tutorial, I will demonstrate how to deploy a Serverless Framework to Minikube and on which we will deploy some Functions based on Spring Boot Framework.
In some previous articles, I was writing about the Azure Functions, which is the Microsoft Serverless solutions. After joining Microsoft, I got the chance to work on this great product for many business cases and I found it was really great 🥳
Recently, one of my Facebook friends asked me to write a blog post about what is Serverless architecture ? 🤔 what is for ? 🤔 and especially, what are the scenarios that are not suitable for Serverless ? 🤔
Maybe I had to write this post before starting the Azure Functions tutorials series. But, as we say “It’s never too late to set things right” 😁