전체 글 (62) 썸네일형 리스트형 HAProxy LOAD Balancing 설정 balance 옵션 로드 밸런싱의 경우 round robin 방식을 일반적으로 사용하지만 다른 여러 방식이 있다. 옵션에 적용할 수 있는 로드 밸런싱 알고리즘은 다음과 같다. roundrobin: 순차적으로 분배(최대 연결 가능 서버 4128개) static-rr: 서버에 부여된 가중치에 따라서 분배 leastconn: 접속 수가 가장 적은 서버로 분배 source: 운영 중인 서버의 가중치를 나눠서 접속자 IP를 해싱(hashing)해서 분배 uri: 접속하는 URI를 해싱해서 운영 중인 서버의 가중치를 나눠서 분배(URI의 길이 또는 depth로 해싱) url_param: HTTP GET 요청에 대해서 특정 패턴이 있는지 여부 확인 후 조건에 맞는 서버로 분배(조건 없는 경우 round robin으로.. 객체지향 특징(캡추다정상) 추상화 기자제 몇 가지 공통 속성을 가지지만 서로 다른 속성도 가지는 객체를 집단화 하는 과정 공통의 성질을 추출하여 super class를 설정 - 복잡한 것을 단순화/간결화, 공통 데이터/기능 도출 - 클래스를 이용 데이터와 프로세스를 함께 추상화 - 명사에 데이터 추상화(type부여) - 동사에 기능의 추상화(method부여) 기능추상화 Obj.getName() 자료추상화 String, Class 제어추상화 If, for, while abstract class GraphicObject { //Super Class int x, y; void moveTo(int newX, int newY) { … } abstract void draw(); } class Circle extends GraphicObjec.. SOLID 객체지향 기본원칙 SRP(Single Responsibility) : 단일책임원칙 OCP(Oepn Cloased): 개방폐쇄원칙 LSP(the Liskov Substitution Principle): 리스코프 치환원칙 ISP(Interface Segregation Principle) : 인터페이스 분리설계원칙 DIP(The Dependency Inversion Principle): 의존성 주입 SRP (Single Responsibility Principle) 단일책임원칙 객체는 단 한 개의 책임(역할)만을 가져야 한다는 내용으로, 객체를 변경해야 하는 이유는 단 하나여야 한다는 원칙 결합도가 증가할 가능성이 높아 하나의 책임을 변경할 경우 다른 책임을 변경할 가능성 생김 OCP (Oepn Cloased.. SOLID SRP(Single Responsibility) : 단일책임원칙 OCP(Oepn Cloased): 개방폐쇄원칙 LSP(the Liskov Substitution Principle): 리스코프 치환원칙 ISP(Interface Segregation Principle) : 인터페이스 분리설계원칙 DIP(The Dependency Inversion Principle): 의존성 주입 queryDSL JOIN 클래스만들때 join관계 설정하고 public class ProjectVO{ @ManyToOne @JoinColumn(name = "OCR_DEPT_ID",referencedColumnName = "DEPT_ID") private DeptVO ocrDeptVO; } 객체 생성한다음에 QProjectVO projectVO = QProjectVO.projectVO; QDeptVO deptVO = QDeptVO.deptVO; innerjoin leftjoin List result = (List) queryFactory .select(Projections.fields(ProjectVO.class, projectVO.ProjectId, ProjectVO.DeptVO ) ) .from(projectVO) .inne.. queryDSL case When, decode new CaseBuilder() .when(~) .then(~) .otherwise() .as(~) new CaseBuilder() .when(pointEvent.pointStatus.in(PointStatus.USE, PointStatus.USE_CANCEL)) .then(pointEvent.pointAmount.multiply(-1)) .otherwise(pointEvent.pointAmount).as("pointAmount") 이전 1 ··· 5 6 7 8 다음