THE 1995 DevOps Note
THE 1995 DevOps Note
Back-End/Java
JMX(Java Management Extensions) 란 무엇인가?
2026.07.31
JMX(Java Management Extensions)는 실행 중인 Java 애플리케이션이나 JVM을 모니터링하고 관리하기 위한 표준 기술이다 쉽게 말하면:Java 서버 내부 상태를 외부 관리 도구에서 조회하거나 일부 설정을 변경할 수 있게 해주는 관리 인터페이스이다.JMX로 확인할 수 있는 것JVM Heap 메모리 사용량Metaspace 사용량GC 횟수와 소요 시간Thread 개수와 상태CPU 사용량클래스 로딩 수데이터베이스 커넥션 풀 상태Tomcat 세션 수요청 처리 건수애플리케이션이 직접 노출한 상태값Oracle의 shared pool은 DB 메모리이고, JMX는 주로 Java 애플리케이션과 JVM 상태를 확인하는 용도기본 구조JMX는 주로 MBean이라는 관리 객체를 사용Java 애플리케이션 └..
기초기술&토픽/AI
MCP(Model Context Protocol)란 무엇인가?
2026.07.27
요즘 AI 개발에서 말하는 MCP는 Model Context Protocol이다한마디로 말하면:AI가 파일, DB, 사내 시스템, GitHub, Slack, API 같은 외부 도구를 공통된 방식으로 사용할 수 있게 해주는 연결 규격이다.공식 문서에서는 MCP를 AI 애플리케이션용 USB-C 포트에 비유해. USB-C 하나로 여러 장치를 연결하듯이, MCP라는 공통 규격으로 AI와 다양한 외부 시스템을 연결한다는 의미한다.1. 왜 MCP가 필요한가기존에는 AI에게 외부 기능을 붙일 때마다 각각 따로 개발해야 했다.예를 들어 AI가 다음 기능을 써야 한다고 해보면.사내 DB 조회GitHub 이슈 검색Slack 메시지 확인파일 읽기API 호출캘린더 일정 등록 기존 방식은:AI ↔ DB 전용 연동 코드AI ↔ ..
기초기술&토픽
Thundering Herd 란?
2026.04.23
👉Thundering Herd(우르르 몰려드는 소떼) 문제는 컴퓨터 과학 및 시스템 엔지니어링에서 발생하는 고전적인 성능 병목 현상이다.말 그대로 수많은 프로세스나 스레드가 어떤 이벤트(예: 락 해제, 서비스 복구, 캐시 만료 등)를 기다리다가, 이벤트가 발생하는 순간 동시에 깨어나 하나의 리소스를 차지하기 위해 격렬하게 경쟁하는 상황을 의미한다. 1. 주요 발생 시나리오Thundering Herd 문제는 인프라와 애플리케이션 아키텍처 전반에 걸쳐 다양한 형태로 나타난다.캐시 스탬피드 (Cache Stampede / Cache Miss Storm): 가장 흔하게 접할 수 있는 시나리오이다. 트래픽이 매우 높은 특정 데이터(예: 메인 화면의 공지사항)의 캐시 TTL(Time-To-Live)이 만료되었..
기초기술&토픽/블록체인
코스모스 네트워크(Cosmos Network)
2026.03.23
코스모스 네트워크란 무엇인가코스모스 네트워크(Cosmos Network)는 흔히 “블록체인의 인터넷(Internet of Blockchains)” 이라고 불립니다. 핵심 목표는 하나의 체인 위에 모든 것을 몰아넣는 것이 아니라, 각 목적에 맞는 독립 블록체인들을 만들고, 그 체인들이 서로 안전하게 통신하게 하는 것입니다. 코스모스 공식 문서도 Cosmos Hub를 CometBFT, Cosmos SDK, IBC로 구성된 상호연결 블록체인 생태계의 일부로 설명한다 그럼 코스모스 네트워크 가 왜 필요한가?코스모스가 등장한 배경은 크게 세 가지다.첫째, 상호운용성 부족전통적인 블록체인 구조에서는 체인 A의 자산이나 메시지를 체인 B로 자연스럽게 옮기기 어렵습니다. 이 문제를 해결하려면 보통 별도의 브리지, 커스..
DataBase
PL/SQL 이란?
2026.03.20
PL/SQL은 오라클 데이터베이스에서 쓰는 절차형 SQL 언어다.이름도 그대로 보면 된다.SQL: 데이터 조회/입력/수정/삭제PL/SQL: SQL에다가 변수, 조건문, 반복문, 예외처리, 함수, 프로시저를 붙인 것즉:👉 “오라클 DB 안에서 동작하는 프로그래밍 언어”1. 왜 PL/SQL을 쓰는가일반 SQL은 보통 한 번에 한 문장씩 처리한다.예를 들어:SELECT * FROM EMP;UPDATE EMP SET SAL = SAL * 1.1 WHERE DEPTNO = 10; 이건 단순 조회/수정은 잘하지만, 아래 같은 로직은 불편하다.조건에 따라 다르게 처리여러 SQL을 묶어서 한 번에 실행오류 발생 시 예외 처리반복 처리값을 변수에 담아 계산업무 로직 캡슐화그래서 PL/SQL을 쓴다. 예를 들면:급여가 ..