0. 세미나, 컨퍼런스를 챙겨보자!
요즘에도 열심히 읽고 있는 존 손메즈의 『커리어 스킬』에서
강연과 컨퍼런스에 대해 설명해주는 부분을 읽다보니 컨퍼런스를 꼭 챙겨봐야겠다는 생각이 들었다.
사실 이 책에서는 '강연이나 컨퍼런스를 직접 하는 것'에 초점을 두고 있지만
우선은 직접 하기보다는 좋은 강연과 컨퍼런스에 참석해보는 경험을 많이 가져보고자 한다.
그렇게 생각하고 찾아보던 중에 우연히 알게 된 두어 시간 짜리 세미나가 이것이었다.
안 그래도 요즘 RabbitMQ와 Kafka와 같은 메시징 시스템에 대해서 관심이 많았는데
한 번 꼭 들어봐야겠다는 생각이 들었다.
1. 나에게 메시징 시스템이란?
어느샌가 직접 내 손으로 구현해보고 싶은 선망의 대상이 되어버렸다.
코드스테이츠에서의 마지막 프로젝트 때 Redis의 pub/sub을 이용해서 채팅 기능을 구현했지만
다소 허술한 구조라는 것을 그때부터 알고 있었고,
그래서 면접 때 해당 내용에 대해 이야기할 때마다 언젠가 RabbitMQ나 Kafka로도
채팅 기능을 구현해보고 싶다고 꼭 덧붙이곤 했다.
그리고 다시 두번째 구직에 나서고 있는 요즈음,
어떤 면접관 분이 RabbitMQ와 Kafka의 차이에 대해서 설명해주셨던 적이 있는데,
Kafka가 RabbitMQ에 비해서 메시지 전송이 실패했을 때에 대한 대비책이 더 잘되어 있다고 해주셨다.
해당 면접 이후 따로 조사해보니 과연 전통적인 메시지 브로커 방식의 RabbitMQ에 비해
Kafka의 최신식 이벤트 스트리밍 방식은 그런 부분이 더 잘되어있음을 알 수 있었다.
그래서 Kafka를 한번 써봐야겠다는 생각을 갖게 되었고, 그러던 중 이 세미나를 발견했다.
2. 사실은 너무 어려웠던 세미나
하지만 세미나 시간은 내 배경지식이 부족해도 한참 부족하다는 점을 깨닫게 되는 시간이었다.
심지어는 Redis의 pub/sub 기능조차 제대로 알고 구현한 것이 아니라는 생각이 든다.
그리고 메시징 시스템을 어떤 때에 사용하는지조차 제대로 감을 잡지 못하고 있었다.
너무 채팅 기능에만 몰입해서 진정한 사용 목적을 파악하지 못하고 있던 것이다.
그래도 일단은 아주 기본적인 레벨에서 이해할 수 있는 개념은 이런 것 같다.
Kafka에서 모든 전송은 비동기식이며, fallback 처리가 가능하다.
cluster를 직접 구성할 수 있다는 장점이 있으며,
이벤트가 올 때마다 처리해주기 때문에 거의 실시간 급의 속도를 가진다.
그리고 파티션을 나누는 부분이 중요한데,
이 파티션 내에서는 엄격한 순서가 보장되며,
consumer의 경우 인스턴스 스레드 수와 파티션 수를 맞춰야 한다.
코드 레벨에서는 아직 이해가 잘 되지 않지만 일단 이렇게 정리해볼 수 있을 것 같다.
3. 꼭 써보고 싶은 Kafka!
이전 회사의 Team Lead 님이 그저 기술을 써보는 데에만 열중하지 말고,
그 기술을 왜 써야 하는지에 집중하라고 해주셨던 말이 기억난다.
『커리어 스킬』이라는 책에서도 그저 남들이 한다고 해서 따라하는
Cargo Cult Programming을 지양하라고 말해준다.
하지만 솔직히 그럼에도 불구하고 이 Kafka는 꼭 써봐야겠다는 생각이 든다.
어떤 회사에 취직을 했을 때, 내가 모르는 기술 스택에 대해서 빠르고 급하게
그 기술을 습득하고 적용하는 것보다는 미리 개념부터 차근차근 익히고 능수능란하게
문제를 해결해나가는 모습을 보이고 싶다.
내 다음 Toy Project에서 이 Kafka를 적용했을 때,
과연 그 로직이 꼭 Kafka가 필요하지 않을지는 몰라도
그 Kafka를 사용하는 로직을 구현함으로써 내 실력이 오를 수 있음을 믿는다.
그런 의미에서 이 세미나에서 추천해준 책도 바로 구매했다.
4. 소감
인정한다.
이 글에는 세미나와 관련된 얘기보다 너무 필자의 개인적인 이야기가 지나치게 많다.
이는 그만큼 필자의 세미나에 대한 이해도가 떨어졌다는 뜻이기도 하고,
또 어쩌면 아직도 글 쓰는 것에 미흡하기 때문일 수도 있을 것이다.
이를 개선하기 위해서 계속해서 공부하고, 계속해서 글을 써보는 수 밖에 없다.
그리고 내일은 이 컨퍼런스를 들어보고자 한다.
꼭 우아한형제들 관련 발표들만 찾아보고 있는 것은 아닌데
어쩌다보니 여기 발표들을 연속으로 듣게 되었다. 😂
'Essay > Conference 후기' 카테고리의 다른 글
Games on AWS 2023 (0) | 2023.10.24 |
---|---|
INFCON 2022 다시보기 (1) | 2023.10.23 |
AWS Summit Seoul 2023 (0) | 2023.05.04 |
Games on AWS (0) | 2022.10.26 |
이게 무슨 일이야! 컨퍼런스 (0) | 2022.04.01 |