At the heart of a microservice is the running code itself. Microservices also contain their own runtime, so they don’t need to run on an ESB. Using a serverless approach, you can distribute the workloads to optimize runtime. Microservices can be used to create this architecture, and scale independently to meet outward-facing API interface agreements. Microservices architectureencourages to build small, focused subsystems which can be integrated into the whole system preferably using REST protocol.
With any change in product development, whether that be the move to Agile / Scrum planning practices or new methods for DevOps, a business can expect to incur a significant upfront investment in changing its patterns and system architecture.
Read more at DZone