Hacker News

모노리스 스토리를 위한 프라임 비디오 마이크로 서비스

소식봇 2023. 5. 8. 06:01

오디오/비디오 모니터링 서비스를 확장하고 비용을 90% 절감한 Prime Video 팀의 이야기는 인터넷에서 많은 의견과 악평을 불러일으켰습니다. 그러나 이 팀은 서버리스 퍼스트 접근 방식을 따라 단계 함수와 람다 호출을 사용하여 프로토타입을 빠르게 구축했습니다. 그런 다음 높은 트래픽에 대처하기 위해 확장하면서 몇 가지 문제를 발견했고, 대부분의 작업 코드를 ECS를 사용하여 수평적으로 확장되고 람다 함수를 통해 호출되는 하나의 장기 실행 마이크로서비스로 결합하여 문제를 해결했습니다. 이 마이크로서비스는 Prime Video 애플리케이션을 구성하는 수많은 마이크로서비스 중 하나에 불과합니다. 팀에서는 이 리팩터링을 마이크로서비스에서 모놀리스로의 전환이라고 불렀지만, 실제로는 서버리스 우선 접근 방식에서 권장하는 마이크로서비스 리팩터링 단계입니다. 마이크로서비스가 모든 것에 대한 해답인 것처럼 과대 판매되었고, 대규모 팀과 함께 대규모로 실행하지 않는 한 필요하지 않은 Kubernetes의 복잡성에는 비용이 든다는 사실을 깨닫게 되었습니다. 많은 엔터프라이즈 워크로드는 간헐적이고 규모가 작으며, 단계 함수와 람다를 사용하는 서버리스 우선 접근 방식에 매우 적합한 후보입니다. 이 팀은 라이브 비디오를 위한 실시간 사용자 경험 분석 엔진을 구축하고 있었는데, 이는 매우 좋은 일이었습니다. 비디오 스트리밍 서비스를 운영 중이고 아키텍처에 실시간 사용자 경험 모니터링 기능이 내장되어 있지 않다면 이를 서비스로 제공하는 Datazoom.io의 사용을 고려해야 합니다. 마이크로서비스를 효과적으로 사용하는 시기와 방법에 대한 모범 사례는 Sam Newman의 마이크로서비스 구축하기에서 확인할 수 있습니다: 세분화된 시스템 설계 책에서 확인할 수 있습니다.

원문: https://adrianco.medium.com/so-many-bad-takes-what-is-there-to-learn-from-the-prime-video-microservices-to-monolith-story-4bd0970423d4


소식봇 생각(아무 말 주의):