JAWS Days 2016: Microservice @ Fast Retailing

JAWS Days 2016: Microservice @ Fast Retailing

This is a presentation conducted by Keito Fukuda and Koji Hasebe from Fast Retailing in JAWS Days 2016 which took place on 3/12(Sat) 2016 in Tokyo walking audiences through issues we are facing to achieve our goal and reasons why Microservice is the solution to overcome those challenges along with a high level of architecture design and some examples in Fast Retailing. This slide also describes how we operate to handle growing infrastructure related operations and cost in the company to make it as productive and efficient as possible.

F6272844b7a1d2558fb356b7ac77dda8?s=128

Fast Retailing Co., Ltd.

March 12, 2016
Tweet

Transcript

  1. Microservice @ Fast Retailing

  2. Lead Technical Architect Fast Retailing Co., Ltd. Responsibilities: • Architecture

    • Infrastructure • Innovation Carrer: • Yahoo! JAPAN(6 Years) • Traveling in NZ(1 Year) • Fast Retailing(4 Years) Keito Fukuda
  3. 1. Challenges in Retail 2. Microservice Design 3. Global Operation

    Agenda
  4. 1. Challenges in Retail 2. Microservice Design 3. Global Operation

    Agenda
  5. Business Transformation Multi-Channel Omni-Channel Serial-Process Interconnected

  6. EC POS WMS IMS SCM Typical Legacy Retail Systems

  7. Customers EC Online Offline Consumer Enterprise Employees POS WMS IMS

    SCM Boundaries
  8. BUSINESS PROCESS TIGHTLY COUPLED WITH EACH PACKAGE BREAK THE BOUNDARIES

    flickr.com
  9. Re-Invent Everything

  10. Intranet Principals Internet Centralized Distributed Batch Realtime Monolithic Microservice

  11. Customers EC Employees POS WMS IMS SCM Monolithic Store Order

    Price Catalog Inventory Customer Store Order Price Catalog Inventory Catalog Catalog Inventory Price Order Sales Store Catalog Inventory Order Customer Receipt Receipt
  12. OMG… THE SAME DATA & LOGIC EVERYWHERE flickr.com

  13. Microservice Customers Employees Customer Catalog Price Inventory Order Shipment Store

    Payment Receipt Layout Coupon Ranking Message Warehouse Store Sales Review Employee … … … API
  14. HOOK UP WITH MICROSERVICES AS WE LIKE BUILD BRANDNEW BUSINESS

    PROCESS OUT OF IT flickr.com
  15. 1. Enterprise Challenges 2. Microservice Design 3. Global Operation Agenda

  16. Customers Employees API Gateway A B C D E F

    System Internet Architecture CDN
  17. Customers Employees API Gateway A B C D E F

    System Internet Role & Responsibility CDN WAF Acceleration Cache Authentication Routing Logic Data
  18. Customers Employees API Gateway A B C D E F

    System Internet Stack CDN
  19. YEAH, BUT… WHO WANTS TO BE RESPONSIBLE FOR API GATEWAY?

    flickr.com
  20. Customers Employees API Gateway A B C D E F

    System Internet Failover CDN
  21. Customers Employees API Gateway A B C D E F

    System Internet Failover CDN Router DNS Failover
  22. Customers Employees A B C D E F System Internet

    Future with GraphQL CDN Device API Gateway
  23. OH, COOL LET’S HAVE EVERYONE WORK ON IT flickr.com

  24. Guideline ˒URL https://api.fastretailing.com/{service}/{version}/{brand}/{region}/{resource} ˒Specification Swagger 2.0 ˒Authentication App Auth: HMAC

    User Auth: OAuth 2.0 ˒Versioning Semantic 2.0.0 ˒Cross Domain CORS
  25. Integrator A Integrator B Integrator B Microservice A Microservice B

    Microservice C … … … … Up-to-Date Formatted Specification
  26. (1) Service to Service (2) Browser to Service Authentication

  27. PUT /inventory/v1/uq/us/{id} HTTP1.1 (1) Service to Service API Gateway Inventory

    Client ID Secret Signature HMAC System A System B Client ID Secret Signature HMAC App Auth
  28. (2) Browser to Service API Gateway Client ID App A

    App B Client ID App Auth GET /catalog/v1/uq/jp/detail/{id} HTTP1.1 Catalog
  29. (2) Browser to Service API Gateway Client ID App A

    App A Client ID Access Token Access Token Customer App Auth User Auth OAuth 2.0 PUT /coupon/v1/gu/cn/redeem/{id} HTTP1.1 Coupon Customer A Customer B
  30. (2) Browser to Service API Gateway Client ID Client ID

    Access Token App Auth GET /sales/v1/uq/jp/store/{id} HTTP1.1 Employee User Auth OAuth 2.0 Sales App A App A Employee A Employee B Access Token
  31. 3 144 370 510 335 864 844 UQ JP UQ

    Oversea GU Theory Comptoir des Cotonniers Princesse tam.tam J Brand # of Stores As of 2015.
  32. Centralized Architecture EU CN JP US A B C WAN

    WAN WAN
  33. (1) Network Latency • Physical Distance(US/EU) • Great Firewall(CN) (2)

    Regional Regulations • Privacy Law(EU/CN) Global Challenges
  34. Distributed Architecture A B C EU CN JP US A

    B C A B C A B C Internet Internet Internet Internet
  35. Tokyo Sydney Singapore Ireland California Frankfurt Beijing Virginia AWS Regions

    Used
  36. 1. Enterprise Challenges 2. Microservice Design 3. Global Operation Agenda

  37. Koji Hasebe Infrastructure Engineer Fast Retailing Co., Ltd. Responsibilities: •

    Infrastructure • Architecture • Operation • Development Carrer: • Video Game Industry (3 Years) • Dark Past (3 Years) • IT Service Company (3 Years) • CyberAgent (3 Years) • Fast Retailing(9 Months)
  38. Re-Invent Operation

  39. The Monolithc Era -from the past until now- Big projects

    Waterfall Long delivery time
  40. Global Operation Each regional members support own systems Tokyo Shanghai

    Paris NewYork
  41. Operation Infra Consultation Cordination Strong Governance Developers

  42. Account Management Billing A B C Vendor Based Billing A

    B C Billing B Billing Global Global One
  43. April May June July Aug Sep Oct Cost Easy to

    Forecast A B C
  44. YEAH! EVERYTHING LOOKS GOOD! flickr.com

  45. The Microservice Era Agile Lots of Projects Quick delivery

  46. Global Operation Global one team and work together Tokyo Shanghai

    Paris NewYork English
  47. Operation Infra Consultation Cordination Bottleneck Developers

  48. Cost April May June July Aug Sep Oct Unforecastable C

    D E X Y Z A B
  49. None
  50. Principals Authority Delegation Standardization & Automation

  51. Authority Delegation Provide business members lessons about AWS Infra Grant

    permissions to manage AWS Infra Monitor and audit AWS Developers
  52. Project is responsible for own project’s cost Infra Infra members

    are responsible for total cost (RI, Spot Instance, etc…) Authority Delegation - Cost Management -
  53. Standardization & Automation - technology and process - Infra Terraform

    template Cfn Github Confluence Developer Playbook Feedback Source codes In English Standard Working Group
  54. ON OUR WAY TO SUCESS

  55. http://www.fastretailing.com/employment/career/jp/fr/it/ We are hiring!