본문 바로가기

전체 글

(92)
Embedded Redis 설정 Embedded Redis 설정 /** * 로컬 환경일경우 내장 레디스가 실행 */ @Profile("local") @Configuration public class EmbeddedRedisConfig { @Value("${spring.redis.port}") private int redisPort; private RedisServer redisServer; @PostConstruct public void redisServer() { redisServer = new RedisServer(redisPort); redisServer.start(); } @PreDestroy public void stopRedis() { if (redisServer != null) { redisServer.stop(); } }..
Redis(레디스) 항해 58일차 2022.03.08 Redis를 사용해서 채팅 내용을 저장 하려고 했으나 멘토님의 조언으로 채팅 내역은 DB에 저장하고 채팅 참여 인원수에 Redis를 사용해보기로 했다. Redis Key-value의 비정형 데이터로 구성해 저장, 관리하기 위한 비관계형 데이터베이스 관리 시스템 모든 데이터를 메모리로 불러와서 처리하는 메모리 기반 DBMS 장점 List, Array데이터를 처리하는데 효과적이다. tring, List, Set, Hash , Sorted sets 등 여러 데이터 포맷을 지원하여 다양한 방식의 데이터 활용이 가능 원자성 보장을 위한 처리 함수를 제공한다. 여러 프로세스에서 같은 데이터를 요청 시 , Atomic 처리를 하기 위한 전용 함수를 제공 메모리를 활용하면서도 영속적인..
WebSocket_2 채팅 고도화 ChatMessage 채팅 메시지를 주고받기 위한 DTO @Getter @Setter public class ChatMessage { // 메시지 타입 : 입장, 채팅 public enum MessageType { ENTER, TALK } private MessageType type; // 메시지 타입 private String roomId; // 방번호 private String sender; // 메시지 보낸사람 private String message; // 메시지 } ChatRoom 채팅방을 구현하기 위한 DTO 채팅방은 입장한 클라이언트들의 정보를 가지고 있어야 하므로 WebsocketSession 정보 리스트를 멤버 필드로 갖는다. 채팅방은 입장,대화하기의 기능이 있으므로 hand..