문득 트위치 보다가 채팅 개빨리 개많이 올라가는데 이거 어떻게 구현하는건지 궁금해짐ㅋㅋㅋ 트래픽 ㅈ될 거 같은데...이거 심지어 저장도 다 돼서 나중에 볼 수도 있던데..- dc official App
비꼬는 게 아니라 진짜 몰라서 물어보는 건데 채팅이 아무리 많아봤자 영상데이터의 100분의 일도 안될텐데 영상 스트리밍 하는데서 그정도 채팅 구현하는 건 일도 아닌 거 아님? 심지어 몇개 누락해도 티도 안나는 종류의 데이터 일텐데
그렇긴 하겠다만 그냥 채팅 이거 구현하는 그 방법 자체가 궁금함 - dc App
영상데이터의 100분의1도 안되겠지만 영상 서버는 커넥션 없이 걍 만들면 되는데 채팅서버는 보통 stateful로 만들고 몇개 누락하는 것도 당연히 안됨
이 경우 데이터가 중요한게 아니라 커넥션이 어떻게 구현되는지 중요한거 아니냐 양방향이면 아무리 텍스트라도 부하가 클 것 같은데
채팅 존나 올라와서 터질 때 보면 서버로 전송된 1-2초 분량의 채팅을 한 청크로 만들어서 각 유저한테 전송해주는 식으로 최적화함 이거 말고도 많겠지 뭐
레디스 같은곳에 한번에 모았다가 내보내는듯?
근데 딜레이가 되게 짧던데 그러면 내보내는 그 텀이 겁나 짧은건가 - dc App
일단 웹소켓은 안씀
아니다 쓰네
트위치는 아니지만, 카카오엔터 테크 블로그인데 라이브채팅 플랫폼 구현기임. 참고해보삼.
https://kakaoentertainment-tech.tistory.com/109
이게 대기업 클라스구나.. 진짜 글에서 품격이 느껴지네..
trie나 아호코라식 판단 기준 보여주는거가 좋네
카산드라 같은거에 로그 저장할듯?
오토 스케일링 되는 stateful 서버. 온라인 방송 채팅서버나 게임서버가 그런류지. 트래픽은 많으면 100단위mb/s까지도 가고
쩝쩝
뭐 트위치가 어떻게 되어있는지는 몰라도 다양한 방법으로 최적화가 가능할듯 실시간으로 하나하나 쏘는게 아니라 뭐 일정 주기로 메세지 덩어리를 뿌려주고 화면에 그릴때는 차례대로 올라오게 한다던가..
풀링에 소켓 둘 다 쓸거임