LINE LIVE 채팅 기능의 기반이 되는 아키텍처

LINE 주식회사의 Oklahomer입니다. 이번 블로그에서는 LINE LIVE라는 동영상 송출 서비스의 채팅 기능이 어떻게 구성되어 있는지 소개하겠습니다.

채팅 소개

LINE LIVE의 iOS/Android 앱에서는 라이브 방송 중인 동영상을 시청하면서 실시간으로 코멘트를 보낼 수 있는 채팅 기능을 제공하고 있습니다. 이 기능의 역할은 시청자들이 서로 대화를 즐기는 것에만 국한되지 않고 동영상 송출자가 시청자가 보낸 코멘트에 답변하면서 송출자와 시청자 사이의 접점이 되기도 합니다. 또한 송출자가 코멘트 내용에 따라 방송을 기획하는 등 송출자와 시청자가 함께 방송을 만들어가는 데 있어서도 중요한 역할을 합니다.

유명인이 라이브 방송을 할 경우에는 당연히 시청자 수도 많아지게 되며, 방송 중에 시청자 코멘트가 쇄도하면 많은 양의 코멘트가 순간적으로 유입될 것이라는 점은 쉽게 예상할 수 있습니다. 물론 코멘트 유입이 증가한다는 것은 모든 시청자에게 중계해야 할 코멘트의 양도 늘어난다는 뜻이기 때문에, 이를 어떻게 해서 신속하게 분산시킬 것인지가 늘 과제입니다. 실제로 한 방송에서만 1분당 1만 건을 넘는 속도로 코멘트가 전송되는 경우도 있습니다.

그렇기 때문에 채팅에서는 폭포수처럼 쏟아지는 코멘트를 감당할 수 있도록 개발을 진행했으며, 현재 100대 이상의 서버 인스턴스에서 가동되고 있습니다.