Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Tried and True Approach to Cloud Native Design - An Experienced Based Method

390 vues

Publié le

SpringOne Platform 2017
Rahul Kandhari, HCL

The session will be discussing HCL’s experience from creating our own microservices. It will discuss HCL’s journey creating microservices and lessons learned along the way.

Publié dans : Logiciels
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Tried and True Approach to Cloud Native Design - An Experienced Based Method

  1. 1. Copyright © 2017 HCL Technologies Limited | www.hcltech.com Tried and True Approach to Cloud Native Design - An Experience- based Method Our Experience with Microservices Rahul Kandhari, Principal Architect, HCL Technologies Ltd. Email: rahulka@hcl.com
  2. 2. 2 Copyright © 2017 HCL Technologies Limited | www.hcltech.com Session Objective Essence of following a microservice architecture for modern application building does not need any reiteration. We all know of the advantages it brings to the business, to the developers, and to the operators. This session tries to bring forth the ways to meet the challenges by walking you through our journey and experience with microservices.
  3. 3. 3 Copyright © 2017 HCL Technologies Limited | www.hcltech.com About HCL HCL Technologies is a ‘next-generation’ technology firm that offers global enterprises solutions built around Digital, IoT, Cloud, Automation, Cybersecurity, Analytics, Infrastructure Management and Engineering Services. To know more about the company, please visit www.hcltech.com.
  4. 4. 4 Copyright © 2017 HCL Technologies Limited | www.hcltech.com Our Focus Group • Our group builds cloud native applications in a specific domain • We started our Cloud Native application development journey in 2015 • We have so far built 4 enterprise grade cloud-native applications
  5. 5. 5 Copyright © 2017 HCL Technologies Limited | www.hcltech.com Beginning of our journey Best Practice Mandate  Incorporate agility and cloud- oriented approach  Maximize automation  Ensure quality of software with short release cycles  Create re-usable assets  Show early results to earn trust The Opportunity  No legacy application, no technical debt  No legacy team  Confidence to succeed eclipsed the fear of failure  Capitalizing the PaaS capabilities
  6. 6. 6 Copyright © 2017 HCL Technologies Limited | www.hcltech.com XaaS Service Management System Task Management System Assignment Management System Normalization & Reconciliation Management System Service Level Management System Approval Management System Notification Management System Our Portfolio ServiceXchange Digital Transaction Platform Resource Unit Optimization and Reconciliation Monolithic Architecture Monolithic Architecture Monolithic Architecture Microservice Architecture
  7. 7. 7 Copyright © 2017 HCL Technologies Limited | www.hcltech.com XaaS Service Management System Task Management System Assignment Management System Normalization & Reconciliation Management System Service Level Management System Approval Management System Notification Management System Our Portfolio: Microservices based Microservice Architecture • Each service is small and focused having its own delivery pipeline • Loosely coupled services • Java and NodeJS based • REST API based communication • Each service has a bounded context
  8. 8. 8 Copyright © 2017 HCL Technologies Limited | www.hcltech.com Resource Unit Optimization and Reconciliation ServiceXchange Digital Transaction Platform Monolithic Architecture Monolithic Architecture Monolithic Architecture Our Portfolio: Monolithic • Simple Applications • Small codebases • Components are simple
  9. 9. 9 Copyright © 2017 HCL Technologies Limited | www.hcltech.com Being Cloud Native with Microservices • Cloud Native applications are often built on a microservices architecture • However microservice architecture is an evolution of application design rather than the initial step • Application size and complexity define the need for having microservices • Component doing too many things, heavily transacted, and can be loosely coupled is what makes it a candidate to become a microservice
  10. 10. 10 Copyright © 2017 HCL Technologies Limited | www.hcltech.com Challenges  Looking to know the microservice architecture pattern - No one measurement to determine correct size  Meeting cross-cutting concerns – Synch v/s Asynch inter communication, Fault Tolerance, Data Management, Discoverability  Choice glut – Multiple technologies  Every developer has individual preference of technology  Developer Agility – Unlearn first to learn later  How do I maintain what I build today?
  11. 11. 11 Copyright © 2017 HCL Technologies Limited | www.hcltech.com Our Takeaways - 1 Culture  Culture promoting learning agility is a must  Fail fast to still have time to find another approach  Business function alignment of team is necessary  Team should own the service it is responsible for – Building as well as maintaining  Developers should continue honouring the API contracts their service is signed for while programming
  12. 12. 12 Copyright © 2017 HCL Technologies Limited | www.hcltech.com Our Takeaways - 2 Architecture  Do not have a microservice for the sake of having one. Too many microservices will introduce latencies and/or data overlaps  Do not start with a microservice – always start with building a monolith and be sensitive to the point when to break it. Inflection point could be too many transactions, a component requiring a different treatment, or a component requiring a different evolution path  Incision leading to a microservice should have clear cut boundaries - Clear and bounded context is a must
  13. 13. 13 Copyright © 2017 HCL Technologies Limited | www.hcltech.com Our Takeaways - 3 Technology  Having a platform that manages the infrastructure and some of the cross- cutting concerns is a necessity  Formulate testing strategy with a comprehensive approach covering functional, integration, contract, and performance tests  Fault tolerance is essential for availability - understand that microservices architecture introduces multiple points of failure in your application and you still have to introduce components to absorb failures - circuit breakers, client-side load balancers, configuration server, and service registry
  14. 14. 14 Copyright © 2017 HCL Technologies Limited | www.hcltech.com Questions? To know more about our applications, please visit HCL booth at the exhibition center
  15. 15. $7.8 BILLION ENTERPRISE | 120,000 IDEAPRENEURS | 39 COUNTRIES

×