학습 기록 (Learning Logs)/Today I Learned (68) 썸네일형 리스트형 📄 이벤트/보상 시스템 명세서 (MVP 버전) 보호되어 있는 글입니다. 🚧 [정리] React와 Spring에서 외부 API 호출 시 CORS와 패킷 차이 🚧 [정리] React와 Spring에서 외부 API 호출 시 CORS와 패킷 차이프론트엔드 개발을 하다 보면 종종 "왜 이 API는 Spring에서는 잘 호출되는데,React에서는 안 되지?" 같은 경험을 하게 된다.그 원인은 대부분 브라우저의 CORS 정책(Cross-Origin Resource Sharing) 때문이다. 이 글에서는 React(브라우저)와 Spring(서버)에서 외부 API를 호출할 때 어떤 차이가 발생하는지,그리고 실제 패킷은 어떻게 다르게 전송되는지 자세히 살펴본다. React에서 직접 호출하느냐,서버(SPRING 등)에서 호출하느냐에 따라CORS 정책 적용 방식이 달라진다CORS가 궁금하다면?https://docs.tosspayments.com/blog/payment-wind.. 22. 가상 메모리 - 정책 (Policy) 페이지를 교체하기 위해서는 페이징을 해야하는데, 필요한 정책을 정리한다. ## 1. 문제 설정> 물리 메모리가 부족할 때, 어떤 **페이지를 제거(evict)** 할지 결정해야 한다.- 디스크 I/O는 느리기 때문에 잘못된 페이지 제거는 **성능에 치명적**이다.- 좋은 교체 정책이 중요하다.## 2. 페이지 교체 정책들 (Page Replacement Policies)### 🔹 OPT (Optimal Replacement)> **가장 늦게 사용할 페이지를 제거** > (미래를 알 수 있다면 최적)- 이상적인 모델.- 현실에서는 불가능하지만, 다른 알고리즘 성능 비교 기준(Benchmark)으로 사용함. ### 🔹 FIFO (First In First Out)> **가장 오래전에 들어온 페이지를 제.. 🔎 Read Lock, ✏ Write Lock 🔎 Read Lock (읽기 락)여러 쓰레드가 동시에 획득 가능데이터를 읽기만 할 때 사용읽기 락을 가진 쓰레드들은 서로 방해하지 않고 동시에 읽을 수 있음write lock이 걸리면 읽기 락도 막힘비유: 도서관 책을 여러 사람이 동시에 읽는 상황 목적: 동시에 여러 스레드/프로세스가 같은 데이터에 접근할 때 충돌 방지1️⃣ 읽기 락 (Read Lock) 쓸 때- 캐시 데이터 조회- 상품 상세 조회- 실시간 인기 게시글 조회읽기는 자주, 쓰기는 드물 때여러 스레드가 동시에 읽어도 상관없는 경우읽기 락은 여럿이 동시에 획득 가능해서 속도 빠름✏ Write Lock (쓰기 락)오직 하나의 쓰레드만 획득 가능데이터를 수정(쓰기) 할 때 사용쓰기 락이 걸리면 다른 읽기/쓰기 락 모두 대기해야 함비유: 책을 수.. Solana Breakout Hackathon Solana Breakout Hackathon이라는 글로벌 온라인 해커톤 대회에 대한 정보를 제공합니다. 이 대회는 2025년 4월 14일부터 5월 16일까지 진행되며, 참가자들은 Solana 블록체인 기반의 다양한 분야에서 혁신적인 프로젝트를 개발하게 됩니다. 🏆 주요 상금 및 기회Grand Champion: $50,000 USDCPublic Goods Award: $10,000 USDCUniversity Award: $10,000 USDCSolana Mobile Award: $25,000 USDC각 트랙별 상금: 1등 $25,000부터 5등 $5,000까지Best University Team Prize: 각 트랙별 $2,500또한, 수상자들은 Colosseum의 액셀러레이터 프로그램에 지원할 수 .. 채팅 테스트 @Overridepublic void registerStompEndpoints(StompEndpointRegistry registry) { registry.addEndpoint("/ws-chat") .setAllowedOriginPatterns("*") // 이거 있어야 외부에서도 접근 가능 .withSockJS();}/ws-chat가 맞아.근데 .withSockJS()를 썼네?➡️ withSockJS()를 쓰면 클라이언트도 SockJS 프로토콜로 연결해야 해.즉, 그냥 WebSocket으로는 안 된다.SockJS는 표준 WebSocket과 handshake 방식이 달라서 Postman이 못 붙는다. 현재 설정상 withSockJS() 붙음표준 WebSoc.. 로컬에서 채팅 테스트 그룹채팅에서 카프카로 보낸 메세지를 받을수잇는지 로컬 테스트 하려고해. ✅ Kafka로 메시지를 보냄✅ WebSocketSender 서비스 있음❌ WebSocket 클라이언트 UI 없음 (Swagger만 있음) 1. 로컬 테스트 환경 서버 몇개 띄어야해?2. WebSocketSender 컨트롤러는 어떻게 만들어?3. WebSocketSender를 접속해야하는데 프론트 화면이 없어. swagger만 있어 어떻게 채팅처럼하지? ✅ 1. 로컬 테스트 환경: 서버 몇 개 필요한가?최소한 2개 띄우면 구조 테스트가 가능구성설명🔹 1번 서버채팅 메시지를 Kafka에 발행 (ChatController, KafkaProducer)🔹 2번 서버Kafka 메시지를 수신하여 WebSocketSender로 broadcas.. 컴퓨터 핵심 부품(메모리, cpu, 보조기억장치, 보조기억장치) 메모리메모리: 현재 실행되는 프로그램의 명령어, 데이터를 저장하는 부품1칸, 1칸에는 주소가 있다. 프로그램이 실행되기 위해서는 메모리에 저장되어 있어야 한다.메모리는 실행되는 프로그램의 명령어와 데이터를 저장한다.메모리에 저장된 값의 위치는 주소로 알 수 있다. CPU CPU: 메모리에 저장된 명령어를 읽음 -> 해석 -> 실행 하는 장치ALU: 계산기레지스터: CPU 내부의 작은 저장장치제어장치: 제어 신호를 내보내고, 명령어를 해석하는 장치제어신호: 컴퓨터 부품들을 관리하고, 작동시키기 위한 전기 신호cpu가 메모리에 저장된 값을 읽고 싶을 때: 메모리를 향해서 메모리 읽기 라는 제어신호를 보낸다cpu가 메모리에 값을 저장하고 싶을 때: 메모리를 향해서 메모리 쓰기 라는 제어신호를 보낸다 .. 이전 1 2 3 4 ··· 9 다음