NoModel 프로젝트 설정 가이드
01. 프로젝트 전반 구조 루트 구성 Gradle(Spring Boot 3, Java 21) 단일 모듈 기준입니다. 루트에는 build.gradle, settings.gradle, 각종 docker-compose 파일, REST Docs 산출물(docs/), 성능 스크립트(k6/), 모니터링 설정(monitorin...
01. 프로젝트 전반 구조 루트 구성 Gradle(Spring Boot 3, Java 21) 단일 모듈 기준입니다. 루트에는 build.gradle, settings.gradle, 각종 docker-compose 파일, REST Docs 산출물(docs/), 성능 스크립트(k6/), 모니터링 설정(monitorin...
01. 설계 개요 NoModel의 데이터 구조는 도메인별 책임을 명확히 나누고 감사 메타데이터를 공통 상속으로 묶어 무결성을 확보하는 데 초점을 맞추었습니다. Spring Data Auditing을 전 도메인에 도입해 운영·보안 감사 요건을 충족하고 동일한 정책을 강제했습니다. 모든 핵심 엔티티는 BaseTimeEntity와 BaseEntity 계층...
01. 프로젝트 소개 NoModel. AI 모델을 활용한 광고 이미지 자동 제작 플랫폼입니다. AI 기반 이미지 생성: 최신 생성형 AI 모델로 고품질 광고 이미지를 제작했습니다. 프롬프트 최적화: 사용자 입력을 분석하여 최적 프롬프트를 자동 구성합니다. 시드값 관리: 일관성 있는 이미지 스타일을 위해 시드값을 저장...
동기화란? 여러 프로세스나 스레드가 공유 자원에 안전하게 접근하도록 순서를 조정하는 것 동기화가 필요한 이유 공유 자원 : 여러 프로세스가 동일한 자원 사용 경쟁 상태 : 동시 접근 시 예상치 못한 결과 발생 데이터 일관성 : 정확한 결과 보장 필요 임계 영역 (Critical Section) 공유 자원에 접근하는 ...
CPU 스케줄링이란? 여러 프로세스가 CPU를 효율적으로 사용할 수 있도록 순서를 정하는 것 스케줄링이 필요한 이유 멀티프로그래밍 : 여러 프로세스가 동시에 실행 CPU 활용률 극대화 : 유휴 시간 최소화 응답 시간 개선 : 사용자 경험 향상 프로세스 상태 [새로운] → [준비] → [실행] → [종료] ...
메모리 관리란? 운영체제가 메모리를 효율적으로 할당하고 회수하는 과정 메모리 관리가 필요한 이유 제한된 메모리 : 물리적 메모리는 한정적 다중 프로세스 : 여러 프로세스가 동시에 실행 효율성 : 메모리 공간을 최적화해야 함 메모리 할당 방식 연속 메모리 할당 고정 분할 (Fixed Partition) 메모리를 고정...
프로세스(Process) 실행 중인 프로그램을 의미 프로세스의 메모리 구조 Code 영역 : 실행할 코드가 저장되는 곳 Data 영역 : 전역 변수, 정적 변수가 저장되는 곳 Stack 영역 : 지역 변수, 함수 호출 정보가 저장되는 곳 Heap 영역 : 동적 할당된 메모리가 저장되는 곳 특징 각 프로세스는 독립...
클래스형 컴포넌트 생명주기 Mount 처음 화면에 나타날 때 컴포넌트가 DOM 에 처음 추가될 때 호출되는 메서드 constructor() + render() -> componentDidMount() componentDidMount() 마운트 완료 후 비동기 데이터 로딩, 타이머 등록 등에 자주 사용 Update p...
Modern Javascript 특징 가상 DOM 을 이용하는 라이브러리 혹은 프레임워크 사용 npm, yarn 등의 패키지 관리자 사용 주로 ES6 이후 표기법 사용 모듈 핸들러 사용 트랜스파일러 사용 SPA 로 작성 패키지 관리자 패키지 설치 시 패키지 관리, 설치, 업그레이드 등을 전담 의존 관계를 ...
DOM 요소를 추가하기 위한 준비 $(document).ready(function() { }); 객체 편집 메소드 append() : 선택한 요소의 마지막 위치(내부)에 새 요소 추가 prepend() : 선택한 요소의 맨 앞 위치(내부)에 새 요소 추가 after() : 선택한 요소의 다음 위치에 새 요소 추가 be...