Managing and monitoring a microservices architecture is no brainer with the Micronaut framework. In my previous post, we implemented an API gateway to our reactive Maps service which used Micronaut's Consul integration for discovery and provided automatic client-side load balancing. In this post, let us look at implementing some of the monitoring capabilities to our … Continue reading Monitoring and managing Micronaut application
Category: Java
Micronaut API gateway in action
In this post, I am going to show how we can implement a simple gateway service for the Maps microservice developed in the earlier post. Gateway microservice is another Micronaut service that consumes our Maps service and provides public API access for users, requests are routed using gateway which can be managed, monitored, secured and … Continue reading Micronaut API gateway in action
Reactive microservices development with Micronaut
There is some fresh air in the microservice development stack for developers. Java developers usually look at Spring Boot which provides a platform for building production grade services that helps implement microservice architecture and targets Spring developers. There are couple new frameworks to look for that could shape up this landscape in the coming years. … Continue reading Reactive microservices development with Micronaut
Local Variable Type Inference in Java 10
One handy feature that made the cut in JDK 10 release train is Local-Variable Type Inference (JEP-286). This language feature is part of project Amber, a successor to Project Coin 🙂 With more frequent releases planned for the Java platform, we could expect to see 2 feature releases this year, so March release will be … Continue reading Local Variable Type Inference in Java 10
Must have Time and Size Log4J appender for your application
TimeAndSizeRollingAppender, a very handy Log4J appender that supports rolling log files by time and size. I haven't found one that meet my requirements in the built-in/extra appenders provided by log4j project. DailyRollingFileAppender is the closest appender I could live with, but there is no way to control size of the file when rolling, which is … Continue reading Must have Time and Size Log4J appender for your application
Private interface methods in Java 9
Starting in JDK 9 build 54, compiler support for private interface methods have been resurrected. This was one feature that was planned for Java 8 and did not make the final cut. It is now part of JEP 213. The primary motivation for this proposal is to enable code sharing between non abstract methods in … Continue reading Private interface methods in Java 9
Java 8 gearing up for release, why Java 8 will be a top contender for Java.next languages in 2014?
Java 8 will go GA in March 2014. The first proposed final draft of Java 8 JSR 337 was released early this week. One of the main components of this JSR is Lambda Expressions for the language (JSR 337). This brings the functional constructs to the language, which will undeniably make Java a top contender … Continue reading Java 8 gearing up for release, why Java 8 will be a top contender for Java.next languages in 2014?
Configuring chunk size in Apache HttpClient 4.3.x
The default chunk size in Apache HttpClient 4.3 is set to 2048 bytes. There is no easy way to customize the chunk size in the latest Apache HttpClient release. It looks like the only approach is to implement a custom ClientConnectionFactory that allows to override the default chunk size. Here is an example. https://gist.github.com/aruld/8044989
Parallel Looping Constructs in Java (revisited)
Two years ago, I blogged about parallel for each construct using a very early version of lambda prototype compiler. At that time, Data Parallelism was already available in C# TPL, but Java designers were hard at work in bringing this idiom to Java. https://gist.github.com/aruld/4949503 Lambda expressions support in Java 8 is here for everyone to … Continue reading Parallel Looping Constructs in Java (revisited)
Java 8 – This ain’t your grandpa’s Java
Java 8 adds support for bulk data operations (JEP 107) in the Collections library. It is unlikely every forms of bulk data operations will be added to the retrofitted Collections framework, but the language designers are making every possible effort in accommodating general use cases of "filter/map/reduce for Java". Libraries should make use of parallelization … Continue reading Java 8 – This ain’t your grandpa’s Java