SlideShare a Scribd company logo
1 of 16
Download to read offline
Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. Proprietary & Confidential 無断転載・無断複製の禁止
Convert the notification feature to the notification microservice
Selft-Introduction
Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. Proprietary & Confidential 無断転載・無断複製の禁止
daisuke0131 



After graduated from university, Joined Fujitsu Laboratories. 

I developed firmware, AI, Web services, ios/android apps. 



After the career, Joined startups to experience something new. 



Joined ANDPAD in 2016. Developed mobile applications. 

山下 大輔 Daisuke Yamashita



ANDPAD Chief Development Officer
Self-Introduction
What is ANDPAD?
Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. Proprietary & Confidential 無断転載・無断複製の禁止
What is ANDPAD?
Confidential
Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止
・Project Management System For Construction Industry
・Project Management, Chat, Blueprint, Inspection, Schedule Adjustment
swift/kotlin swift/kotlin swift ReactNative→Flutter Flutter
Many features in ANDPAD
Confidential
Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止
Project Management
Chat Communication
Inspection
Blueprint
The others
ANDPAD
For Administrator, Notifications, Settings and so on.
Built by Ruby on Rails
How migrate notifications
Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. Proprietary & Confidential 無断転載・無断複製の禁止
Notification feature
Confidential
Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止
For what?
・inform actions to users
What features does it have?
・push notifications
・mail deliveries
・desktop notifications
・manage big notification data
Problems
Confidential
Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止
Problems
notification data is growing rapidly
like exponential function.
100,000,000 records/year
DynamoDB is a good choice for
large data(>1,000,000,000).
ref)https://speakerdeck.com/paypay/paypaydefalsedynamodbhuo-yong-shi-li-nituite
RDS is not suitable.
Architeucture
Confidential
Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止
Start version Intermediate version Migrated version
notification data increase rapidly.
How migrate notifications
Confidential
Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止
There are 3 steps
1. Divide the notification logic from the monolithic application(Rails Application).
2. Data transfer to the new Database system(DynamoDB).
3. Develop a switching system to release the new notification service gradually.
Divide the notification logic
Confidential
Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止
Divide logics as a service class.
ANDPAD has 200-300 methods.
Data transfer to the new DB system
Confidential
Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止
Evaluate Differences
Develop the W-Write system(each service
can write each database) to transfer
notification data.(not work push/mail
notification and so on.)
Also develop features to evaluate the
differences.
Develop switching system for canary release
Confidential
Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止
down to zero.
If the differences are closing to zero,
we can release new notification service
gradually.
We develop switching system between old and
new notifications for canary release.
All step done.
Confidential
Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止
Delete old data table for notification.
New notification service is released!!
Conclusion
Confidential
Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止
・explained how to convert notification service to the
microservice in ANDPAD.
・we are now 2nd step.
If you join ANDPAD, you can experience monolith to
microservice.

More Related Content

Similar to Convert the notification feature to the notification microservice

State management for ios development
State management for ios developmentState management for ios development
State management for ios developmentDaisuke Yamashita
 
Solution Centric Architectural Presentation - Denodo as a Growth Enabler
Solution Centric Architectural Presentation - Denodo as a Growth EnablerSolution Centric Architectural Presentation - Denodo as a Growth Enabler
Solution Centric Architectural Presentation - Denodo as a Growth EnablerDenodo
 
What's New in Ivanti Service Manager and Asset Manager 2020.3
What's New in Ivanti Service Manager and Asset Manager 2020.3What's New in Ivanti Service Manager and Asset Manager 2020.3
What's New in Ivanti Service Manager and Asset Manager 2020.3Ivanti
 
Ivanti for msp
Ivanti for mspIvanti for msp
Ivanti for mspIvanti
 
Radical Optimization: How the Internet of Things, 3D Printing and Innovative ...
Radical Optimization: How the Internet of Things, 3D Printing and Innovative ...Radical Optimization: How the Internet of Things, 3D Printing and Innovative ...
Radical Optimization: How the Internet of Things, 3D Printing and Innovative ...Sustainable Brands
 
INTRODUCTION TO IVANTI NEURONS
INTRODUCTION TO IVANTI NEURONSINTRODUCTION TO IVANTI NEURONS
INTRODUCTION TO IVANTI NEURONSIvanti
 
A10 interopjp keynote final-2
A10 interopjp keynote final-2A10 interopjp keynote final-2
A10 interopjp keynote final-2Sanjay Kapoor
 
940 diamond sponsor sengupta,_using our laptop
940 diamond sponsor sengupta,_using our laptop940 diamond sponsor sengupta,_using our laptop
940 diamond sponsor sengupta,_using our laptopRising Media, Inc.
 
940 paw business general session - ssg - data-robot
940 paw business   general session - ssg - data-robot940 paw business   general session - ssg - data-robot
940 paw business general session - ssg - data-robotRising Media, Inc.
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Dabur moves to the Cloud with Office 365
Dabur moves to the Cloud with Office 365Dabur moves to the Cloud with Office 365
Dabur moves to the Cloud with Office 365VARINDIA
 
Building intelligent APIs - Andy Thurai, IBM
Building intelligent APIs - Andy Thurai, IBMBuilding intelligent APIs - Andy Thurai, IBM
Building intelligent APIs - Andy Thurai, IBMPAPIs.io
 
Case Study on Big Data Service for Manufacturing - Silver Touch Technologies
Case Study on Big Data Service for Manufacturing - Silver Touch TechnologiesCase Study on Big Data Service for Manufacturing - Silver Touch Technologies
Case Study on Big Data Service for Manufacturing - Silver Touch TechnologiesSilver Touch Technologies
 
Good Technology Customer Pitch Deck
Good Technology Customer Pitch Deck Good Technology Customer Pitch Deck
Good Technology Customer Pitch Deck Kirk Donnan
 
Software panel
Software panelSoftware panel
Software panelMassTLC
 
Access Your Desktop Anywhere, Anytime with Amazon WorkSpaces
Access Your Desktop Anywhere, Anytime with Amazon WorkSpacesAccess Your Desktop Anywhere, Anytime with Amazon WorkSpaces
Access Your Desktop Anywhere, Anytime with Amazon WorkSpacesTechSoup
 
How often do Your Machines and People talk? Humanizing the IoT - AWS IoT Web Day
How often do Your Machines and People talk? Humanizing the IoT - AWS IoT Web DayHow often do Your Machines and People talk? Humanizing the IoT - AWS IoT Web Day
How often do Your Machines and People talk? Humanizing the IoT - AWS IoT Web DayAWS Germany
 

Similar to Convert the notification feature to the notification microservice (20)

State management for ios development
State management for ios developmentState management for ios development
State management for ios development
 
Solution Centric Architectural Presentation - Denodo as a Growth Enabler
Solution Centric Architectural Presentation - Denodo as a Growth EnablerSolution Centric Architectural Presentation - Denodo as a Growth Enabler
Solution Centric Architectural Presentation - Denodo as a Growth Enabler
 
What's New in Ivanti Service Manager and Asset Manager 2020.3
What's New in Ivanti Service Manager and Asset Manager 2020.3What's New in Ivanti Service Manager and Asset Manager 2020.3
What's New in Ivanti Service Manager and Asset Manager 2020.3
 
Ivanti for msp
Ivanti for mspIvanti for msp
Ivanti for msp
 
Radical Optimization: How the Internet of Things, 3D Printing and Innovative ...
Radical Optimization: How the Internet of Things, 3D Printing and Innovative ...Radical Optimization: How the Internet of Things, 3D Printing and Innovative ...
Radical Optimization: How the Internet of Things, 3D Printing and Innovative ...
 
INTRODUCTION TO IVANTI NEURONS
INTRODUCTION TO IVANTI NEURONSINTRODUCTION TO IVANTI NEURONS
INTRODUCTION TO IVANTI NEURONS
 
A10 interopjp keynote final-2
A10 interopjp keynote final-2A10 interopjp keynote final-2
A10 interopjp keynote final-2
 
940 diamond sponsor sengupta
940 diamond sponsor sengupta940 diamond sponsor sengupta
940 diamond sponsor sengupta
 
940 diamond sponsor sengupta,_using our laptop
940 diamond sponsor sengupta,_using our laptop940 diamond sponsor sengupta,_using our laptop
940 diamond sponsor sengupta,_using our laptop
 
940 paw business general session - ssg - data-robot
940 paw business   general session - ssg - data-robot940 paw business   general session - ssg - data-robot
940 paw business general session - ssg - data-robot
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Analytics, Automation and Standardization
Analytics, Automation and StandardizationAnalytics, Automation and Standardization
Analytics, Automation and Standardization
 
Dabur moves to the Cloud with Office 365
Dabur moves to the Cloud with Office 365Dabur moves to the Cloud with Office 365
Dabur moves to the Cloud with Office 365
 
Building intelligent APIs - Andy Thurai, IBM
Building intelligent APIs - Andy Thurai, IBMBuilding intelligent APIs - Andy Thurai, IBM
Building intelligent APIs - Andy Thurai, IBM
 
Case Study on Big Data Service for Manufacturing - Silver Touch Technologies
Case Study on Big Data Service for Manufacturing - Silver Touch TechnologiesCase Study on Big Data Service for Manufacturing - Silver Touch Technologies
Case Study on Big Data Service for Manufacturing - Silver Touch Technologies
 
Good Technology Customer Pitch Deck
Good Technology Customer Pitch Deck Good Technology Customer Pitch Deck
Good Technology Customer Pitch Deck
 
Software panel
Software panelSoftware panel
Software panel
 
Access Your Desktop Anywhere, Anytime with Amazon WorkSpaces
Access Your Desktop Anywhere, Anytime with Amazon WorkSpacesAccess Your Desktop Anywhere, Anytime with Amazon WorkSpaces
Access Your Desktop Anywhere, Anytime with Amazon WorkSpaces
 
SD-WAN, Meet MARVIS.
SD-WAN, Meet MARVIS.SD-WAN, Meet MARVIS.
SD-WAN, Meet MARVIS.
 
How often do Your Machines and People talk? Humanizing the IoT - AWS IoT Web Day
How often do Your Machines and People talk? Humanizing the IoT - AWS IoT Web DayHow often do Your Machines and People talk? Humanizing the IoT - AWS IoT Web Day
How often do Your Machines and People talk? Humanizing the IoT - AWS IoT Web Day
 

More from Daisuke Yamashita

Introduction of ios-chart in oss-labs#3
Introduction of ios-chart in oss-labs#3Introduction of ios-chart in oss-labs#3
Introduction of ios-chart in oss-labs#3Daisuke Yamashita
 
About SnapKit - Open source lab -
About SnapKit - Open source lab -About SnapKit - Open source lab -
About SnapKit - Open source lab -Daisuke Yamashita
 
Swift open source library - ViewMonitor -
Swift open source library - ViewMonitor -Swift open source library - ViewMonitor -
Swift open source library - ViewMonitor -Daisuke Yamashita
 
Let's Start Swift Open Source Activity.
Let's Start Swift Open Source Activity.Let's Start Swift Open Source Activity.
Let's Start Swift Open Source Activity.Daisuke Yamashita
 
バグのことは嫌いになってもXcodeのことは嫌いにならないでください。
バグのことは嫌いになってもXcodeのことは嫌いにならないでください。バグのことは嫌いになってもXcodeのことは嫌いにならないでください。
バグのことは嫌いになってもXcodeのことは嫌いにならないでください。Daisuke Yamashita
 
Unity Introduction from 2D shooting game.
Unity Introduction from 2D shooting game.Unity Introduction from 2D shooting game.
Unity Introduction from 2D shooting game.Daisuke Yamashita
 
Introduction of Swift from Machine Learning
Introduction of Swift from Machine LearningIntroduction of Swift from Machine Learning
Introduction of Swift from Machine LearningDaisuke Yamashita
 
Introduction of Swift from Game Development
Introduction of Swift from Game DevelopmentIntroduction of Swift from Game Development
Introduction of Swift from Game DevelopmentDaisuke Yamashita
 
How to measure UIView position on Native App
How to measure UIView position on Native AppHow to measure UIView position on Native App
How to measure UIView position on Native AppDaisuke Yamashita
 

More from Daisuke Yamashita (13)

歯磨き.go #2
歯磨き.go #2歯磨き.go #2
歯磨き.go #2
 
Tensorflow
TensorflowTensorflow
Tensorflow
 
Introduction of ios-chart in oss-labs#3
Introduction of ios-chart in oss-labs#3Introduction of ios-chart in oss-labs#3
Introduction of ios-chart in oss-labs#3
 
About SnapKit - Open source lab -
About SnapKit - Open source lab -About SnapKit - Open source lab -
About SnapKit - Open source lab -
 
View Monitoring Tips
View Monitoring TipsView Monitoring Tips
View Monitoring Tips
 
Swift open source library - ViewMonitor -
Swift open source library - ViewMonitor -Swift open source library - ViewMonitor -
Swift open source library - ViewMonitor -
 
Let's Start Swift Open Source Activity.
Let's Start Swift Open Source Activity.Let's Start Swift Open Source Activity.
Let's Start Swift Open Source Activity.
 
バグのことは嫌いになってもXcodeのことは嫌いにならないでください。
バグのことは嫌いになってもXcodeのことは嫌いにならないでください。バグのことは嫌いになってもXcodeのことは嫌いにならないでください。
バグのことは嫌いになってもXcodeのことは嫌いにならないでください。
 
Unity Introduction from 2D shooting game.
Unity Introduction from 2D shooting game.Unity Introduction from 2D shooting game.
Unity Introduction from 2D shooting game.
 
OpenCV on mobile
OpenCV on mobileOpenCV on mobile
OpenCV on mobile
 
Introduction of Swift from Machine Learning
Introduction of Swift from Machine LearningIntroduction of Swift from Machine Learning
Introduction of Swift from Machine Learning
 
Introduction of Swift from Game Development
Introduction of Swift from Game DevelopmentIntroduction of Swift from Game Development
Introduction of Swift from Game Development
 
How to measure UIView position on Native App
How to measure UIView position on Native AppHow to measure UIView position on Native App
How to measure UIView position on Native App
 

Recently uploaded

Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 

Recently uploaded (20)

Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 

Convert the notification feature to the notification microservice

  • 1. Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. Proprietary & Confidential 無断転載・無断複製の禁止 Convert the notification feature to the notification microservice
  • 2. Selft-Introduction Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. Proprietary & Confidential 無断転載・無断複製の禁止
  • 3. daisuke0131 
 
 After graduated from university, Joined Fujitsu Laboratories. 
 I developed firmware, AI, Web services, ios/android apps. 
 
 After the career, Joined startups to experience something new. 
 
 Joined ANDPAD in 2016. Developed mobile applications. 
 山下 大輔 Daisuke Yamashita
 
 ANDPAD Chief Development Officer Self-Introduction
  • 4. What is ANDPAD? Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. Proprietary & Confidential 無断転載・無断複製の禁止
  • 5. What is ANDPAD? Confidential Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止 ・Project Management System For Construction Industry ・Project Management, Chat, Blueprint, Inspection, Schedule Adjustment swift/kotlin swift/kotlin swift ReactNative→Flutter Flutter
  • 6. Many features in ANDPAD Confidential Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止 Project Management Chat Communication Inspection Blueprint The others ANDPAD For Administrator, Notifications, Settings and so on. Built by Ruby on Rails
  • 7. How migrate notifications Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. Proprietary & Confidential 無断転載・無断複製の禁止
  • 8. Notification feature Confidential Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止 For what? ・inform actions to users What features does it have? ・push notifications ・mail deliveries ・desktop notifications ・manage big notification data
  • 9. Problems Confidential Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止 Problems notification data is growing rapidly like exponential function. 100,000,000 records/year DynamoDB is a good choice for large data(>1,000,000,000). ref)https://speakerdeck.com/paypay/paypaydefalsedynamodbhuo-yong-shi-li-nituite RDS is not suitable.
  • 10. Architeucture Confidential Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止 Start version Intermediate version Migrated version notification data increase rapidly.
  • 11. How migrate notifications Confidential Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止 There are 3 steps 1. Divide the notification logic from the monolithic application(Rails Application). 2. Data transfer to the new Database system(DynamoDB). 3. Develop a switching system to release the new notification service gradually.
  • 12. Divide the notification logic Confidential Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止 Divide logics as a service class. ANDPAD has 200-300 methods.
  • 13. Data transfer to the new DB system Confidential Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止 Evaluate Differences Develop the W-Write system(each service can write each database) to transfer notification data.(not work push/mail notification and so on.) Also develop features to evaluate the differences.
  • 14. Develop switching system for canary release Confidential Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止 down to zero. If the differences are closing to zero, we can release new notification service gradually. We develop switching system between old and new notifications for canary release.
  • 15. All step done. Confidential Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止 Delete old data table for notification. New notification service is released!!
  • 16. Conclusion Confidential Copyright © 2020 Present ANDPAD Inc. This information is confidential and was prepared by ANDPAD Inc. for the use of our client. It is not to be relied on by and 3rd party. 無断転載・無断複製の禁止 ・explained how to convert notification service to the microservice in ANDPAD. ・we are now 2nd step. If you join ANDPAD, you can experience monolith to microservice.