JVM 아키텍처, 메모리 관리 및 고급 GC 튜닝에 대한 전문 보고서I. Java Virtual Machine 아키텍처 개요 Java Virtual Machine (JVM)은 Java 애플리케이션에 플랫폼 독립적인 런타임 환경을 제공하는 추상 기계입니다.1 JVM은 플랫폼에 구애받지 않는 바이트코드를 실행하며, 이 바이트코드를 런타임 시 기계어로 변환하여 높은 성능을 달성합니다. A. JVM 추상 머신 및 사양 JVM은 바이트코드를 해석하고 실행하는 역할을 하며, 특히 HotSpot JVM의 경우 빠른 애플리케이션 시작(해석)과 장기적인 고성능(JIT 최적화) 사이의 균형을 맞추도록 설계되었습니다. JVM이 처음 시작될 때 수많은 메서드가 호출됩니다. 이 모든 메서드를 즉시 컴파일하는 것은 시작 시간을 ..
출처: https://apidog.com/kr/blog/stateless-vs-stateful-api-2/ 무상태 API란 무엇인가요?무상태 API는 클라이언트와 서버 간의 각 요청을 독립적인 트랜잭션으로 취급하며, 서버가 클라이언트의 이전 상호작용에 대한 정보를 저장하지 않는 API입니다.무상태 API의 주요 특성요청의 독립성: 클라이언트에서 서버로 전송된 각 요청은 서버가 처리하는 데 필요한 모든 정보를 포함하고 있으며, 이전 요청에 영향을 받지 않으며 미래의 요청에도 영향을 미치지 않습니다.세션 관리 없음: 무상태 API는 서버가 클라이언트 세션을 관리하거나 세션 관련 데이터를 저장할 필요가 없습니다. 따라서 쿠키나 서버 측 세션과 같은 세션 추적 메커니즘이 필요 없습니다.확장성: 무상태 API는..
온라인쇼핑몰 - 주문처리 프로세스 주요 Actor와 Object 설명Actors (액터)고객 (Customer)주문 프로세스를 시작하는 주체상품을 선택하고 결제를 진행하는 사용자Objects (객체/시스템)웹 인터페이스 (Web UI)고객과 시스템 간의 상호작용을 담당하는 프론트엔드사용자 입력을 받고 시스템 응답을 화면에 표시주문 시스템 (Order System)주문 프로세스 전체를 조율하는 핵심 시스템다른 시스템들과의 상호작용을 관리하는 중앙 제어 역할재고 시스템 (Inventory System)상품의 재고 상태를 관리재고 확인 및 차감 기능 제공결제 게이트웨이 (Payment Gateway)외부 결제 서비스와의 연동을 담당신용카드, 계좌이체 등 다양한 결제 수단 처리주문 데이터베이스 (Order Da..
Apache Kafka 기반 비동기 아키텍처 개요Kafka는 분산 스트리밍 플랫폼으로, 높은 처리량과 낮은 지연 시간을 제공하는 이벤트 스트리밍 시스템입니다. 실시간 데이터 파이프라인과 스트리밍 애플리케이션 구축에 특화되어 있습니다.핵심 구성 요소1. Kafka Cluster 구조**브로커(Broker)**는 Kafka 서버 인스턴스로, 메시지를 저장하고 클라이언트 요청을 처리합니다. 일반적으로 3개 이상의 브로커로 클러스터를 구성하여 고가용성을 확보합니다.**토픽(Topic)**은 메시지를 분류하는 논리적 단위입니다. 예를 들어 user-events, order-processing, notification-requests 등으로 구분합니다.**파티션(Partition)**은 토픽을 물리적으로 분할한 단..
출처 : https://introduce-ai.tistory.com/entry/Retrieval-Augmented-GenerationRAG%EC%9D%98-%ED%9D%90%EB%A6%84%EA%B3%BC-%EC%95%84%ED%82%A4%ED%85%8D%EC%B3%90 RAG란?RAG란, LLM이 검색된 결과에 근거하여 답변하는 방식.RAG의 뿌리는 페이스북(현 메타) AI 리서치 논문 (https://arxiv.org/pdf/2005.11401.pdf)이라고 볼수 있다. LLM은 환각(Hallucination)의 한계를 가짐. 또한 공개되지 않은 특정 도메인 분야 지식에 대한 작업에서 효과가 떨어짐. 또한 학습 시점 이후 데이터에 대한 정보가 없음반면 RAG는 최신 데이터에 액세스할 수 있으므로 정..
RAG (Retrieval-Augmented Generation)기본 개념RAG는 외부 지식 베이스에서 관련 정보를 검색하여 LLM의 응답 생성을 보강하는 기술입니다.처리 흐름쿼리 분석: 사용자 질문을 벡터로 변환검색 단계: 벡터 데이터베이스에서 유사한 문서 검색컨텍스트 구성: 검색된 문서를 프롬프트에 포함생성 단계: LLM이 검색된 정보를 바탕으로 답변 생성핵심 역할실시간 정보 접근으로 할루시네이션 감소도메인 특화 지식 제공지식 베이스의 동적 업데이트 가능MCP (Model Context Protocol)기본 개념MCP는 Claude와 같은 AI 모델이 다양한 외부 시스템과 안전하고 표준화된 방식으로 연결할 수 있게 하는 프로토콜입니다.처리 흐름연결 설정: MCP 서버와 클라이언트 간 연결 수립리소스 ..
생성 패턴 (Creational Patterns) - 5개Singleton - "오직 하나만" javapublic class Database { private static Database instance; private Database() {} // private 생성자로 외부 생성 차단 public static Database getInstance() { if (instance == null) { instance = new Database(); } return instance; }}실제 사용 예: 데이터베이스 커넥션 풀, 로거, 캐시 매니저. 전역적으로 하나의 인스턴스만 필요한 경우에 사용.Factory Method..
도메인 주도 설계(DDD)에 대한 심층 보고서1. DDD의 근본 철학: 전략적 설계(Strategic Design)소프트웨어 개발의 본질은 복잡한 현실 세계의 문제를 해결하는 데 있습니다. 그러나 문제의 복잡성이 커질수록 소프트웨어의 복잡도 역시 기하급수적으로 증가하며, 이는 개발 프로젝트의 실패로 이어지는 주요 원인이 됩니다. 도메인 주도 설계(Domain-Driven Design, 이하 DDD)는 이러한 복잡성을 극복하기 위한 기법이자 동시에 철학입니다. DDD는 복잡한 비즈니스 도메인을 깊이 이해하고, 그 이해를 소프트웨어에 반영함으로써 양질의 시스템을 구축하는 것을 최우선 목표로 삼습니다.11.1 DDD의 핵심 비전과 문제 해결 접근법DDD는 단순히 기술적인 패턴을 적용하는 방법론이 아닙니다. 이..
MSA(Microservices Architecture)에서의 데이터베이스 활용은 단일체 아키텍처와는 완전히 다른 접근 방식이 필요합니다. 전문적 관점에서 핵심 전략들을 설명드리겠습니다.Database per Service 패턴MSA의 핵심 원칙은 각 마이크로서비스가 독립적인 데이터 저장소를 갖는 것입니다. 이는 서비스 간 강한 결합을 방지하고 독립적인 배포와 확장을 가능하게 합니다.구현 전략:각 서비스는 자신만의 데이터베이스 스키마를 소유다른 서비스의 데이터베이스에 직접 접근 금지API를 통한 데이터 접근만 허용폴리글랏 퍼시스턴스(Polyglot Persistence)서비스별로 최적화된 데이터베이스 기술을 선택할 수 있습니다:관계형 데이터베이스 (PostgreSQL, MySQL)트랜잭션이 중요한 주문,..
A/B테스트는 두 개 이상의 버전을 비교하여 어떤 버전이 더 나은 성과를 내는지 알아보는 실험 방법입니다. 보통 웹사이트, 앱, 광고 등의 최적화를 위해 사용됩니다.A/B 테스트의 작동 원리A/B 테스트는 다음과 같은 방식으로 진행됩니다.두 가지 버전 준비: 기존 버전(A)과 변경된 버전(B)을 만듭니다. 예를 들어, 웹사이트의 '구매하기' 버튼 색깔을 파란색(A)에서 빨간색(B)으로 바꾸는 경우를 생각할 수 있습니다.사용자 그룹 나누기: 웹사이트 방문자들을 무작위로 두 그룹으로 나눕니다. 한 그룹은 A버전을 보게 하고, 다른 한 그룹은 B버전을 보게 합니다.성과 측정 및 비교: 두 그룹의 행동을 일정 기간 동안 추적하여 어떤 버전이 목표(예: 구매 전환율, 클릭률)를 더 잘 달성했는지 비교합니다.최종 ..
- Total
- Today
- Yesterday
- non-functional
- 딥러닝
- minikube
- 아키텍처요소
- 대화로 코딩
- Gc
- vibecoding
- 비기능
- Hibernate
- 자바스크립트
- 바이브코딩
- 릴레이
- POI
- 아키텍처비기능
- non
- 메일서버
- mailserver
- orm
- memory
- JVM
- 메모리
- nvida gpu 할당
- ai coding
- Persistent
- 정규식
- #iamreo
- JPA
- #gof #디자인패턴
- apache POI
- poi셀크기
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |