ifkakao2019 참석후기
사실 ifkakao 에 신청했다가 떨어졌는데, 사내에서 표를 주신 분이 있어서 가게 되었다.(감사합니다!!) 1일차와 2일차가 조금 다른 성격을 지니고 있었는데, 서버/백엔드 엔지니어인 나에게는 1일차가 더 좋을 것 같아서 1일차에 가게 되었다.
전체적인 행사의 느낌은 깔끔한 느낌이었다. 카카오 자체에서 하는 것이고 외부 업체나 따로 스폰서를 받지 않기 때문에 별도의 부스가 있지는 않았고 대신에 카카오 관계사 및 계열사들이 그 자리를 채웠다. 오히려 더 채용 자체에 대해서 명확하게 소통할 수 있는 자리가 아니였나 하는 생각이 들었다.
비가 엄청 많이 오는 날이어서 키노트에 중간 정도에 들어갔는데, 카카오뱅크에 대한 이야기는 매우 인상이 깊었다. 금융에 대한 부분에서 어떻게 혁신을 해 왔는지, 그리고 카카오뱅크는 어떻게 다르게 했는지 등등 모바일과 금융에 대해서 고민하는 분에게 추천하고 싶은 키노트였다.
서버 성능테스트 Tip - 사례를 통해 얻은 교훈들
- 실제 사용자와 유사한 시나리오로 API 테스팅
- 테스트와 런칭이 다른 서버 구조의 경우가 있음, 런칭 스펙에 대한 성능 테스트 필요
- 동일한 스펙에서의 테스트 진행
- 일정이 빠듯해서 중간에 구조 변경 시, 장애 포인트가 될수 있어서 반드시 개발자가 선 공유해야 대비 가능
- API 서버-로그서버처럼 연결된 경우, 서버 간의 상관관계를 파악 필요. 각 서버 장애를 발생시켜서 연관 있는 서버들이 격리 되는지 장애가 전파 되는지 확인 필요
- 오토스케일링과 failover 에 대한 테스트 및 시간 파악 필요
- NGrinder 를 사용하는데 TCP나 웹소켓 같은 경우 테스트가 어려움 : NETTY 를 활용해서 테스트
- 클라이언트 봇을 만들어서 테스트 하는 경우, NGrinder 를 이용해서 클라이언트 봇을 제어
- Q&A : Ngrinder 를 사용하는 이유?
- 커스텀 할 수 있는 부분이 너무 많아서 사용하고 있다. 파이썬/자이썬을 이용해서 스크립트를 활용할 수 있고, 모니터링과 리포팅을 모두 커스텀 가능
- 테스트 하는 방식 : 단일서버테스트 ⇒ 성능 산정 ⇒ 전체 풀세트 서버 테스트 진행
- APM 은 어떻게? 다른 APM 도 같이 사용하고 Ngrinder 의 지표와 같이 본다.
⇒ 사실 테스팅에 대한 부분은 QA 쪽에서 담당하기도 하지만, 개발자 입장에서도 테스트 시나리오 및 테스트 하는 방식에 대해서 생각해 볼 수 있는 세션이었다. 발표자 분의 깊은 고민들이 엿 보였던 것 같다.
초당옥수수의 취소를 막아라! : 수만 건의 주문을 1초내에 처리하는 기술
- RabbitMQ 를 사용하는 이유, retry 와 관련된 부분
⇒ RabbitMQ 를 선택하게 된 이유, 그리고 특정 기능을 어떤 식으로 사용하게 되었는지 잘 설명해 주었던 것 같다. 약간 만담/대화식 진행방식이 웃음 포인트였던 것 같기도 하고. 발표 자체에 노력한 흔적들이 많이 보였던 것 같다.
⇒ TMI) 초당옥수수라는 것을 처음 들었는데, 집에와서
Practical Microservices in gRPC Go feat. GraphQL, Kafka(서포터즈 기사 개발기)
- TechSpec 과 비슷한 RFC 라는 문서를 쓰는게 기억에 남는다.
- 다양한 개발자들이 마이크로서비스를 개발하는 과정에서 go 를 선택한 이유를 설명했다.
⇒ 많은 분들이 나와서 연 이어서 하는 발표 였는데 조금 정신이 없는 느낌. 그래도 팀원이 모두 참여한다는 점은 좋았던 것 같다. grpc 에 대한 좀 더 깊은 내용이나 장단점을 듣고 싶었는데 그 부분에서 조금 아쉬웠는데, 3~4개로 쪼갤 수 있는 하나의 발표였던 것 같다. 개별로 자세한 이야기를 더 들을 수 있었으면 좋았을 듯..
돈이 오고가는 금융프로젝트인 펌 뱅킹 서비스에서의 코틀린 적용 사례
- 자바에서 코틀린으로 적용하는 과정에서 어려운 점들을 상세하게 알려준다.
- 코틀린으로 바꾸는 과정에서 전체 프로젝트의 작은 부분/영향도가 적은 부분에서 에서 부터 바꿔나가는 부분이 인상 깊었다.
Neo 모니터링 관련된 내용도 들었는데, 개인적으로는 어려웠던 것 같고, 마이크로서비스들을 어떻게 모니터링 하는지에 대해서 많이 자극이 되었던 것 같다.
행사 자체가 행사 밖에서 즐길 수 있는 것 보다는 준비한 세션의 내용에 더 집중할 수 있는 환경을 만든 것이 인상적이었다. 중앙에 있었던 디지털 타임테이블이 가장 인상적이었고 참석한 개발자들이 직접 본인 캐릭터를 빌드/만들수 있는 소소한 재미도 있었다.
개인적인 바램은 좀 더 발표자와 질문자가 만나서 기술적인 이야기를 할 수 있는 공간을 제공해주면 어떨까 하는 생각이 든다. 사실 질문 시간이 짧거나 너무 많은 분들이 있어서 애기를 잘 못 할 수 있는데, 이런 공간이 있다면 좀 더 깊게 이야기 할 수 있지 않을까?