Blog

총 19개의 글

400-인프라-아키텍처

host.docker.internal은 host의 localhost일까?

항상 나는 도커를 맥환경에서 docker desktop을 사용해서 이용했다. 이때는 자연스래 host.docker.internal는 host의 localhost구나라고 생각했다. 따라서 리눅스/우분투 환경에서 hos...

800-프로젝트

서버에서 mcp인증하기

> GUI가 없는 서버에서 HTTP 타입 MCP 인증하는 방법 HTTP 타입인 MCP들은 리다이렉트 URL을 이용해서 인증을 요구한다. https://www.figma.com/oauth/mcp?responsetype...

100-데이터분석-AI

evolution of system design

> AI 지식과 영어 실력 향상을 위해 UC Berkeley 강의를 영어로 정리하는 post다. > 한번 보기 > 한국어 해석 보기 > 다시 영문 강의 보면서 정리 순으로 진행하고 있다. > The figures ...

700-컴퓨터과학

인가와 XSS,CSRF 예시

컴퓨터 과목에서 보안하면 쉽게 떠올일 수 있는 공격이 XSS,CSRF이다. 나 또한 이를 많이 들어봤고 외우기도 하였지만 오랜만에 둘의 차이를 물으면 항상 햇갈리다. 인가할 때를 가졍하고 예시를 들며 이야기해보려고 ...

400-인프라-아키텍처

pubkey로만 접근 가능하게 했는데 비번으로도 접근이 가능하다..

SSH 설정에서 비밀번호 인증을 비활성화했는데도 비밀번호로 접근이 가능했다. shell $ sudo vi /etc/ssh/sshdconfig PermitRootLogin no # root 비활성화 P...

800-프로젝트

미니PC 세팅 및 네트워크 세팅

> 미니PC를 서버로 활용하기 위한 기본 OS 설정과 네트워크 구성 본인의 경우 당근에서 미니PC를 구매하여 배란다에 연결했다. 참고: https://chobopark.tistory.com/549 현 서버를 배포용 ...

400-인프라-아키텍처

kafka 메세지 전송

Kafka에서 메세지 전송 시 어떤 보장 수준을 선택할지가 중요하다. Kafka는 메세지 전송 시 다양한 보장 수준을 제공한다. - 메세지가 손실될 수 있지만, 중복은 발생하지 않음 - acks=0으로 설정 - 빠르...

700-컴퓨터과학

이벤트브로커 메세지브로커, 무엇이 다를까

이벤트와 메세지 브로커를 이해하기전에 브로커가 멀까? 왜 생겨났을까 브로커는 한국말로 중개인이다. 즉 통신 사이에 하나의 중개자를 둬서 처리한다는 것이다. 이렇게 처리하면 각 시스템의 결합도를 낮추고 비동기적으로 실...

300-백엔드개발

다른 서비스의 데이터가 필요할 때

성과분석 서비스에서 sns에서 성과분석을 하기위한 데이터를 매일 밤11시에 수집하도록 설계했다. 이때 sns서비스의 모든 유저계정,모든 게시물정보가 필요했다. - 장점 - 분석서비스에서 별도의 디비가 필요없음 - ...

400-인프라-아키텍처

Error - 장시간 요청 Cloudfront timeout

서비스 구조가 이렇게 되어있다. - client : pending으로 요청이 가다가 504 에러 - server > nginx : 499에러 - 499 에러는 client가 요청을 닫앗다 즉 취소했다는 에러코드입니다...

300-백엔드개발

webflux vs mvc 관련 의문점 정리

> 이미 많이 있지만 webflux와 spring mvc를 나의 언어로 정리하고 궁금한 것을 찾아보고자 한다 [동기 vs 비동기, 블로킹 vs 논블로킹](../700-%EC%BB%B4%ED%93%A8%ED%84%B0...

400-인프라-아키텍처

kafka가 멀까

> 대규모 실시간 데이터를 처리하는 오픈소스 분산형 이벤트 스트리밍 플랫폼 핵심 특성: 분산(Distributed), 유연(Resilient), 장애에 강함(Fault Tolerant) - 높은 처리량 - 컨슈머/...

400-인프라-아키텍처

msa 개념

마이크로서비스를 클라우드 네이티브 앱이라고도 부른다. 클라우드 앱 : 우리가 어디에 위치해잇든 알바 ㄴㄴ 사용자처리를 csp에서함 클라우드 네이티브 어플리케이션 : 클라우드에 최적화된 어플리케이션 | ...

300-백엔드개발

Spring MVC

- Model - 데이터를 처리하는 영역 - DB와 연동하여 사용자가 입력한 데이터나 사용자에게 출력할 데이터를 다룸 - View - 어플리케이션이 처리한 데이터나 그 작업 결과를 사용자에게 출력할 화면(UI)...

100-데이터분석-AI

Claude subagent와 notion mcp를 이용하여 작업기록 자동화하기

1. 프로젝트 하고나서 한 작업 기록을 하지 않아 해결했던 문제가 기억이 안난다. 하지만 매일 한 작업을 기록하기는 쉽지않다. 2. ai가 여러 작업을 시키면 잘 까먹는다. 3. todolist작성하라고 해도 매번...

800-프로젝트

서버 보안강화 - 접근

> GitHub Actions로 배포 시 사용할 배포 계정 생성 및 접근 권한 설정 ---|-----| | 그룹 | deployers | | 그룹 관리자 | deploy | | 사용자 | deploy1, deploy...

700-컴퓨터과학

디자인패턴 코드와 정리

하나의 클래스에 하나의 인스턴스, 데이터베이스 연결 모듈에 많이 사용 js //원리 constructor는 암묵적으로 this를 반환. class SingletonA{ constructor( ) { if(!...

200-프론트개발

개발자도구 사용방법

- Elements : html/CSS 상태 확인 - Console : 콘솔 (변수 정보를 확인하고 오류 메시지 표시) - Sources : 스크립트 디버깅 (break point 지정 및 변수 모니터링 ...

200-프론트개발

입력창에 추천 검색어를 띄워보자+최적화

- 닉네임 검색시 추천되는 닉네임이 뜬다. - 네이버처럼 추천 닉네임이 하단에 보인다. - 해당 닉네임 hover시 해당 부분이 조금 밝아진다. - 위아래 버튼 누를 시 해당 부분이 조금 밝아진다. [https://...