2023-11-28
좋아요페이지
- 매칭 각각 태그 구현 (O)
- 클릭시 뒤돌게 구현 (O)
채팅페이지
- 상대방 사진으로 끼워넣기 (O)
- 날짜 바꾸기 (O)
- textarea에서 enter를 누르면 메시지 전송 기능
- 모바일에서 볼 때 채팅방을 클릭하면 채팅창으로 가기
어제의 trouble shooting
채팅 성능 이슈
- 상대방 사진으로 끼워 넣으면서 s3 -> 이미지를 binary로 가지고 오는 것에서 시간이 너무 오래걸렸음. 5개 채팅을 보여주는데 30초 이상 걸려 도저히 쓰기 힘든 수준이었음.
- 해결 : s3 -> binary 작업을 하지 않기 위해 기존 member.info 테이블에 photo_base64, photos_base64를 만들었으나, photos_base64에 4개의 사진을 담으면 최대 문자열을 초과해버려 첫번째 사진만 photo_base64에 담아 저장하는 방식을 택함
ec2 파일 업로드 이슈
- localhost 환경에서는 잘 올라가나 ec2 환경에서는 파일업로드가 인되었음.
- 해결: 팀원분이 [MainController][/fileUpload] 부분에서 MultipartRequest를 상대경로로 webapp/WEB-INF에 사진을 저장하는 로직이었으나 그 부분을 c:/keys/s3/imgs/ 라는 절대 경로에 저장되게 하고 리눅스 환경에선 /keys/s3/imgs/ 에 저장하게 하여 이미지를 찾지 못하는 현상을 해결함
모바일 파일 업로드 이슈
- 모바일 환경에서 파일 업로드가 안된다는 사실을 발견하였음.
- 해결 : 일반적으로 핸드폰 사진을 찍을 때 1mb 이상을 초과하는 이미지를 올리므로 컴퓨터에선 올라가지만 모바일에서 안 올라가는 것 같은 착각이었음. 다음 구문을 추가해 이미지 최대 크기를 10mb로 두어 해결하였음.
spring.servlet.multipart.max-file-size=10MB
spring.servlet.multipart.max-request-size=10MB
2023-11-29
오늘 해야할 일
1. 채팅페이지
- textarea에서 enter를 누르면 메시지 전송 기능 (O)
- 모바일에서 볼 때 채팅방을 클릭하면 채팅창으로 가기 (O)
- textarea 디자인 변경 (실제 카카오톡처럼)
- textarea에서 shift+enter를 누르거나 채팅이 일정 길이를 넘어가면 height가 조정되는 알고리즘 구현
- 상대방이 무언가를 입력중이라면 말풍선이 뜨는 로직 구현
2. 성능 최적화
- interaction을 클릭할 때 photo_base64에 이미지가 저장되어있는 유저라면 s3 -> base64 인코딩을 굳이 하지 않아도 되게끔 성능 최적화
- recommend 페이지도 마찬가지로 성능 최적화
3. rs 시스템과 spring 연동