Development
![[채팅] 채팅 메세지 전송 속도 개선](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fqw4Sk%2FbtsELpNwX10%2FtkX9ISxKSkhzusaduuiev0%2Fimg.png)
[채팅] 채팅 메세지 전송 속도 개선
안녕하세요! 반갑습니다! 이번 포스팅에서는 채팅 메세지 전송 속도를 어떻게 개선했는지 자세히 설명해보고자 합니다! 자세한 코드는 깃허브에서 확인하실 수 있습니다! https://github.com/HyemIin/Catchroom_Chat GitHub - HyemIin/Catchroom_Chat: 캐치룸 서비스의 채팅 서버 레포입니다. 캐치룸 서비스의 채팅 서버 레포입니다. Contribute to HyemIin/Catchroom_Chat development by creating an account on GitHub. github.com 또한 기초적인 채팅 아키텍처 설명은 아래 포스팅을 참고해주세요! https://hyem5019.tistory.com/entry/%EC%B1%84%ED%8C%85-%EC%..

패스트캠퍼스X야놀자 백엔드 부트캠프_전체 과정 회고
7개월 간 길었던 부트캠프가 끝났습니다!!! 뭔가 말도 많고 탈도 많았지만 그래도 끝까지 완주했다는 사실은 변함이 없네요 ㅎㅎ 이번 포스팅을 마지막으로 기자단 활동도 끝나가는데 뭔가 아쉽지만 시원한 느낌이 강합니다! 그럼 마지막 기자단 활동 시작하겠습니다~! 1. 무엇을 배웠나?? 먼저 전체 커리큘럼. 크게 온라인 강의, 실시간 강의, 그룹 스터디, 멘토링으로 첫 4달을 보내고, 이후 토이 프로젝트 -> 미니 프로젝트 -> 기업연계(파이널) 프로젝트로 3달을 채워 마무리하는 과정이다. 첫 4달은 자바의 기초, 스프링의 기초, 알고리즘의 기초를 다루고 익숙해지는데 시간을 투자했다면 이후 프로젝트에서는 실제 배운 것을 적용해보는 것이라고 이해하면 쉽다. 커리큘럼에 대한 자세한 설명은 아래 포스팅을 참고해주시..
![[채팅] 채팅방 리스트 최신화 속도 개선](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbD0UUn%2FbtsEAZOIOH5%2F9eISpOKZQF1S4l5xuDoQzk%2Fimg.png)
[채팅] 채팅방 리스트 최신화 속도 개선
안녕하세요! 이번 채팅 시스템을 구축하면서 채팅방 리스트 최신화를 어떤 방식으로 진행시켰는지 설명해보겠습니다! 그 전에 이해를 돕고자 서비스(서비스명 : 캐치룸) 아키텍처에 대해 간략히 설명드리겠습니다. 자세한 코드는 깃허브에서 확인 가능합니다! https://github.com/HyemIin/Catchroom_Chat 0. 서비스(캐치룸) 프리뷰 1) 채팅서버와 메인서버 분리 먼저 채팅서버와 메인서버가 구분되어 있는 것을 확인하실 수 있습니다. 채팅서버는 말 그대로 채팅 관련 요청을 전담하는 서버이고, 메인 서버는 채팅 외 캐치룸에서 적용되는 모든 API를 처리하는 서버입니다. 서로 구분한 이유는 채팅 트래픽이 일반 API 호출 대비 많을 것이라 예상했고, 만약 모놀리식으로 서버를 구축한 상태에서 채팅..

boolean 바인딩 에러.. boolean과 Boolean의 차이
@AllArgsConstructor @NoArgsConstructor(access = AccessLevel.PROTECTED) @Getter @Builder public class SaleRegistRequest { private User seller; private Long orderHistoryId; private DealState dealState; private int discountRate; private int sellPrice; private int actualProfit; private int catchPrice; @DateTimeFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss") private LocalDateTime endDate; private String in..

패스트캠퍼스X야놀자 백엔드 부트캠프_파이널 프로젝트 회고
파이널 프로젝트가 시작됐다... 사실 곧 끝나가지만... 정의 : 기업 연계 프로젝트로, 실제 기업의 문제 및 니즈를 분석하고 스스로 해결책을 개발하는 과정의 마지막 성장 과제 목적 직접 실무와 유사한 환경에서 이루어지는 개발과정 경험 백엔드, 프론트엔드, UX/UI, PM 등 각기 다른 분야의 수강생과 함께 하며 협업/커뮤니케이션 능력 향상 기간 : 2023.12.05 ~ 2024.01.30 (기획 1개월, 개발 1개월) 참여인원 1️⃣ 백엔드 개발자 (Java, Spring/Springboot, MySQL) 2️⃣ 프론트엔드 개발자 (HTML/CSS, JavaScript ,React, Next.JS) 3️⃣ 프로덕트 매니저(PM) (Figma, Figjam, 서비스 기획) 4️⃣ UXUI 디자이너 (..

패스트캠퍼스X야놀자 백엔드 부트캠프_미니 프로젝트 회고
서비스 링크 : https://mini-team-7.vercel.app/ 야놀자 | 야놀자 클론코딩 사이트 mini-team-7.vercel.app 깃허브 링크: https://github.com/orgs/YBE-7/repositories YBE-MiniProject-7 미니프로젝트 7조입니다. YBE-MiniProject-7 has 3 repositories available. Follow their code on GitHub. github.com 1. 미니 프로젝트 개요 - 프로젝트 기간 : 11/20(월)~12/01(금), 2주간 - 프로젝트 정의 : 이번 미니 프로젝트는 숙박 예약 서비스를 완성시키는 것. 단 필요한 설계는 팀별로 직접 구성하도록 했다. - 필수 구현 기능 : 회원가입/로그인/상품..

패스트캠퍼스X야놀자 백엔드 부트캠프_중간 회고
1. 부트캠프 지원 처음 지원은 부트덴트라는 사이트를 참고했다. (링크는 아래 참고) https://boottent.sayun.studio/camps [부트텐트] 2023년 국비지원,부트캠프 모음! 일정,가격,비용,커리큘럼,국비지원,내일배움카드,후 무료, 유료 코딩 부트캠프 한 눈에 비교하고 나한테 맞는 교육을 찾아보세요. 정리집착 개발자가 한땀한땀 정리한 부트캠프 리스트! boottent.sayun.studio 위 사이트를 가보면 정말 다양한 부트캠프를 수시로 소개해주는데, 나는 당시에 (올해 6월?) 야놀자X패스트캠퍼스 과정이 가장 나에게 적합하고 필요하다고 판단했었고, 그랬기에 지원했었다. (왜냐하면 싸피를 떨어졌거든...크ㅏ하ㅏ하) 당시에 이제 메이저 부트캠프들은 모두 마감을 했었고, (우테코는 ..
![[Gasip Project] JPA / could not initialize proxy - no Session.](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLsWRh%2FbtszTAmk0Ll%2F3jARexDmfw7e9xQcv4XiD0%2Fimg.png)
[Gasip Project] JPA / could not initialize proxy - no Session.
잘만되던 CRUD가 갑자기 안되기 시작했다. DB에 저장된 정보 불러오기(Get)을 할 때 이런 문제를 발견했다. 1. 문제 정의 아니 왜 안돼??? 젠장 또 에러메시지야.. LazyInitializationException : could not initialize proxy - no Session 즉, 프록시를 시작할 수 없다 그말씀이시네요. 프록시 문제인 것을 보니 아무래도 JPA 연관관계 매핑에서 오류가 난 듯하다. 2. 해결방안 접근 JPA 연관관계 매핑을 해 둔 엔티티로 가보자. 현재 Professor - Major 가 1:1 연관관계를 맺고 있다. (Professor가 major_ID 를 FK로 갖고 있는 구조다) 아무래도 위 사진에서 major 객체를 OneToOne으로 연관관계 매핑해줄 때..