Introduce myself I was infrastructure engineer at a printing company in Kanazawa until 2020 that did proof-of-concept of infrastructure using AWS, transferred jobs to East Co., Ltd. in January 2021. I am also contributing to JAWS-UG since 2018 as a core member of the JAWS-UG Kanazawa chapter. And, I am active as a financial planner (AFP). My hobbies are running, bowling and grow vegetables. #jawsug_kanazawa
What’s Kanazawa Chaptor? We hold study sessions every month, mainly in Kanazawa, Ishikawa Prefecture. We want the following people to join us! #jawsug_kanazawa ・Interested in AWS ・Want to make more use of AWS ・Want to find friends who are using AWS We held AWS Community Day Kanazawa in 2019!
Today's goals Understand the pitfalls and countermeasures in Lambda that can easily realize serverless. Understand about Lambda cold start and throttling.
Introduction of the contents of this service ・DONGRI which provided by East Co., Ltd. is dictionary application and can be used from a wide lineup of various dictionaries and glossaries. ・DONGRI offers iOS, Android, and Windows versions, and can be used through multiple devices, and can be used not only online but also offline. ・One word can be searched through multiple dictionaries.
Service features ・Mainly used at school and at home ・Often used during the daytime on weekdays and at night ・Often used all at once in class, so momentary peaks are likely to occur
Old architectural challenges ・Not expandable, and the cost of maintaining a redundant configuration remains high ・ There is a possibility that the service will be stopped in the event of an AZ failure (The instance is built only in ap-northeast-1b) ・ High maintenance cost for Windows Server based system ・ It is difficult to maintain the original database in EC2
Updated architecture Reduce maintenance costs by configuring to scale with a configuration using Lambda and DocumentDB and migrating to managed services. For dictionaries that have not been migrated to DocumentDB due to the migration transition period, the request is forwarded to the conventional system and searched.
What's happened? ・A 502 error occurred during the load test. After investigating the cause, it was due to exceeding the number of concurrent executions, which is the default of 1000.
What should We do? ・Reduce process time → Avoid cold start and use Provisioned Concurrrency Setteings ex. serverless-provisioned-concurrency-autoscaling
What should We do? ・It is important to adopt a configuration that can withstand spikes ・Let's see ”Amazon ECS & Docker operational knowledge to handle large- scale load of Roma Saga RS”
Conclusion ・Understand the characteristics of the architecture to be adopted ・Consider load testing during PoC ・Read the documentation carefully ・Let's see the use case!