본문 바로가기

전체 글381

[AWS] S3(클라우드 스토리지 서비스) 요즘 가장 대중적인 클라우드 스토리지 서비스는 바로 AWS의 S3(Simple Storage Service)이다.이번 글에서 한번 S3의 개념부터 구조, 주요 기능, 실무 예시까지 다뤄보자! ㅁS3(Simple Storage Service): AWS의 클라우드 기반 오브젝트 스토리지 서비스 파일 시스템처럼 디렉터리 구조를 가지지 않지만, 키-값 기반의 저장 방식으로 모든 데이터를 객체(Object)로 저장한다.S3는 다음과 같은 특징을 갖는다:무제한 확장성: TB, PB 단위의 대용량 데이터도 저장 가능고가용성 및 내구성: 99.999999999%의 내구성(11 9's)을 보장서버리스 구조: EC2나 서버 없이도 파일 저장 가능HTTPS 기반 접근: 안전한 인터넷 기반 접근 [S3의 기본 구성요소]B.. 2025. 7. 3.
[Git] 깃허브 미러링: 커밋 내역을 살려 레포지토리를 분리하는 기술 하나의 GitHub 레포지토리가 점차 커지면서, 기능 단위 또는 모듈 단위로 분리할 필요가 생기는 경우가 많다. 이때 단순히 디렉터리를 복사해 새로운 레포에 업로드하는 방식은 기존 커밋 이력(히스토리)을 보존하지 못한다는 단점이 있다. 이 글에서는 Git의 mirroring 기술을 활용해, 커밋 내역까지 유지하면서 특정 디렉터리를 별도 레포지토리로 분리하는 방법을 소개하려 한다! 사용 기술: git filter-repo (또는 git filter-branch)git filter-repo란?git filter-repo는 Git 공식이 권장하는 히스토리 리라이팅 툴로, 특정 디렉터리만 추출하거나 파일을 제거할 때 기존 커밋 이력을 유지한 채 작업할 수 있게 해준다. (전체 흐름 요약)원본 레포 복제 (.. 2025. 6. 24.
[웹 지식] 그놈의 CORS(Cross-Origin Resource Sharing) - 교차 출처 리소스 공유 웹 개발을 하다 보면 진짜 질리도록 듣는 말이 있다CORS 에러가 났어요!CORS 해결해야 해요!오늘은 이 악명높은 CORS에 대해 알아보려 한다..! 먼저 동일 출처 정책(Same-Origin Policy)이란?브라우저는 기본적으로 동일 출처(Same-Origin) 간의 요청만을 허용한다!출처(origin)란 아래 세 요소로 정의된다Origin = 프로토콜 + 도메인 + 포트브라우저는 이 조건을 만족하지 않는 출처 간의 요청을 보안상 차단하며, 이를 우회하거나 허용하려면 서버가 명시적으로 CORS를 허용해야 한다. CORS 사용 상황 예시프론트엔드(Vue/React): http://localhost:3000백엔드(Spring Boot API): http://localhost:8080위 두 출처는.. 2025. 6. 18.
[웹 지식] WebSocket 개념과 실제 프로젝트 명세서 예시 채팅 시스템은 거의 WebSocket으로 구현한다. 오늘은 Unix프로그래밍 수업에서 배웠던 소켓과 같은 부류인 웹소켓에 대하 알아보자!ㅁWebSocket: 하나의 TCP 연결을 통해 클라이언트와 서버 간에 실시간, 양방향 통신을 가능하게 해주는 프로토콜 2011년 IETF에 의해 RFC 6455로 표준화되었으며, HTML5의 일부로 웹 브라우저에서 기본적으로 지원된다 1. WebSocket 특징Full-duplex 통신HTTP는 요청-응답 기반의 Half-duplex 구조이나, WebSocket은 요청 없이도 서버가 클라이언트에게 자유롭게 데이터를 보낼 수 있는 구조이다. 이를 통해 실시간 알림, 채팅, 게임 등에서 즉각적인 반응을 구현할 수 있다.연결 유지(Persistent Connection)W.. 2025. 6. 11.
[웹 개발] 홈텍스 정산시스템 만들기 (바로빌 API 연동 후기) 1. 정산시스템 만들기 프로젝트 개요, 그 첫걸음!“자동으로 홈택스 데이터를 긁어오고, 정산 시스템에서 바로 확인 및 저장, 보고까지 가능하면 얼마나 좋을까?”이 생각이 바로 정산시스템 만들기 프로젝트의 출발이었다. 하지만 문제는 기능 구현이었다.홈택스는 공공기관이다 보니 직접적으로 API를 제공하지 않으며, 정산시스템을 만들기 위해서 전자세금계산서 발행 기능을 구현해야 하는데 생각보다 공동인증서 등록 기능 구현, 수정세금계산서 발급 기능 등 사용자 계정 제약 등 고려해야 할 게 많았다. 이런 연동을 직접 구현하는 건 기술적 허들도 크고, 보안상 리스크도 있었기에 외부 API 연동 솔루션을 활용하는 방향으로 결정했다. 이때 검색으로 찾은 바로빌 개발자센터가 눈에 들어왔다. 솔직히 처음에는 생소한 이름이.. 2025. 6. 4.
[Redis] 초간단 설치 + 실행법 (macOS 기준) https://claremont.tistory.com/entry/Redis-%EB%A9%94%EB%AA%A8%EB%A6%AC-%EA%B8%B0%EB%B0%98-%EB%8D%B0%EC%9D%B4%ED%84%B0-%EC%A0%80%EC%9E%A5%EC%86%8C%EC%9D%98-%EC%8B%A4%EC%9A%A9%EC%A0%81-%EC%9D%B4%ED%95%B4 [Redis] 메모리 기반 데이터 저장소의 실용적 이해실시간 처리 시스템을 설계할 때 빠지지 않고 등장하는 기술 중 하나가 바로 Redis(레디스)이다. 나 역시 AI 면접 시스템에서 실시간 STT 처리와 병렬 분석을 구현하면서 Redis의 유용함을 깊이 체감claremont.tistory.comRedis의 개념은 위의 글에서 정리해 놨다! 본 글.. 2025. 5. 23.
[웹 지식] Blob 개념 + 실제 프로젝트 적용 예시 [Blob 개념 두 줄 요약] 브라우저에서 녹음하면 처음부터 파일이 Blob 형태로 존재한다. 그리고 이 Blob 형태를 통해서 안전하게 서버로 전송하고 서버는 이 Blob 형태를 받으면 mp3, wav 등 원하는 파일 포맷으로 저장하거나 변환이 가능하다! 웹에서 대용량 데이터를 다룰 때 자주 등장하는 개념이 바로 Blob(블롭)이다. 특히 오디오, 비디오, 이미지와 같은 비정형 대용량 파일을 다룰 때 필수적인 개념이다. 본 글에서는 Blob의 개념을 설명하고, 실제로 Blob이 어떻게 활용되는지를 AI 면접관 프로젝트 사례를 중심으로 설명하고자 한다!(SK AXIS 프로젝트) ㅁBlob(Binary Large Object): 큰 이진 객체 데이터이는 텍스트가 아닌 다양한 멀티미디어 데이터를 저장하거.. 2025. 5. 23.
[Redis] 메모리 기반 데이터 저장소의 실용적 이해 실시간 처리 시스템을 설계할 때 빠지지 않고 등장하는 기술 중 하나가 바로 Redis(레디스)이다. 나 역시 AI 면접 시스템에서 실시간 STT 처리와 병렬 분석을 구현하면서 Redis의 유용함을 깊이 체감했다.(SK AXIS 프로젝트) 이 글에서는 Redis의 개념부터 실전에서 어떻게 쓰이는지까지 정리해보려 한다! ㅁRedis(Remote Dictionary Server): 메모리 기반의 키-값 데이터 저장소 Redis는 일반적인 RDBMS(MySQL, PostgreSQL 등)와는 달리, 디스크가 아니라 메모리(RAM)에 데이터를 저장하기 때문에 압도적으로 빠른 속도를 자랑한다! 또한 단순한 캐시 서버를 넘어서, 아래와 같은 다양한 구조를 지원한다.문자열(String)리스트(List)해시(Hash)셋.. 2025. 5. 22.
[웹 개발] WebRTC와 MediaRecorder API, 그리고 외부 장치 사용까지 최근 브라우저만으로도 영상 통화, 음성 녹음, 실시간 스트리밍이 가능한 시대가 되었다. 별도의 네이티브 애플리케이션 없이도 이런 기능을 구현할 수 있게 된 데에는 WebRTC와 MediaRecorder API라는 두 가지 기술이 핵심 역할을 한다. 본 글에서는 이 두 기술의 기본 원리와 차이점, 그리고 내가 실제로 개발한 SK AX AI 면접관 도우미 "SK AXIS" 프로젝트에서 외부 카메라와 외부 마이크를 사용하는 과정에서 느낀 점을 정리해보고자 한다! 1. WebRTC(Web Real-Time Communication): 웹 브라우저 간의 실시간 영상/음성/데이터 통신을 가능하게 하는 기술 대표적인 사용 사례로는 Google Meet, Discord, Zoom Web 버전 등이 있다.\WebRT.. 2025. 5. 22.