| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
- gql restapi 차이
- 자바스크립트 엔진 v8
- FP 특징
- 웹 크롤링
- v8 원리
- 컨텍스트엔지니어링
- 항해99
- JS module system
- 알고리즘
- 테스트 코드 툴 비교
- 리액트 메모이제이션
- chromatic error
- 렌더링 최적화
- 항해99 부트캠프
- toggle-btn
- 코어자바스크립트
- Js module
- 웹팩 기본개념
- 실행컨텍스트
- 함수형 프로그래밍 특징
- @svgr/webpack nextjs jest
- js배열 알고리즘
- 타입스크립트
- Jest RTL
- @svgr/webpack issue
- 리액트 렌더링 최적화
- 리액트 메모
- this
- 프론트엔드 테스트 코드
- 항해99 사전스터디
- Today
- Total
목록전체 글 (83)
Jaeilit
이 글은 2026.10.05~2026.10.16 동안 실제로 구현한 지식 관리 도구의 구축 과정을 AI에게 블로그 글로 정리해 달라고 요청해 작성했습니다. Confluence에 제품 문서를 모아두는 것과, 개발 에이전트가 그 문서를 근거로 코드를 바꾸게 하는 것은 다른 문제였다.문서를 찾은 다음에도 현재 적용되는 규칙, 결정의 출처, API 계약, 수정할 코드와 검증 범위를 연결해야 했다.사이드프로젝트에서 이 연결을 로컬 지식 모델로 옮겼다. Node.js와 SQLite로 지식의 기준이 되는 저장소(이하 정본)와 CLI를 만들고, 같은 DB에서 Obsidian의 Markdown·Canvas 화면을 생성했다.이후 AI 에이전트가 원문을 기존 지식에 통합하는 LLM 위키 운영 흐름을 결합했다.이 글에서는 도..
AI를 “잘 쓰는 것”과 “제대로 개발하는 것”은 다르다.특히 LLM 기반 서비스에서는 단순한 모델 이해보다 컨텍스트 설계와 데이터 흐름이 더 중요하다.이 글에서는 실무에서 직접 부딪히는 핵심 개념만 정리한다. 토큰을 아끼는게 최근 주제인것 같다.1. Context (컨텍스트)컨텍스트는 모델이 응답을 생성할 때 참고하는 모든 입력 정보를 의미한다.구성 요소사용자 입력 (Prompt)이전 대화 (Chat History)시스템 지시 (System Prompt)외부 데이터 (RAG 등)핵심 특징모델은 상태를 저장하지 않는다 (stateless)오직 “현재 컨텍스트”만 보고 판단한다정리AI 성능 = 모델 성능 × 컨텍스트 품질2. Token (토큰)토큰은 모델이 텍스트를 처리하는 최소 단위다.특징단어 단위가 아..
1. 개요사건명: Axios npm 패키지 공급망 공격발생일시: 2026년 3월 31일영향 범위: Node.js 기반 프로젝트 전반 (npm/pnpm/yarn 환경)사건 유형: Supply Chain Attack (의존성 주입 기반 악성코드 실행)2. 사건 개요2026년 3월 31일, HTTP 클라이언트 라이브러리인 Axios의 유지관리자 계정이 탈취되어 악성 코드가 포함된 버전이 npm에 배포되었다.공격자는 해당 패키지에 plain-crypto-js@4.2.1을 의존성으로 추가하였으며, 이 패키지는 정상 라이브러리를 사칭(typosquatting)한 악성 패키지로 확인되었다.해당 악성 패키지는 설치 과정에서 postinstall 스크립트를 통해 외부 서버로부터 악성 페이로드를 다운로드 및 실행하는 방식..
배경목요일 퇴근길에 서비스를 한번 들어가봤는데 페이지에서 로딩이 엄청 걸렸습니다. 별도의 모니터링 서비스가 없어서 핸드폰으로 직접 클라우드에 접속해서 봤습니다. CPU가 100%를 찍고 서버가 다운이 됐었습니다. 이런 적이 없는데.. 이상함을 느끼고 즉시 집으로 돌아와서 확인 해봤습니다. EC2 인스턴스 갑작스러운 다운 트러블슈팅: SSH 브루트포스 공격과 OOM Killer 분석🚨 문제 발생운영 중이던 EC2 인스턴스에 SSH 접속을 시도하는 과정에서 연결 실패 에러가 발생했습니다.Failed to connect to your instanceError establishing SSH connection to your instance. Try again later. 1년 이상 안정적으로 운영해온 프로덕션..
배경JS로만 되어있는 프로젝트를 담당하게 되었습니다. 언어 레벨에서는 프로젝트의 안전성을 생각해서 TS를 도입해야한다고 생각했고 제안을 했습니다. 팀 리더분께서는 처음에 부정적인 시선으로 보셨고, 그래도 제 의견을 조금 고려해주셔서 발표 세션을 준비하라고 하셨습니다.이 내용은 내부적으로 설득에 이용했던 내용을 회사 코드를 걷어내고 조금 수정한 수정 본입니다.런타임 오류 방지자바스크립트의 한계는 타입 관련 오류를 실행 전에 잡아낼 수 없다는 점입니다.자바스크립트는 동적 타입 언어로, 변수의 타입이 실행 시점(런타임)에 결정됩니다. 예를 들어, 숫자를 기대하는 함수에 문자열을 전달해도 코드를 실제로 실행하기 전까지는 이러한 오류를 발견할 수 없습니다.이런 한계를 극복하고자 자바스크립트의 슈퍼셋으로 타입스크립..
AWS S3를 활용한 프로필 이미지 업로드 구현하기배경프로필 사진 업로드 관련해서 이미지를 저장할 S3 버킷을 생성하고 업로드하려고 합니다. 처음에는 S3 버킷도 무료가 아니기 때문에 도입을 망설였습니다. 요금이 크진 않겠지만 전송량, 저장용량, 조회, 업로드 등 버킷에 대한 요금이 발생할 수 있기 때문입니다. 하지만 Next.js에서 next/image를 활용하려면 외부 이미지에 대한 remotePattern이나 domains를 next.config.js에서 설정해주어야 합니다. 외부 도메인에 대한 URL이 랜덤하다면 도메인을 특정할 수 없으니 설정할 수 없고, 이미지 최적화 기능을 사용할 수 없게 됩니다. 다른 방법으로 next/image를 사용하지 않고 일반 HTML img 태그로 렌더링해도 됩니다..
도입배경서버개발을 시작하면서 API를 처음 설계하다보니 설계방식에 문제가 있었습니다. RESTfull 하게 작성하려고 더 나은 방식을 찾을 때마다 설계를 수정하게 되었고 도화지 위에서 그림을 그렸다 지웠다하는 식의 일이 반복적으로 발생했고 그로인해 개발의 속도가 나지않고 계속 제자리 걸음을 하는 듯한 느낌이 들었습니다. 느리지만 단단하게.. 가려고 했습니다. 누구나 처음에는 서툴지만, 잘해보이기 위해 능숙한척 하는 것보다 포인트를 정확히 짚고 넘어가면서 익숙해지면 자연스레 능숙함은 따라온다는 내 삶의 철학이 녹아있었기 때문이었습니다. 하지만 이런 서버의 API의 잦은 변경의 부하들은 클라이언트에서 다 받게 되었습니다.API 엔드포인트 변경요청/응답 body, parameter 구조 변경타입 불일치로 인한..
막상 사이트를 배포하고 나니 비정상적인 트래픽으로 인한 과금이 걱정되기 시작했습니다. 특히 디도스(DDoS) 공격처럼 악의적인 사용자가 서버에 수많은 요청을 동시에 보내거나, 봇이 API를 과도하게 호출하는 경우 AWS 요금이 예상치 못하게 과금될 수 있습니다. 아직은 걱정할 단계가 아닐지 모르지만, 과금이 발생한 후에 대책을 세우는 것보다 미리 예산을 방어하는 것이 현명하다고 판단했습니다. 현재 사이트의 아키텍처로는 가비아에서 구입한 도메인의 DNS 설정을 AWS Route53에서 관리하고 루트 도메인은 Next.js로 작성된 프론트엔드를 배포한 Vercel과 연결했고, 백엔드 서버는 'api'라는 서브도메인을 만들어 EC2와 연결해두었습니다.Next.js는 보안상 기본적으로 HTTPS로 통신하도록 설..
