-
Notifications
You must be signed in to change notification settings - Fork 2
2025.01.07.
JIN edited this page Jan 7, 2025
·
2 revisions
- 어제 한 일
- 오늘 할 일
-
공통
- 어제 한 일
- 오늘 할 일
- canvas, web socket, CRDT 코드 분석 및 학습
-
J062
- 어제 한 일
- 위키 읽기
-
위키 내용
캔버스 성능 최적화 시도
- 4-5주차에는
윈도우에서 그리면 렉이 심해지는이슈가 발생했습니다. - 해당 이슈는 CRDT 로직 단에서 주요하게 수정해야할 점들이 있었지만, 캔버스 측에서도 최적화 할 수 있는 방안을 몇 가지 시도해보았습니다.
- 아래 세 가지 측면에서의 최적화를 시도하였고, 결과적으로 시작 페이지의 캔버스에만 requestAnimationFrame 및 throttle을 추가하였습니다.
- requestAnimationFrame으로 좌표 전송 및 드로잉 주기 최적화 (시작 페이지)
- throttle로 좌표 샘플링 주기 최적화 (시작 페이지)
- OffScreenCanvas로 GPU 단에서의 렌더링 (미적용)
캔버스 성능 최적화 시도 - requestAnimationFrame, throttle, offscreenCanvas
- 4-5주차에는
-
캔버스 성능 최적화 시도 → 좋은 결과는 못 본 거 같음.
-
이번 시간에 많은 거 하기보다는 하나에 집중해서 리팩토링 하는 것은 어떨가
-
성능 측정 매트릭, 테스트 도구 정하면 좋을 것 같다!
-
- 위키 읽기
- 오늘 할 일
- 어제 한 일
-
J130
- 어제 한 일
- fe 코드 메인페이지부터 쭉 따라가면서 확인
- 브라우저에서 탭이 늘어날 때 소켓 연결은 여러 개 되는데, 유저 자체는 한 유저로만 등록되는 중
- sharedworker를 안썼으니까 탭이 늘어날 때마다 아예 다른 접속으로 판단해서 다른 유저로 인식할 줄 알았는데 아니었음, 왜 이렇게 되는지 이유 찾고 있었음
- 캔버스 최적화 한다고 했는데 stroke 그리는 그런 애들은 처리가 안되어있어서 하면 될 거 같음
- 오늘 할 일
- 어제 한 일
-
공통
- 어제 한 일
- 오늘 할 일
-
J042
- 어제 한 일
- 코드 확인 → as에서 타입 가드로 대부분 다 바꿀 생각
- Redis repository 레이어 추가 필요
- 책 읽기
- 리팩토링 방식, 코드/기능 정의 어떻게 할 지..? 이 방식대로 리팩토링 할 거 같음
- 테스트 코드 먼저 작성해서 시작!
- 배포 먼저 할듯. 지금 ncloud 배포 먼저 한 다음에 테스트 코드 작성하고 ci/cd 작동 확인
- 오늘 할 일
- 배포부터 하고, 제대로 작동되는 지 확인 (보류)
- 코드 확인하면서 테스트 코드 작성
- chat 디렉터리
- 어제 한 일
-
J066
- 어제 한 일
- server 디렉터리 하위 코드 읽기
- 함수 공통 부분으로 분리되는 거 처리 필요
- redis multi 같은거 실패했을 경우 처리가 하나도 없어서 처리 필요
- lpush + reverse 조합 쓰는거 그냥 다 rpush로 변경
- any 쓰는 부분 변경
- 권장사항은 unknown 써가지고 타입 변환해서 사용하는 것! (좀 찾아봐야할 듯)
- 일단 성환님은 any 써야 하는건 한 파일에 모아두고 disable
- server 디렉터리 하위 코드 읽기
- 오늘 할 일
- 테스트 코드 작성
- drawing 테스트 코드 추가
- 테스트 코드 작성
- 어제 한 일
- [BE] 프로젝트 코드 읽기
- [BE] 테스트 용도의 Redis Docker 생성 및 통합 테스트 진행
- [BE] 도커 생성부터 테스트까지 스크립트 하나로 해결해보기
- [BE] e2e 테스트 진행
- [BE] Redis List 삽입 방식 변경
- [FE] Shared Worker 학습
- [FE] Shared Worker 적용(Chat Socket)
- [FE] Shared Worker 적용(Game Socket)
- [FE] Shared Worker 적용(통합 정리)
- [BE] Clova OCR로 캔버스 이미지 검사하기
- [BE] Clova Studio로 단어 간의 연관성 파악하기
- [BE] Redis pub sub을 이용해서 소켓끼리 데이터 공유하기
- [FE] 텍스트가 인식된 영역 안에 선을 제거하기
- 2025.01.06. 팀 빌딩 및 주간 계획 수립
- 2025.01.13. 2주차 주간 계획 수립
- 2025.01.20. 3주차 주간 계획 수립
- 2025.02.03. 전체 및 1주차 주간 계획 수립
- 2025.02.10. 2주차 주간 계획 수립
- 2025.02.17. 3주차 주간 계획 수립