반응형

2024/07 17

데이터베이스의 동시성 제어/병행제어(Concurrency Control)

데이터베이스의 동시성제어/병행제어(Concurrency Control)에 대해 설명가. 동시성제어(병행제어)의 정의 나. 병행제어의 기법의 종류, 병행제어를 안했을때의 문제점Ⅰ. 데이터베이스 트랜잭션 일관성/무결성 보장, 동시성 제어의 정의정의- 다수의 사용자가 접근하는 DBMS에서 트랜잭션의 직렬화로 트랜잭션 간의 간섭을 제어해서 데이터 일관성, 무결성을 유지하는 기법필요성- 트랜잭션 일관성, 무결성 유지- 복수 트랜잭션의 직렬화- 트랜잭션 간의 상호간섭 제어- 동시성이 높을수록 데이터 일관성이 떨어지므로 다수의 사용자가 접근하는 시스템의 경우 다양한 동시성 제어 기법 적극 활용 필수  Ⅱ. 동시성 제어 기법의 종류 및 상세 설명기법매커니즘설명Locking- s-lock: lock된 데이터 자원은 모든..

IT 기술/DB 2024.07.04

MSA와 Service Mesh

Ⅰ. 분할 독립 서비스 MSA, 서비스간 통신 제어관리 Service Mesh 개요MSA애플리케이션을 상호 독립적인 최소 구성 요소로 분할하여 구성Service Mesh서비스간 통신 제어/관리하는 MSA를 위한 인프라 계층- MSA에 Service Mesh를 활용하여 트래픽 제어 Ⅱ. MSA, Service Mesh 구성도와 구성요소가. MSA(Micro Service Architecture) 구성도와 구성요소구분구성요소설명User Interface모바일, 웹, PC다양한 환경에서 여러가지 기기를 통해 서비스 접속/이용GatewayAPI Gateway OrchestrationREST API, 로드 밸런싱, 트래픽 제어Micro ServicePolyglot Program, DB다양한 언어사용, 다양한 DB..

MVC, MVP, MVVM, MVI 디자인 패턴

Ⅰ. MVC 패턴개념도특징- 컨트롤러가 입력을 받아 모델을 업데이트하고 뷰를 선택- 컨트롤러는 뷰와 1:n 관계- 모델과 뷰 사이의 의존성 문제 발생, 앱이 커지면 유지보수 어려움구성 요소- model: 데이터 처리 담당- view: 모델을 화면에 표시, UI- controller: 사용자 입력 받아 model 업데이트 Ⅱ. MVP 패턴개념도특징- 모든 입력은 뷰로 전달, Presenter가 모델 업데이트- Presenter가 뷰와 모델 사이 매개체 역할- 뷰와 Presenter 의존성 문제구성요소- Model: 데이터 처리 담당- View: 모델을 화면에 표시, UI- Presenter: View와 Model의 매개체 Ⅲ. MVVM 패턴개념도특징- ViewModel과 데이터 바인딩을 통해 View 업데..

객체 지향 프로그래밍(OOP) 특징

Ⅰ. 소프트웨어 재사용성 향상, 객체 지향 프로그래밍의 정의- 현실세계의 개체(Entity)를 속성(Attribute)과 행위(Method) 결합 객체(Object)로 표현하여 프로그래밍 하는 기법 Ⅱ. 객체 지향 프로그래밍 특징특징개념도설명캡슐화- 서로 연관있는 속성, 기능을 캡슐로 만들어 외부로부터 보호, 접근지정- 데이터 보호, 데이터 은닉, 낮은 결합추상화- 공통 속성, 행동을 추출 이름 부여- 공통 속성 추출해 슈퍼 클래스 생성다형성- 같은 이름의 메소드나 연산자가 다른 클래스에 대해 다른 동작 수행- 오버로딩: 같은 이름에 다른 타입 재정의- 오버라이딩: 상위 Class Method 참조/재정의정보은닉- 외부에서 내부정보 알 수 없도록 정보 은닉- 외부에서 내부 정보 변경할 수 없도록 캡슐화상..

Agile 선언문과 12개의 원칙

Ⅰ. 사람 중심의 개발론, Agile 선언문 개요정의경량 개발 지지자들이 모여 효율적인 개발, 제품 중심의 개발 방법론 선언등장 배경- SW 환경 변화- 다양한 요구, 생명주기 단축- 기존 방법론의 한계  Ⅱ. Agile 선언문의 4대 가치 및 12대 원칙가. Agile 선언문의 4대 가치- 고객 만족, 의사소통 등을 중요한 가치로 선언 나. Agile 개발 방법론의 12대 원칙#원칙설명1고객 만족 추구고객 만족이 최우선 과제2요구사항 변경 수용고객의 요구사항 변경 적극 수용3짧은 배포 간격CI/CD 도구 통한 빠른 통합/배포4의사소통 중시효율적 의사소통 추구5동기부여 사람 중요상호존중 문화, 팀원 추구6면대면 대화현업 - 개발자의 대화 중시7작동하는 소프트웨어SW의 기능/비기능 관리8지속가능한 개발지속..

XP(eXtreme Programming)의 특징 및 실천 방법(Practice)

Ⅰ. 양질의 SW를 빠른 시간안에 전달, XP의 정의- 수시로 발생하는 고객 요구사항에 유연하게 대응위해 의사소통 개선, 즉각적인 피드백에 의해 SW 품질을 향상 방법론 Ⅱ. XP의 핵심 가치 및 실천 방법가. XP(eXtreme Programming)의 핵심 가치가치설명의사소통관리자, 개발자, 고객 간의 적극적 의사소통단순함부가 기능, 불필요 기능 및 구조 배제용기고객의 요구사항 변화에 능동적으로 대처피드백빠른 피드백으로 문제 해결존중구성원 상호간의 상호존중 나. XP(eXtreme Programming)의 실천 방법구분실천 방법설명개발Pair Programming다른 사람과 함께 프로그래밍,개발 공동 책임Collective Ownership개발 코드 권한과 책임 공동 소유Whole Team참여 모든 ..

프로젝트 자원 최적화 방법 2가지 설명하고 비교하시오

Ⅰ. 프로젝트 일정 변경 가능한 자원 평준화 개요정의 - 특정 자원에 과도한 부하가 걸리는 것을 방지하기 위해 일정을 평준화하여 자원 최적화하는 기법개념도적용 사례- 핵심 인력의 활용 시점이 제한적인 경우- 스케줄 조정이 가능한 경우- 일정과 원가의 트레이드 오프 영향을 고려하여 프로젝트 상황에 맞게 적용 Ⅱ. 프로젝트 일정 변경 불가한 자원 평활화 개요정의일정 지연을 방지하기 위해 자원을 균형있게 투입하여 프로젝트 CP 활동 지연 방지 기개념도적용 사례- 반드시 납기 일정 준수해야하는 경우- 자원 사용이 고르게 배분되지 않은 경우- 일반적으로 자원 평준화 이후 자원 평활화 수행 Ⅲ. 자원 평준화와 자원 평활화 비교구분자원 평준화자원 평활화목표자원 수요/공급 균형균일한 자원 활용일정 지연일정 지연 가능(..

반응형