

5월 14일과 15일에 코엑스에서 AWS SUMMIT 행사가 진행됐습니다. 너무 즐겁게 다녀와서 블로그를 꼭 써야지! 했는데,,,7월이 되어버렸지만 뒤늦은 후기라도 올려봅니다.
우선 강연 목록은 여기에서 확인하실 수 있습니다.
저는 개인적으로 "AWS가 알려주는 분산 시스템 안정화" 에 대한 강의를 재밌게 들었습니다. 레벨 300이라 다 이해는 못했지만, 저희 회사에서 겪었던 문제들에 적용할 수 있는 부분인 것 같아서 재밌었습니다.
재밌었던 관계로 강연에 대한 내용도 덧붙이겠습니다.
이렇게 단순하게 실패 시 재시도를 하도록 한다면, 이로 인해 부하가 더 커지고 해소되지 않는 최악의 문제를 초래할 수 있습니다.
재시도를 하거나 안하거나 이것만 있나? 어떻게 재시도 전략을 세우는 게 좋을까?
"적응형 재시도"라고 재시도를 위한 조건을 설정하는 방법론에 대해서도 설명해주셨습니다. 토큰을 이용하는 건데, 버킷에 토큰이 있는지, 최대 횟수 미만인지 확인하여 적용하는 것입니다.
지수 백오프와 Jitter는 장애 대응에 효과적일까?
이건 시스템 유형에 따라 다르다고 합니다.
Backoff는 위에 말한 것처럼 동시에 재시도를 할 경우 부하가 갈 수 있기 때문에, 폐쇄 시스템에서는 좋으나 개방형에서는 안좋다고 합니다.
서킷 브레이커의 역할은 아래와 같습니다.
시스템이 과도한 혼잡으로 인해 무너지는 것을 막아주긴 하지만, 신뢰성을 감소시킬 수 있기 때문에 주의해서 사용해야합니다.
특히 서로 의존성이 있는 여러 시스템이 있다고 하면, A 시스템에서 과부하로 인해 차단이 되었을 때 다른 시스템에도 영향을 미칠 수 있기 때문에, 영향 반경이 큰 서킷 브레이커 사용은 배제해야한다고 하셨습니다.

설명해주신 자료가 없어서 gpt 를 통해 만들어봤습니다.
x축은 응답 시간, y축은 누적 비율입니다.
이 그래프를 기준으로 보면, 전체 요청의 90%가 500ms 안에 처리되었다는 겁니다.
tail latency랑 가장 느린 구간에서의 지연시간을 뜻하는데, p90, P99, P999 이런식으로 표기합니다. 이 그래프에서는 p90이 500ms 인거죠.
예를 들어 아래와 같은 상황이라면,

이 이미지를 보면, 초록색 라인은 P99가 1초 정도 됩니다. 대부분의 사용자가 1초 안에 응답을 받고 있습니다. 하지만, 노란색과 빨간색의 경우, y 가 0.9인 지점이 보이지도 않죠. p99가 1000ms 이상이라는건데, 여기서 x 축의 범위를 더 늘리면 p99가 나오겠지만, 아무튼 이 말은 대부분의 사용자가 느린 응답을 받고 있다는 겁니다.
사용자 경험을 향상시키기 위해서는 이러한 tail 을 어떻게 처리할 것이냐가 중요합니다.
이를 위하여 다음과 같은 방법을 소개해주셨습니다.
시스템에 따라 어떤 방식이 더 효율적인지는 테스트를 해봐야할 것 같습니다. 이런 전략들이 오히려 더 느려지게 되는 케이스가 발생할 수도 있을테니까요.
저희 회사의 시스템은 시스템이 재시도를 하는 것은 아니었지만, 일부 응답이 느리다보니 사용자가 재시도를 하게 되고, 이로 인해 부하가 지속되는 케이스였습니다.
아마 Nudge 기법을 사용한다면, 부하가 지속되는 시간을 줄이고 대부분의 사용자에게 빠른 응답을 줄 수 있을 것 같긴한데, 그러면 또 소수의 사용자는 더욱더 느린 응답을 받을 수 있겠죠..? 어떤 전략을 시도하던 해당 전략에 대한 리스크를 고려해서 적용하긴 해야할 것 같습니다.

굉장히 다양한 부스가 있었는데요!
그 중에서 저에게 베스트가 있습니다. 주저하지 않고 고를 수 있어요. 바로 "스케치랩"입니다.
그림을 그리고

그걸 가지고 게임에 참여할 운송수단을 만들었습니다!

그리고 난 후에는 이렇게 게임에 참여하는데요.
앞에 보이는 빨간 센서를 이용해서 이동시킬 수 있는데, 벼랑 끝까지 가장 가깝게 붙일 수록 점수가 높습니다.

1등하면, 이런 키캡을 주는데요. 얼마나 탐이 나던지... 아주 매우 열심히 했답니다. 행복했어요🥹
물론 이것때문에 가장 좋았던 건 아니구요.
스케치한 그림을 가지고 원하는 느낌으로 이미지를 생성할 수 있다는 서비스의 특성을 직관적으로 알 수 있었기 때문에, 가장 잘 구성한 부스가 아닌가 싶었습니다.
부스 보면, 홍보고 설명이고 뭐고 그냥 사람들 정보 모을 수 있는 설문조사 + 상품 이렇게만 구성한 곳이 많았거든요.
어떤 서비스인지 왜 좋은지 직접 말해주시는 것도 좋았지만, 자연스럽게 게임을 통해서 알 수 있어서 더 좋았습니다.
위에 말한 것처럼 부스를 알차게 즐기느라 까먹고 놓친 강의들이 있어서 아쉬운 마음이 있습니다. 유튜브에 다시보기 영상이 올라올 줄 알았는데 아직 없네요.. 제가 작년에도 다녀왔었는데, 이번에 느꼈던 감정은 좀 달랐어요. 그래서 블로그도 쓰고 있는건데요. 작년에는 취업한지 1년도 안돼서 강연에서 필요성에 대해 말할 때 공감할 수 없었어요. 이해도 안됐구요.
레벨도 레벨이지만, 그 강의를 내 것으로 만드려면 공감할 수 있어야한다고 생각하거든요. 제가 위에 말했던 기억에 남는 강연도 레벨 300이었고, 이해하지 못하는 부분도 많았지만, 문제에 대해 공감하고 이해했기에 흥미롭게 들을 수 있었고, 모르더라도 찾아볼 수 있는 키워드에 대해 힌트를 얻을 수 있었어요. 그래서 공감할 수 있던 그 자체가 전 기뻤습니다. 내가 허투루 시간을 보내지는 않았구나 하는...느낌?
그리고 부스에서도 제가 회사에서 담당하고 있는 서비스에 적용할 수 있는 기능을 발견해서 기뻤는데, 그렇게 좀 더 주도적으로 부스를 돌아볼 수 있는 그 자체도 기뻤어요.
내년에 가면, 또 어떤 감정을 느끼고 어떤 것들을 느낄까 기대가 됩니다. 점점 더 많은 것을 얻을 수 있길 바라면서 마치겠습니다!
혹시 강연 내용 중 잘못된 부분 발견하시면 말해주세요. 감사합니다.