Light means lightweight, lightning-fast and shedding light on how to program with modern Java SE for cloud-native deployment. I had been working on the Java EE platforms since early 2000 and suffered performance and productivity issues. In 2014, I realized that the IT industry was moving from Monolithic to Microservices and from on-premise data centers to the public clouds. To reduce the production cost for my applications, I need to find a lightweight platform that has a small memory footprint, high throughput, and low latency in Java. Java EE and Spring/Spring Boot are too heavy to be considered. Other lightweight Java platforms all have different issues on the separation between the business logic and technical cross-cutting concerns. Moreover, they are not cloud-native or designed for container/cloud.
Features
- Plugin architecture for startup/shutdown hooks and middleware components
- Distributed OAuth2 JWT security verification as part of the framework
- Request and response validation against OpenAPI specification at runtime
- Metrics collected in Influxdb/Prometheus and viewed from Grafana Dashboard for both services and clients
- Global exception handling for runtime exception, API exception, and other checked exceptions
- Mask sensitive data like the credit card, sin number, etc. before logging