본문 바로가기

전체 글37

접근제어지시자와 정보은닉 접근제어지시자(Access Modifier) - 클래스 외부에서 클래스의 변수,메소드,생성자를 사용할 수 있는 지 여부를 지정하는 키워드 private 같은 클래스 내부에서만 접근가능(외부, 상속 클래스에도 접근x) 지정x (default) 같은 패키지 내부에서만 접근가능(상속 관계라도 패키지가 다르면 접근x) protected 같은 패키지나 상속 관례의 클래스에서 접근가능 public 어디서나 접근가능 get/set 메소드 - 접근이 제한된 멤버 변수(필드)에 대해 접근, 수정 할 수 있는 메소드를 public으로 제공 정보은닉을 활용한 캡슐화 - 정보은닉 : 필요한 외부에서 접근 가능한 최소한의 정보를 오픈하고 최대한 외부에서 호출(사용)되는 부분을 줄여 객체의 오류를 방지하고 클라이언트 객체가 더 .. 2022. 9. 27.
MVC 패턴이란? MVC(Model, View, Controller) - 사용자가 컨트롤러를 조작하면 컨트롤러는 모델을 통해 데이터를 가져오고 그 데이터를 바탕으로 뷰를 통해 시각적인 표현을 제어하여 사용자에게 전달하는 방식 - 사용자 인터페이스와 비즈니스 로직을 분리하여 서로에게 끼치는 영향도를 줄여 쉽게 관리할 수 있는 애플리케이션 생성 사용자인터페이스 - Controller - Service - DB - Service(return) - Controller(return) - View(사용자인터페이스) 2022. 9. 26.
오라클 select ... for update SELECT ... FOR UPDATE - 유일값 획득 등의 상황에서 동시성 제어를 위한 잠금처리 - 선택된 행들에 대하여 Lock을 설정 사용법 SELECT ... FROM ... WHERE ... 1. FOR UPDATE : commit이 발생하기 전까지 무한정 대기 2. FOR UPDATE NOWAIT : Lock을 획득하지 못하면 바로 에러발생하며 실패 3. FOR UPDATE WAIT (second) : second에 설정한 초만큼 재시도하고 주어진 시간동안 Lock을 획득하지 못하면 에러발생하며 실패 4. FOR UPDATE OF 테이블.컬럼 : 특정 테이블, 특정 컬럼에만 Lock 설정 2022. 9. 26.
Load Balancer 와 ALB, NLB Load Balancer - 서버에 가해지는 트래픽을 여러대의 서버에게 균등하게 분산해주는 역할 (서버에 많은 양의 트래픽이 가해질때 해결하기 위한 방법 1. 스케일-업(scale-up) : 서버의 인스턴스 성능 향상 2. 스케일-아웃(scale-out) : 서버를 여러대로 나눠서 처리) - 로드 밸런서는 지속적으로 IP 주소가 바뀌기 때문에 도메인 기반으로 사용해야 한다. 종류 1. L2 : Mac주소를 바탕으로 Load Balancing 2. L3 : IP주소를 바탕으로 Load Balancing 3. L4 : 4계층(전송계층)에서 Load Balancing 4. L7 : 7계층(애플리캐이션계층)에서 Load Balancing 주요기능 1. NAT (Network Address Translation).. 2022. 9. 26.
오버로딩과 오버라이딩 오버로딩(Overloading) - 같은 이름을 가진 메소드들이 매개변수의 유형 및 개수의 차이로 다른 메소드로 정의하는 기술 오버라이딩(Overriding) - 상위 클래스가 가지고 있는 메소드를 하위 클래스에서 재정의해서 사용하는 기술 - 상위 클래스의 메소드는 무시하고 하위 클래스에 재정의된 메소드의 기능을 사용 2022. 9. 26.
EKS POD란? POD - 쿠버네티스에서 이용되는 컨테이너의 관리단위 (생성/관리/배포 가능한 가장 작은 단위, Cluster내에서 실제 Application이 구동되는 Object) - 하나 이상의 컨테이너로 구성 (1 Container = 1 Pod : 가장 기본적인 쿠버네티스, 컨테이너를 둘러싼 'wrapper', 컨테이너대신 파드관리) - 컨테이너를 개별적으로 배포하는 것이 아닌 컨테이너의 그룹인 파드를 배포,운영 특징 1. 파드내의 컨테이너들은 IP와 Port 공유 - 같은 파드안의 어플리케이션들은 localhost로 통신하며 같은 네트워크에 존재 - 포트번호가 곂치지 않도록 주의 2. 파드내에 배포된 컨테이너간에는 디스크 볼륨을 공유 - 컨테이너끼리 볼륨을 공유할 수 있기 때문에 다른 컨테이너의 파일을 읽을 .. 2022. 9. 19.
ANSI SQL이란? ANSI SQL(American National Standards Institute) - 미국표준협회가 각기다른 DBMS에서 공통으로 사용할 수 있도록 고안한 SQL 작성방법 [ 1. from 절에서 join 문사용 2. 조인조건에 on 명시 3. where 절에는 조건만 명시] 2022. 9. 19.
하이라키(Hierarchy)란? Hierarchy - 계층구조 - 요소들의 서열을 정리 2022. 9. 19.