Gachon univeristy - 2022 Computer Network, Team Project : Clone Kakaotalk for UDP/TCP Communication
UDP/TCP Network를 이용한 카카오톡 서버, 클라이언트 만들기
ExecutorService MultiThread를 이용해서 TCP/UDP 통신을 여러 Client와 진행할 수 있음.
Client와 Server가 연결이 되면 Server는 Client와 연결된 TCP Socket을 User ID로 관리한다. 한 Client가 특정 API를 요청하고, 해당 API가 다른 Client에게 API를 요청하도록 유도하기 위해 연결된 TCP Socket에 API BroadCast를 이용한다.
서버와의 연결이 괜찮은지 확인을 한다. 만약, 서버와 연결이 되지 않는다면 무한정 Splash Page를 벗어날 수 없다.
BroadCast와 MultiThread를 이용해서 한 방에서 여러 명이 동시에 빠른 속도로 대화를 이어갈 수 있다.
node.js Upload Server를 이용해서 파일을 올리고, 업로드된 파일의 URL을 이용해 파일을 브라우저로 받을 수 있다.
데모 동영상 링크: https://youtu.be/frD9xle0rSg