728x90
반응형
SMALL

전체 글 219

[Server] 내장 톰캣 대신 Nginx 리버스 프록시를 도입한 이유

처음에 빠르고 간단히 내장톰캣으로 프로젝트 개발을 시작했었다.implementation 'org.springframework.boot:spring-boot-starter-web' [Server] 내장 톰캣 대신 Nginx 리버스 프록시를 도입한 이유사이드 프로젝트를 운영하면서 이런 구조가 되었다.Next.js (static export)Backend API 서버LLM Agent 서버크롤러이미지 리소스문제는 모두 한 서버에서, 각기 다른 포트로 떠 있었다는 점이다.왜 Nginx를 고민했을까?1️⃣ 포트 단일화FE: 정적 파일BE: 8080Agent: 8081사용자는 하나의 도메인으로 접속하지만 실제 서비스는 여러 포트에서 동작 중이었다.이를 다음처럼 정리하고 싶었다.example.com → 정적 파일e..

IT/etc 2026.02.20

[AI] Kanana-o, 카카오 독자 개발 옴니(Omni) 모델. 과연 사람과 얼마나 가까울까?

2026.02.12 모집 시작. 그리고 2026.02.20, 안내 메시지가 도착했습니다. 요즘 카카오는 확실히 AI에 집중하고 있다는 느낌을 받습니다. 이번에 공개된 모델은 Kanana-o국내 최초 통합 멀티모달 언어모델이라고 소개합니다. https://omni.kanana.ai/?t_src=talk&t_ch=msg Kanana-o더욱 똑똑하게 답하며, 더욱 풍부한 감정표현을 향한 Kanana-o의 진화 과정omni.kanana.ai 사람에 가까운 자연스러운 이걸 엄청 강조하는 것 같습니다. 최근 LLM은 성능 경쟁을 넘어 “어떻게 경험을 설계하느냐”의 단계로 넘어가고 있다고 느낍니다. Kanana-o 역시 멀티모달 + 자연스러운 발화 + 한국어 최적화라는 방향으로 카카오식 AI..

IT/AI 2026.02.20

[AI] 카카오 AI 앰배서더, AI를 소비하면서 동시에 제품으로 만드는 개발자.

https://tech.kakao.com/posts/809 카카오 AI 앰배서더 ‘KANANA 429 앰배서더’를 신규 모집합니다. - tech.kakao.com이 글은 카카오 공식 보도자료로, 기술블로그에 동시 게재합니다. KANANA...tech.kakao.com 어느날 "카카오 AI 앰배서더" 공개 모집 알림톡이 날라왔습니다.AI를 실사용 및 개발하고있는 요즘, 외부 커뮤니티 활동에도 참여하면 좋을 것 같다고 생각하여 신청했습니다. 이왕이면 내부 프로젝트에만 머무르지 않고, 외부 커뮤니티 활동을 통해 더 넓은 관점에서 AI를 다뤄보고 싶었습니다. 그래서 지원했습니다. 지금은 안보이지만, 3가지 중에 하나를 선택해야 하더군요. 지원 분야는 세 가지였습니다. - AI 전문가 - 콘텐츠 크..

IT/AI 2026.02.20

[MCP] JSON-RPC 2.0 API 동적 대시보드 만들기: Swagger처럼 브라우저에서 Tool 테스트하기

[MCP] JSON-RPC 2.0 API 동적 대시보드 만들기: Swagger처럼 브라우저에서 Tool 테스트하기배경REST API 서버를 개발할 때 Swagger UI가 얼마나 유용한지 알 것입니다. 요청/응답을 시각적으로 확인하고 바로 테스트할 수 있으니까요.그런데 JSON-RPC 2.0 프로토콜 기반 MCP 서버를 만들면서 같은 편의성이 필요했습니다. PlayMCP 클라이언트도 좋지만, 개발 중에는 빠른 디버깅이 필요하거든요.그래서 만들었습니다: GET /api/mcp 요청 시 동적으로 생성되는 인터랙티브 HTML 대시보드.문제: 프로토콜이 다르면 테스트 도구도 달라진다Swagger UI: REST API용 (각 엔드포인트별 문서화)Postman: JSON-RPC 2.0? 복잡한 요청 포매팅 필수우..

IT/AI 2026.02.20

[Backend] SSE vs WebSocket: 실시간 통신 방식 언제 뭘 쓸까?

[Backend] SSE vs WebSocket: 실시간 통신 방식 언제 뭘 쓸까?📊 빠른 비교표항목SSEWebSocket프로토콜HTTPTCP통신 방향단방향 (서버→클라이언트)양방향 (전이중)연결 유지HTTP 연결 유지별도 소켓 유지자동 재연결✅ (기본 내장)❌ (수동 구현)CORS간단복잡구현 복잡도쉬움어려움리소스 사용중간많음🔍 언제 뭘 쓸까?1️⃣ SSE (Server-Sent Events)"서버가 일방적으로 계속 밀어주기"Usecase:- 장시간 작업의 진행상황 표시 (파일 업로드, 데이터 처리)- 실시간 알림 (새 메시지, 주문 상태 변경)- 라이브 피드 (실시간 뉴스, 대시보드)흐름:[클라이언트] --연결 유지--> [서버] ├─ [0.5초] 진행..

IT/java|Spring 2026.02.18

[MCP] Gemini + LangChain4j 활용하여 검색 기능 개선

[ MCP Inspertor Search Result ] 상황기존 검색은 정해진 SQL로 단순 키워드만 조회했습니다. 이번에 Gemini AI(무료 플랜) + LangChain4j를 결합하여 자연어를 JSON으로 변환한 후, 동적 SQL을 안전하게 생성하는 시스템을 구현했습니다. 핵심 개선사항기존: 고정 SQL, WHERE 조건 사전 정의개선: 자연어 → LLM 분석 → JSON 추출 → 동적 SQL (유연성 ↑)아키텍처 흐름사용자 입력 (자연어) ↓[Gemini 2.0 Flash] 검색 조건 분석 ↓JSON 파싱 (필터 조건 구조화) ↓[PreparedStatement] 안전한 SQL 조립 ↓데이터베이스 실행 → 결과 반환실제 예시입력: "금융 회사의 5년 이상 경력 개발자 공고..

IT/AI 2026.02.17

[Supabase] DB 연결 실패? Connection Pool Size 부족 문제 해결하기

무료형 SaaS DB를 처음 써보는 것이기도 하고, 이렇게 작게 기본값이 되어 있을 줄 몰랐다. 문제 상황Supabase Postgres를 사용하던 중, Spring Boot 애플리케이션에서 간헐적으로 DB 명령문이 실행되지 않는 현상이 발생했다.❌ [ERROR] java.sql.SQLException: Cannot connect to databaseorg.postgresql.util.PSQLException: too many connections for role "user_account"검색해보니 Supabase의 기본 Connection Pool Size가 너무 작다는 것이 원인이었다.원인 분석Supabase는 Compute Size(사양)에 따라 기본 Pool Size가 결정된다.Comput..

IT/DB 2026.02.12

[PlayMCP] 내가 만든 MCP 서버를 카카오에 등록하다.

오늘 드디어 MCP 서버를 배포했습니다.원래 공모전이 뜨자마자 @DBrider3와 참가하려했지만, 일정상 참가하진 못했고, 이렇게 만들어보았습니다.https://playmcp.kakao.com/ PlayMCP | 새로운 AI 경험의 시작PlayMCP와 함께하는 AI 에이전트 세상, 새로운 AI 경험을 만들어 보세요.playmcp.kakao.com 아직 심사 전이지만, 앞으로의 기능 확장이 기대됩니다.등록화면 Inspector 테스트 성공 화면 MCP 서버 적용 및 사용 화면 마치며참고로, 저처럼 MCP 서버를 만들어보고자 하신다면,아래 가이드를 우선적으로 읽으시면 좋을 것 같습니다.카카오에서 공식 배포한 가이드입니다.https://www.notion.so/MCP-2d89b97b4888808a..

IT/AI 2026.02.11

[MCP] JSON 응답 vs 스트리밍, 실전에서 고른 구현 방식

Model Context Protocol(MCP)로 AI에 기능을 붙일 때, 경량 구현과 스트리밍 중 뭘 선택할까? 각 방식의 장단점을 비교하고 선택 기준을 정리했습니다.📌 두 가지 패턴1️⃣ 경량 구현: 한 번에 응답사용자 → AI 에이전트 → [요청] → MCP 서버 ← [2초 대기] ← ← [전체 데이터] ←핵심: HTTP POST/JSON으로 한 번의 왕복으로 완성된 응답 반환요청 예시curl -X POST http://localhost:8080/api/mcp/call_tool \ -H "Content-Type: application/json" \ -d '{ "jsonrpc": "2.0", "method": "to..

IT/AI 2026.02.09

[Next.js] 카카오톡 썸네일 공유 기능 추가 - OG 메타 태그 설정방법

제미나이로 OG 이미지부터 만드는중...[Next.js] [Next.js] 카카오톡 썸네일 공유 기능 추가 - OG 메타 태그 설정방법웹사이트를 카카오톡/페이스북에 공유할 때 썸네일이 안 뜨는 문제를 OG 메타 태그로 5분 안에 해결합니다.📌 문제: 카카오톡 공유 시 썸네일 미표시Next.js 프로젝트를 배포했는데, 링크를 카카오톡에 붙여 넣어도 썸네일 이미지가 나오지 않습니다.❌ 예상: 썸네일 이미지 + 제목 + 설명✅ 현실: 텍스트만 표시됨원인: Open Graph(OG) 메타 태그 미설정🔧 해결방법1️⃣ 썸네일 이미지 준비크기: 1200x630px (카카오톡, 페이스북 표준)frontend/└── public/ └── og-image.png2️⃣ Next.js Metadata 설정파일: a..

IT/Next.js 2026.02.09
728x90
반응형
LIST