-
Notifications
You must be signed in to change notification settings - Fork 6
3주차 피어세션
🙋🏻, ⛺️: CRDT.. CRDT… 그리고 WebRTC
아직 작성을 못했어요. 저희가 생각한 꼬이는 케이스는 여려명이 같은 clock, 같은 index에서 작업했을 때인데 이걸 테스트 하려고 해요.
WebRTC를 구현할 때 시그널링이라는 부분이 있는데 이 부분이 생각했던것 보다 엄청 어려웠어요.
-
시그널링
P2P 연결을 할 때 연결하려는 대상의 IP를 알려주는 중간 서버가 필요해요. 그 서버를 시그널링 서버라고 해요.
배열을 사용할 때 앞과 뒤 사이의 랜덤한 값으로 만들어 줬었는데 만약에 1
, 2
가 사이에 문자를 입력할 때 1.99999
가 생기면 1.99999
와 2
사이에 insert가 발생하면 숫자가 감당 못하는 문제가 생겨요. 그래서 LinkedList로 변경했어요.
b, c의 id로 d의 id를 만들고 remote에 알려요. remote는
백로그 상으론 에디터, 화상회의 성능 고도화를 해야하는데 아직 베이스가 부족해서 회의를 해봐야 할 것 같아요. 에디팅 기능을 제외하고도 실시간 투표나, 실시간 질문 블록같은 기능이 있어서 이 부분에 대한 기능 추가가 필요해요. WebRTC는 캠, 마이크 컨트롤 하는 작업이 필요해요.
엄청 빨라요. 조금 불
아니요. 예상시간의 전제조건이 그 task를 위한 선수 작업들이 모두 완료되었다여서 그 시간안에는 절대 못해요.
⛺️: 저희는 그래서 due time을 정해요.
🙋🏻: 저희는 CRDT
, WebRTC
두 파트로 나눠서 진행중이에요.
분업을 하지 못했어요. 논문도 읽고 계속 찾아보는데 왭^^
팀도 공감하실텐데 공부하면 할 수록 어려워져서 일단 밑바닥부터 구현해보자 하고 화~목 동안 진행했어요. 아직 여러글자랑, 한글은 지원이 안돼요.
🙋🏻: 저희도…
다른 라이브러리도 파보면 code mirror 베이스인 정도로 완전 밑바닥 에디터에요. from, to도 계산해줘요.
이 부분은 code mirror가 알아서 해줘요.
네!
structure를 그대로 저장하고 sync를 맞춰주는 방식으로 하려고 해요.
소켓 이벤트가 발생할땐 DB에 저장하지 않을거에요. Interval을 줘서 저장을 하려고 생각중이에요.
직접 그린거에요 🙌