Challenges in Implementing MicroServices
MicroService Architectures has debuted on the ThoughtWorks Technology Radar as the first technology they address, and with strong recommendations to immediately experiment. In this talk, we discuss the challenges we have faced at three different companies in implementing MicroServices (successfully!), and the different ways we addressed the challenges.
Outline/Structure of the Talk
SOA, service-oriented architectures, burst on the scene in the new millennium as the latest technology to support application growth. In concert with the Web, SOA ushered in new paradigms for structuring enterprise applications. At the Forward Internet Group in London, SOA was implemented in an unusual way. Rather than a few, business-related services being implemented per the original vision, we developed systems made of myriads of very small, usually short-lived services. We moved on to another company, MailOnline, the online version of the Daily Mail newspaper in the UK, and once again developing microservices. Finally in a Silicon Valley startup, Outpace, the microservices were again exploited.
In this talk, we will:
- Define microservices in a manner that tends to be smaller than most
- Introduce an asynchronous architecture well-suited for microservices, and more importantly, for dynamic business environments (including an animation of the process in action)
- Summarize the experiences at three different companies in three different businesses (Web-based sales, online newspaper, and optimization engines for Fortune 100 companies)
- Suggest corequisite technologies and process that enable/facilitate microservices
- Discuss 6 different challenges that face implementers that we have identified so far
Learning Outcome
This is a technical architecture discussion with detailed examples of actual implementation. Attendees with such backgrounds will benefit most. Project leaders, developers, and project managers, nevertheless, will walk away with new ideas as well as understanding the linkage between process and architecture.
Target Audience
Architects, designers, developers