본문 바로가기

분류 전체보기

(332)
[NCP] 탄력적 서버 확장을 위한 오토스케일링 구성하기 (2) - Auto Scaling Group 이벤트 및 정책 설정 안녕하세요 남산도서관 입니다. 지난 포스팅에 이어서 Auto Scaling 이벤트 및 정책을 설정해 보도록 하겠습니다. 지난포스팅 - [NCP] 탄력적 서버 확장을 위한 오토스케일링 구성하기 (1) 1. Auto Scaling Group 설정 우선 Auto Scaling 메뉴에서 Auto Scaling Group 을 선택하여 설정 화면에 진입한 후 [Auto Scaling Group 생성] 버튼을 선택합니다 Launch Configuration 선택 화면이 표시됩니다. 지난 포스팅에서 생성했던 항목을 선택하고 [다음] 버튼을 클릭합니다. 다음은 그룹설정 단계 입니다. Auto Scaling Group 이름을 설정한 후 항목을 입력해 줍니다. - Auto Scaling Group 이름 : 원하는 이름을 입..
[Spring Boot] REST API 문서를 Swagger로 관리하기 안녕하세요 명동역 델리만쥬입니다~! 실무에서 REST API를 개발할때면 API 관련 문서를 만들어야 합니다. API의 요청, 반환 값이 변경되거나 주소 및 API 속성이 변경되었을시에 문서를 일일이 업데이트를 해줘야 하는 번거로움이 존재합니다. 이번 포스팅에서는 API관련 명세를 만들어주는 Swagger를 써보려고 합니다!~ 기본 베이스 ( Spring Boot, Spring MVC, AOP, Gradle을 적용한 REST API 설계 구조 ) 위의 가정 아래 시작하겠습니다! build.gradle에 아래와 같은 설정을 해줍니다. compile group: 'io.springfox', name: 'springfox-swagger-ui', version: '2.9.2'compile("io.springfo..
[Spring Boot] JPA Auditing 으로 생성/변경일시 관리하기 안녕하세요. 남산돈가스입니다. 오늘은 Spring Boot + JPA 환경에서 Auditing을 이용하여 생성/변경일시를 관리하는 법에 대해 포스팅하겠습니다. 일반적으로 테이블을 설계할 때, 거의 필수적으로 관리되는 컬럼들이 있습니다. 대표적인 예로 생성일시, 변경일시 등이 있을 것이고, 또 최종 변경자, 최초 생성자도 있을 수 있겠네요. JPA환경에서 Entity들을 관리할 때, 이 모든 Entity에서 위에서 언급한 컬럼들을 일일이 관리하기엔 번거로움이 있을 것 같습니다. 또한, 코드 레벨에서 이 데이터들의 값을 관리하기는 더 어려운 일이 아닐 수 없겠죠. 이런 불편함들을 해소하고자(?) 혹은 Spring Data JPA가 아닌 다른 프레임워크 환경에서의 ORM에서 기본적으로 제공되던 것(ex. Se..
[NCP] 탄력적 서버 확장을 위한 오토스케일링 구성하기 (1) - Launch Configuration 구성 안녕하세요 남산도서관 입니다. Cloud 인프라 구성의 On-premise 대비 가장 큰 장점은 장애 또는 대량 트래픽 발생 시에 자동으로 대처가 가능하며 탄력적으로 인프라를 운영할 수 있다는 점입니다. 금번 포스팅에서는 탄력적 서버 운영을 위한 핵심 서비스인 Auto Scaling 서비스 구성에 대해 알아보겠습니다. Auto Scaling 서비스를 구성하게 되면 관리자가 지정한 이벤트가 발생할 때 지정된 수량만큼 서버를 증설하거나 축소할 수 있습니다. 설정 진행을 위하여 가장 먼저 Products & Service 메뉴에서 Auto Scaling 을 선택합니다. 하위 메뉴인 Launch Configuration 메뉴로 진입한 후 [Launch Configuration 생성] 버튼을 클릭합니다. 첫번째로..
Elastic Stack을 활용하여 대시보드 만들기 - 1 안녕하세요 명동역델리만쥬입니다~ 앞으로 6주간 Elastic Stack을 활용한 DashBoard를 만들어보는 시간을 가지려고 합니다. 포스팅의 방향은 Kibana에서 제공하는 컴포넌트들을 활용하여 dashboard의 구축 및 운영을 위한 전반적인 내용과 troubloshoot을 중심으로 하려고 합니다~! 검색엔진으로서 Elasticsearch 및 Architecture 등은 깊게 들어가지는 않으려고 해요~ 요즘 개발자들 사이에서 흔히들 ELK 스택이라고 표현하는데요. ELK 스택은! Elasticsearch - 데이터 검색,분석,저장Logstach - 데이터 수집,변환,전송 Kibana - 데이터 시각화 Elastic Stack의 Workflow를 살펴보면 크게 Elasticsearch : 데이터의 M..
[Angular] HTTPInterceptor 를 이용하여 파일 업로드 중지하기 안녕하세요. 명동섞어찌개입니다. 오늘은 Angular 에서 파일 업로드 기능 개발 시, 원하는 시점에 파일 업로드를 중지하는 기능에 대해 알아보도록 하겠습니다. 요점은 페이지 이동이나 파일 업로드 취소 버튼을 누르는 순간, HTTPIntercepter 를 이용하여 서버에 보내는 요청을 취소하여 파일 업로드를 중지하는 기능을 만드는 겁니다! 1. HttpCancelService 를 만듭니다실질적으로 http 요청을 취소하는 부분입니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19import {Injectable} from '@angular/core'; import {Subject} from 'rxjs'; @Injectable() export class HttpCan..
[NCP] 서버 보안을 위한 SSL VPN 서비스 활용하기 안녕하세요 남산도서관 입니다. 지난 포스팅에서는 NCP 콘솔 계정 보호를 위한 Sub Account 관리 방안에 대해 알아 보았습니다. 지난포스팅 확인하기 (NCP Sub Account 생성) 이번 포스팅에서는 서버 보안 접속을 위해 NCP (Naver Cloud Platform) 에서 제공하고 있는 SSL VPN ( Secure Sockets Layer Virtual Private Network ) 서비스 사용 방법에 대해 알아보도록 하겠습니다. SSL VPN 을 활용하면 클라이언트 사용자는 가상 사설망 네트워크 권한을 할당 받아 클라우드 내부의 서버와 동일한 네트워크 환경에서 인프라를 운영 관리 할 수 있습니다. 서비스 이용 요금은 외부 접속 가능한 ID 수량에 따라 정해지며 SSL VPN을 통한 데..
[Spring Boot] Pageable 커스터마이징하기 안녕하세요. 남산돈가스입니다. 지난 포스팅 [Spring Boot] JPA + Pageable 을 이용한 페이징 처리 에서 마지막 Pageable 커스터마이징에 대한 언급을 했었는데, 이번 포스팅에서 그 내용을 다루어 보려고 합니다. 일반적으로, Pageable을 파라미터로 Controller를 구현하면 Request Parameter 를 통하여 Handling 할 수 있는 파라미터는 기본적으로 page, size, sort 이렇게 세 가지 입니다. page : 조회할 페이지 번호 (default : 0)size : 한 페이지 당 조회 갯 수 (default : 20)sort : 정렬 기준 (정렬할 기준컬럼,ASC|DESC)위와 같은 기본 설정을 가지고 Pageable 객체를 Handling 할 수 있습..