Microservice is a buzzword, and it has been around for more than one decade. Some companies tried with success while others did not get much benefit from it and then went back to monolith. Are microservices the ultimate goals for application development? In this session, Rich will take you through the history of microservices, look at microservices from different angles and discuss what modern application development and deployment should be.
6. 6
● Maintainable and testable
● Independently deployable
● Loosely coupled
● Organized around business capabilities
● Owned by a small team
What is Microservice?
https://microservices.io/
20. 20
● DDD and/or EDD not Resume Driven Design (RDD)
● Day2 Operation ever so important
● Standard programming model to interact with other microservices
● Corresponding team culture
● Be mindful on refactoring monolith to microservices
Microservice Architecture
Checkout IBM Mono2Micro – uses AI to refactor monolith to microservices
29. Cloud Native applications
1. RESTful – like cattle not pet, communicative
2. Configurable
3. Fault tolerance
4. Can be discovered
5. Secure
6. Traceable, monitorable
7. Able to communicate with the cloud infrastructure
31. Jakarta EE 10 Platform
Updated
Not Updated
New
Authorization 3.0
Activation 2.1
Batch 2.1
Connectors 2.1
Mail 2.1
Messaging 3.1
Enterprise Beans 4.0
RESTful Web Services 3.1
JSON Processing 2.1
JSON Binding 3.0
Annotations 2.1
Interceptors 2.1
Dependency Injection 2.0
Servlet 6.0
Server Pages 3.1
Expression Language 5.0
Debugging Support 2.0
Standard Tag Libraries 3.0
Faces 4.0
WebSocket 2.1
Enterprise Beans Lite 4.0
Persistence 3.1
Transactions 2.0
Managed Beans 2.0
CDI 4.0
Authentication 3.0
Concurrency 3.0
Security 3.0
Bean Validation 3.0
32. Jakarta EE 10 Web Profile
Updated
Not Updated
New
RESTful Web Services 3.1
JSON Processing 2.1
JSON Binding 3.0
Annotations 2.1
Interceptors 2.1
Dependency Injection 2.0
Servlet 6.0
Server Pages 3.1
Expression Language 5.0
Debugging Support 2.0
Standard Tag Libraries 3.0
Faces 4.0
WebSocket 2.1
Enterprise Beans Lite 4.0
Persistence 3.1
Transactions 2.0
Managed Beans 2.0
CDI 4.0
Authentication 3.0
Concurrency 3.0
Security 3.0
Bean Validation 3.0
33. Jakarta EE 10 Core Profile
Updated
Not Updated
New
RESTful Web Services 3.1
JSON Processing 2.1
JSON Binding 3.0
Annotations 2.1
CDI Lite 4.0
Interceptors 2.1
Dependency Injection 2.0
40. 40
● It often has servers – too minor to be noticed
● Pay as you Go pattern: applicable to public cloud
● Occasionally running and fast operations: scaling to zero
What is Serverless?
41. 41
Fast startup
Graalvm: build time compilation
Linux CRIU technology
OpenJ9 and Open Liberty InstantOn
Public Cloud Serverless
IBM Code engine
Amazon Lambda
Google Function
Azure Function
Cloud Native Application Serverless Enabled
43. 43
Is Java a great fit for microservices?
(specifically auto-scaling and serverless)
44. 44
Is Java a great fit for microservices?
(specifically auto-scaling and serverless)
with the right technology
45. 45
Wed 4:55PM
The Next Frontier in Open Source Compilers:
Just-in-time complication as a Service
IBM sessions
46. 46
● Do not use microservices as a goal
● Define your problems first
● Monolith is NOT evil
● Use best practices if you need to do microservices
● Microservices and Monolith will coexist: build cloud native
applications
● Cloud Native Applications supports serverless
● Java can work with microservices and serverless
Take Away