본문 바로가기

분류 전체보기52

[React + SpringBoot] 1대1 랜덤채팅 프로젝트 - 화면 및 기능 설계 (실시간 통신, 매칭) 일대일 랜덤채팅 프로젝트 1. 환경설정 및 구성 2. 화면기능 및 설계 (현재) 3. Spring + 웹소켓 + STOMP 설정 4. Spring + Redis 설정 및 사용방법 5. Spring + Redis 매칭 로직 목적 - 로스트 아크 게임 유저들을 위한 깐부 찾기 랜덤채팅 사이트 구성 - 프론트 : React, Shadcn, Javascript, Socket, STOMP - 백 : SpringBoot, Java, MySQL, Redis, WebSocket, STOMP 목차 앞선 포스팅에서 간단한 프로젝트 소개와 구성에 대해 안내했다. 이번에는 내가 구상한 기능에 대한 소개와 어떤 프레임워크와 라이브러리를 통해 해당 기능을 구현하는지에 대한 큰 설명을 해보려고 한다. 당 프로젝트의 가장 핵심은 '.. 2024. 3. 8.
[React + SpringBoot] 1대1 랜덤채팅 프로젝트 - 환경설정 및 구성 일대일 랜덤채팅 프로젝트 1. 환경설정 및 구성 (현재) 2. 화면기능 및 설계 3. Spring + 웹소켓 + STOMP 설정 4. Spring + Redis 설정 및 사용방법 5. Spring + Redis 매칭 로직 처음 프로젝트를 해보려고 할 때 socket을 이용한 채팅 사이트도 하나 만들어보고 싶었다. 하지만 REST API 통신부터 제대로 인지못한 상태에서 소켓을 이용한 실시간 통신을 한다는 건 힘들 것 같아서 미루고 미루다가 드디어 1인 프로젝트로 시작해보게 되었다. 기존에는 Thymeleaf를 이용한 간단한 웹 프로젝트를 진행하였으나 좀 더 많은 기능들을 편안하게 쓰기 위해서 React를 공부해서 진행했고 처음 쓰다보니 우당탕탕 코드들도 많다. 목적 - 로스트 아크 게임 유저들을 위한 깐.. 2024. 3. 8.
[AWS Redis] SpringBoot + Redis 설정 및 생성, EC2(AmazonLinux) 설정까지 이번 프로젝트에서 실시간 통신 및 실시간 매칭 서비스를 이용하기 위해 Redis를 처음 사용해보게 되었다. SpringBoot 설정부터 EC2연동까지 우선 작업을 진행했고 설정은 쉬울 줄 알았는데 생각보다는 오래 걸렸다. 목차 0. SpringBoot Redis 설정 build.gradle 설정 // Redis implementation 'org.springframework.boot:spring-boot-starter-data-redis' application.yml 설정 spring: redis: host: #AWS Redis 엔드포인트 port: 6379 위처럼 Spring에서 기본 설정 후 AWS에서 Redis 생성을 해보도록 하자. 순서는 생성부터 진행해도 상관없다. 1. Redis 캐시 생성 1.. 2024. 2. 13.
[Java/Spring] 개선된 아키텍쳐로 리팩토링 & 자바 테스트 인프런 - Java/Spring 테스트를 추가하고 싶은 개발자들의 오답노트 / 섹션4 강의 레이어드 아키텍쳐에서 (직관적인 형태) 서로 역의존성을 주입한 상태로 바꾸기 위해 개선된 아키텍쳐로 변경하는 작업을 끝내고 -추상화작업- 그에 맞춰 테스트에도 새로운 방식을 적용하게 되었다. 우선 뜯어고치는 단계에 대해 설명해주시는데 그 부분 덕에 깃허브 코드들 종종 보면 그놈의 Impl 클래스가 왤케 많냐~~~~~~ 싶었던 부분이 해소됐다. 이게 의식의 흐름대로 구조를 직관적으로 짜게 되면 나오는 아키텍쳐다. 실제로 내가 첫 프로젝트를 생성할 때도 그렇게 진행을 했었다. 그런데 이처럼 구조를 만들게 되면 테스트를 하게 될 때 DB를 자꾸 연결해서 테스트 할 수 밖에 없고 테스트하고 싶은건 Repository인데 .. 2024. 1. 21.