전체 글 119

[ServiceNow] ATF(Automated Test Framework) 란?

최근에 회사를 옮기게 되었는데, 이곳에서는 ServiceNow 솔루션을 바탕으로 개발을 진행한다.그래서 이 솔루션 내의 기능을 익히고 있는 과정이고 이 중 특정 기능들에 대해 정리해 나가고자 한다. 1. 정의- ServiceNow 에서 개발, 설정한 기능이 정상적으로 동작하는지 자동으로 검증해주는 테스트 자동화 도구 2. 사용 목적 - ServiceNow 개발/구축 환경에서 Update Set 이나 애플리케이션 변경 후 기존 기능이 깨지지 않았는지 회귀 테스트(Regression Test) 를 자동화 하는 용도를 주된 목적으로 사용 3. 구조- Test > 하나의 테스트 시나리오- Test Step > 테스트에서 수행할 각각의 행동- Test Step Configurations > 각 Step 에 ..

IT/ServiceNow 2026.08.19

[CS] 테스트 커버리지란?

이번엔 테스트 커버리지(Test Coverage) 에 대해 정리하고자 한다. 1. 정의- 코드 중에서 테스트가 얼마나 실행되었는가? 를 나타내는 지표 2. 종류1) 라인 커버리지 (Line Coverage) > 코드 줄이 얼마나 실행되었는지2) 분기 커버리지 (Branch Coverage) > 각 경우에 대해 얼마나 실행되었는지3) 함수 커버리지 (Method Coverage) > 메서드가 호출되었는지 3. 실무에서 사용하는 도구- Java/Spring 진영에서는 JaCoCo 라이브러리를 사용하여 리포트 생성

IT/CS 2026.06.12

[MSA] DB 동기화 안정 장치

MSA 구조에서, DB 의 데이터를 동기화(정합성 보장)하는데 필요한 개념에 대한 내용을 정리하고자 한다. 1. Outbox Pattern- 데이터베이스 변경과 이벤트 발행 간의 정합성을 보장하기 위한 패턴 중 하나- 이벤트를 즉시 발행하지 않고, 먼저 Outbox 테이블에 저장한 후 별도 프로세스가 이를 메시지 브로커로 전달하는 역할 수행 > 이벤트의 중복 발행 가능성이 있기에, Consumer 는 멱등성(Idempotency) 을 보장해야 한다. . 여기서 멱등성은 '이벤트가 반드시 중복 수신될 수 있음을 가정하는 것' 을 의미한다.- 방식 > Polling > CDC(Change Data Capture) (ex. Debezium) 2. Retry3. DLQ (Dead Letter Que..

[CS] DDD(Domain-Driven Design) 란?

그동안 이야기를 많이 들었던 DDD 에 대해 드디어 정리하고자 한다. 1. 정의- 비지니스 도메인을 중심으로 소프트웨어를 설계하는 방법론 > 여기서, 도메인은 '해당 서비스가 해결하려는 업무 영역' 을 의미 > 비지니스 규칙을 도메인 객체 안에 넣어야 함을 강조 2. 핵심 개념1) Entity - 고유 식별자(ID) 를 가진 객체 > 생명주기가 있음 > 상태 변경 가능2) VO (Value Object) - ID 가 없고 값 자체가 의미인 객체 > 불변 > 값 비교3) Aggregate - Aggregate Root > 외부에서는 Root 만 접근4) Repository - Aggregate 저장소5) Domain Service - Entity 안에 넣기 애매한 로..

IT/CS 2026.06.03

[CS] API Throttling 이란?

이번엔 API Throttling 개념에 대해 정리하고자 한다. 1. 정의- 클라이언트가 일정 시간 동안 호출할 수 있는 API 요청 수를 제한하는 것 2. 목적- 서버 보호 > 트래픽 폭주 -> 서버 다운 방지- 공정한 사용 > 특정 유저가 API 를 독점하는 것을 방지 > SaaS 서비스에서 중요- 비용 절감- 보안 > brute-force 공격, DDoS 완화 3. 대표 알고리즘- Fixed Window > 구현 쉬움 > 경계에서 burst 발생- Sliding Window > 요청 시간을 기준으로 계속 이동 > 더 정밀하고, 구현 복잡- Token Bucket > 토큰이 일정 속도로 채워짐 > 요청할 때 토큰 소비 > burst 허용 (유연함) > 안정적인 트래픽 제어- Le..

IT/CS 2026.04.24

[DB] OLAP(Online Analytical Processing) 이란?

이번엔 OLAP 에 대해 정리하고자 한다. 1. 정의 - 데이터를 빠르게 다차원적으로 분석하기 위한 기술/방식 [ 집계/리포트 목적 ] 2. 핵심 개념- 다차원 데이터 > 데이터를 여러 축으로 보는 것- 주요 연산 > Drill-Down . 더 세부적으로 들어감 > Roll-Up . 더 요약함 > Slice . 특정 조건으로 잘라냄 > Dice . 여러 조건 조합 필터 > Pivot . 축을 바꿔서 보기 3. 구조- Star Schema > 중심 / 주변 - Snowflake Schema > Dimension 을 더 정규화한 구조 > 복잡하지만 데이터 중복 줄어듦 4. 종류- MOLAP > 데이터를 미리 큐브로 계산해서 저장 > 빠름, 유연성 낮음- ROLA..

IT/DB 2026.04.24

[기타] LDAP(Lightweight Directory Access Protocol) 란?

이번엔 LDAP 에 대해 정리하고자 한다. 1. 정의- 사용자, 조직, 권한 같은 '디렉토리 정보' 를 조회, 관리하기 위한 표준 프로토콜 2. 사용 예시- 사내 시스템 로그인 인증- SSO (Single Sign-On)- 사용자 / 조직 / 부서 정보 중앙 관리- 권한(Role) 조회 3. 핵심 개념- Directory (디렉토리) > 계층 구조(Tree 구조) 로 저장됨 > 파일 시스템과 유사- DN (Distinguished Name) > 한 객체를 유일하게 식별하는 전체 경로- Entry (엔트리) > 사용자 / 그룹 / 조직 하나하나의 객체 > DN + Attribute 들의 묶음- Attribute (속성) > 엔트리가 가지는 필드들- ObjectClass > 엔트리의 타입 정의..

IT/CS 2026.02.16

[Vue.js] Vuex vs. Pinia

이번엔 Vue.js 에서 상태 관리 목적으로 사용하는 라이브러리인 Vuex 와 Pinia 에 대해 비교하는 글을 작성하려고 한다. 결론부터 이야기 하자면, Vuex 는 규칙이 많은 전통적인 중앙 상태 관리 (Vue 2 에서 사용) 이고,Pinia 는 가볍고 직관적인 현대적인 상태 관리 (Vue 3 에서 사용) 이다. 1. Vuex- Flux 패턴 기반- 전역 상태를 중앙에서 관리- TypeScript 지원이 불편- Composition API 와 궁합이 좋지 않음- 구성 요소 > State : 전역으로 관리되는 상태 > Getter : state 의 계산된 값 > Mutation : state 를 동기적으로만 변경 > Action : 비동기 처리 후 mutation 호출 > Module : st..

IT/Front-End 2026.01.01

[CKA] DaemonSet 이란?

이번엔 DaemonSet 에 대해 정리하고자 한다. 1. 정의- 클러스터 내 모든 노드(또는 특정 노드) 에 1개의 Pod 를 반드시 실행하도록 보장하는 Kubernetes 컨트롤러 > 노드마다 하나씩 Pod 를 자동으로 배치 > 노드가 추가되면 자동으로 Pod 생성 > 노드가 삭제되면 해당 Pod 도 자동 제거 2. 사용 목적- 노드 모니터링 / 메트릭 수집- 로그 수집- 네트워킹 기능- 시스템 레벨 작업 3. 관련 문제 (KodeKloud 에서 제공하는 샘플 문제를 정리)- How many DaemonSets are created in the cluster in all namespaces?kubectl get daemonsets --all-namespaces - What is the image ..

IT/Kubernetes 2025.11.25

[CKA] Node Affinity 란?

이번엔 Node Affinity 에 대해 정리하고자 한다. 1. 정의- Kubernetes 에서 Pod 가 어떤 노드에 스케줄링 될지 선택하는 규칙 > 노드에 지정된 labels 를 기반으로 Pod 가 특정 노드에 배치하거나 배치하지 않도록 제어 2. 관련 문제 (KodeKloud 에서 제공하는 샘플 문제를 정리)- Apply a label color=blue to node node01kubectl label node node01 color=blue - Which nodes can the pods for the blue deployment be placed on? Make sure to check taints on both nodes (if any) !kubectl describe node contro..

IT/Kubernetes 2025.11.25