전체 글(292)
-
개발 일지 쓰듯 기록하기: 자동화 시스템과 협업을 위한 컨텍스트 동기화 기술
최근에 진행하던 자동화 프로젝트를 진행하면서 정말 머리 터지는 경험을 하나 했습니다. 🤯문제의 핵심은 '세션 기반(Stateless)' 환경에서 발생하는 컨텍스트 유실이었습니다. 내가 짜놓은 복잡한 스크립트가 중간에 멈추거나, 네트워크 오류로 인해 재시작될 때마다 이전 단계에서 어디까지 진행됐고 어떤 결정을 내렸는지 시스템이 완전히 '망각'해버리는 상황이었죠. 특히나 단순히 코드가 실행되는 것을 넘어, 여러 단계를 거치며 누적된 데이터와 의사결정의 흐름을 유지해야 하는 긴 호흡의 작업에서는 이 문제가 치명적이었습니다.처음에는 그냥 로그를 좀 더 자세히 남기면 되겠지 싶었지만, 실상은 훨씬 복잡했습니다. 단순히 "무엇이 실행되었다"가 아니라, "왜 이렇게 처리되었고, 다음 단계에서 무엇을 고려해야 하는가..
-
클라우드플레어(Cloudflare) Workers 기반 블로그 SEO 프록시 중계 설계
🚀 멀티 채널 콘텐츠의 통합, 왜 'Proxy'가 필요한가?최근에 개인 블로그를 운영하면서 한 가지 큰 고민이 생겼습니다. 바로 네이버와 티스토리라는 서로 다른 플랫폼에 올리는 글들을 어떻게 하면 하나의 단일 독립 도메인으로 묶어서 브랜드 가치를 높이고 SEO(검색 엔진 최적화) 효과를 극대화할 수 있을까 하는 문제였습니다.각기 다른 플랫폼의 URL 구조(blog.naver.com/..., tistory.com/...)는 파편화된 사용자 경험을 제공하고, 무엇보다 검색 엔진이 우리 브랜드의 권위(Authority)를 한곳에 집중시키지 못하게 방해하더라고요. 그래서 저는 Cloudflare Workers를 활용한 프록시 중계 시스템을 구축하기로 결정했습니다.단순히 리다이렉트(301 Redirect)를 하..
-
API 없는 세상의 RPA 제약과 우회 기술: Stealth 모드와 세션 Preflight
매일 반복되는 단순 작업의 굴레에서 벗어나기 위해 자동화를 구축하는 것은 개발자에게는 거의 본능에 가까운 행위입니다. 저 역시 최근에 티스토리와 네이버 블로그에 정기적으로 포스팅을 올리는 시스템을 구축하면서 아주 깊은 고민에 빠지게 되었습니다. 🚀문제의 핵심은 간단하지만 아주 강력한 장벽에 있었습니다. 바로 "공식 API가 없는 환경에서의 대규모 크롤링 및 자동화 제약"입니다. 많은 플랫폼이 스팸 방지를 위해 공식적인 도구(API)를 제공하지 않거나, 매우 제한적으로만 제공하죠. 결국 제가 선택할 수 있는 길은 Playwright나 Selenium 같은 E2E 브라우저 자동화를 이용하는 것이었습니다. 하지만 이 과정에서 봇 감지 시스템과의 치열한 '창과 방패'의 싸움이 시작되었습니다. ㅠㅠ1. 첫 번째..
-
수정하기 자동화의 복병: 에디터 초기화 누락과 클립보드 중복 붙여넣기
🚀 자동화의 늪에서 만난 뜻밖의 암초개발자로서 업무를 자동화할 때 가장 기분 좋은 순간은 "내가 반복하던 노가다가 시스템에 의해 완벽하게 처리될 때"입니다. 최근 저는 블로그 포스팅 관리 시스템을 고도화하면서 Redirect=Update 파라미터를 활용해 기존 글을 수정하는 프로세스를 자동화하고 있었습니다.새로운 정보가 업데이트될 때마다 해당 게시물의 ID를 기반으로 URL을 생성하고, 미리 준비된 새 본문을 주입하여 업로드하는 시나리오였죠. 이론적으로는 완벽했습니다. 하지만 실제 Playwright 스크립트를 돌려보자마자 예상치 못한 버그와 마주하게 되었습니다.⚠️ "왜 글이 두 번 써지는 거지?" (The 'Double Paste' Issue)문제는 네이버 스마트에디터 ONE을 채택한 블로그 환경에..
-
마크다운 인라인 파서의 한글 조사 결합 붕괴와 경계선 파싱 기술
오늘도 개발자의 숙명은 '당연하다고 생각했던 것'이 깨질 때 찾아오는 그 치열한 디버깅 과정에 있는 것 같습니다. 🚀 오늘 제가 겪은 문제는 아주 작지만, 마크다운 파싱이라는 기초적인 단계에서 한글 문법과 정규표현식 엔진의 특성이 충돌하며 발생하는 아주 날카로운 포인트였습니다.🧐 문제의 발단: "왜 내 볼드체는 깨지는가?"최근 우리 프로젝트의 블로그 자동화 시스템을 구축하면서 marked 라이브러리를 기반으로 인라인 마크다운 파서를 커스터마이징하고 있었습니다. 기본적인 기능은 잘 작동하는 듯 보였으나, 실제 포스팅 내용을 검수하던 중 기묘한 현상을 발견했습니다.영어 문장에서는 문제없이 동작하던 볼드체(bold*)나 이탤릭(*italic*) 처리가, 한글 문장에서 조사(이, 가, 을, 를, 은, 등)*..
-
VRAM 스래싱과의 전쟁: 로컬 GPU OOM 극복과 글로벌 페이즈 스플릿 (Flux와 AnimateDiff 결합 아키텍처)
VRAM 스래싱과의 전쟁: 로컬 GPU OOM 극복과 글로벌 페이즈 스플릿 (Flux와 AnimateDiff 결합 아키텍처)로컬 개발 환경(특히 Apple Silicon Mac이나 RTX 단일 그래픽카드 환경)에서 거대한 디퓨전 AI 모델들을 이중 결합하여 영상 파이프라인을 돌리다 보면 100% 직면하는 죽음의 문턱이 있다.바로 'VRAM OOM (Out Of Memory, 메모리 초과)' 에러다. ㅋ텍스트에서 고화질 이미지를 생성하는 Flux(T2I) 모델과, 그 이미지를 기반으로 동적 비디오를 유도하는 AnimateDiff(I2V, SD 1.5) 모델을 매 컷(Scene)마다 번갈아 로드하려다 보니, GPU 메모리가 요동치며 맥북이 강제 셧다운되는 절망적인 병목을 만났다.이번 글에서는 VRAM 경합에..