boot

· Spring
Prometheus, Grafana에 대한 것은 이전 블로그글에서 확인하면 된다. Spring Boot Project 생성 및 설정 Spring Boot Project(Gradle)를 생성하고 build.gradle에 의존성을 주입해준다. dependencies { ... implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'org.springframework.boot:spring-boot-starter-actuator' implementation 'io.micrometer:micrometer-core' implementation 'io.micrometer:micrometer-registry-prometheus'..
· Spring
프로젝트 중 모니터링 시스템을 구현해보려고 한다. Prometheus + Grafana를 이용해 Spring Boot 애플리케이션을 모니터링 해 볼 것이다. 모니터링 시스템은 너무많은 종류가 있어서 본인이 사용하고 싶은것으로 사용해도 좋을듯하다. 추후에는 cAdviser도 연동해 컨테이너 모니터링까지 해볼 예정이다. 먼저 Prometheus, Grafana가 무엇인지 간단하게 알고 가자. Prometheus Prometheus는 SoundCloud사에서 만든 오픈소스 시스템 모니터링 및 경고 툴킷이다. 지금은 독립형 오픈소스 프로젝트이며 많은 회사들이 사용 하고 있고, 또한 kubernetes에서도 Prometheus를 사용하여 매트릭 수집 및 대시보드 구축하는 방식을 장려하고 있다. Jobs/expor..
· ETC
금융보안원, Apache Log4j2 취약점 긴급 점검 회의 개최 금융보안원(원장 김철웅)은 12월 12일(일) 김철웅 원장이 주재하는 금융권 Apache Log4j2 취약점 긴급 점검 회의를 개최해 금융권에 미치는 영향 등을 분석하고 금융보안원의 대응 상황을 점검했 www.boannews.com 홈페이지 기록 남기는 '로그4j2'서 취약점 발견…과기정통부 "긴급 보안패치 권고" 사진=픽사베이 많은 기업들이 홈페이지를 운영하며 사용하는 아파치(Apache) 로그(Log)4j 2 서비스와 관련된 보안 취약점이 발견된 가운데 정부가 긴급 보 www.bloter.net 애플·아마존도 사용하는 애드온 Log4j, 중대한 보안 결함 사태 발생 - CCTV뉴스 전 세계 주요 인터넷 서비스에서 널리 사용되는 Log4..
· Spring
FCM란? Firebase 클라우드 메시징(FCM)은 무료로 메시지를 안정적으로 전송할 수 있는 교차 플랫폼 메시징 솔루션이다. 간단히 말해서 무료로 웹, 앱에 푸시를 보낼 수 있는 플랫폼이다. 사용법 Firebase console에 접속해 프로젝트를 생성한다. 프로젝트 설정 -> 서비스 계정 -> 새 비공개 키 생성 다운받은 비공개 키를 resources 하위로 이동 Firebase의존성 추가 dependencies { ... // Firebase SDK implementation 'com.google.firebase:firebase-admin:6.8.1' ... } 엔드포인트 확인 프로젝트 설정 -> 일반에 프로젝트 ID를 확인할 수 있을것이다. 요 프로젝트 ID를 서버 엔드포인트에 넣어줄것이다. 엔..
· Spring
@Null / @NotNull 값이 null이거나(@Null) Null이 아닐때(@NotNull)를 검증한다. @NotNull로 설정 시 String의 ""(빈값) 값도 통과된다는 것을 주의하자. @Min(value) / @Max(value) 숫자(정수)를 입력하는 필드에서 입력 가능한 값의 최솟값(@Min)과 최댓값(@Max)을 설정한다. 예) @Min(100), @Max(99999) @DecimalMin(value) / @DecimalMax(value) 이것도 최솟값(@DecimalMin), 최댓값(@DecimalMax)을 설정하지만 정수가 아닌 BigDemical이나 BigInteger 객체 또는 String 값으로 숫자를 설정하는 경우에 사용한다. @Min, @Max도 String 값이나 Deci..
· AWS
Simple Queue Service 소개 및 사용법(1/2) Simple Queue Service(SQS)란 ? 분산 시스템를 구성할때 시스템간 메세지를 주고 받을 수 있는 메세지 큐 SQS는 전송,수신,삭제 3가지 기능을 제공한다. SQS의 기본적인 아키텍처 Producer가 메시지 전송 devbksheen.tistory.com 앞서 AWS Simple Queue Service(SQS)에 대해 알아보았다. 이제 Spring Boot에 적용해보겠다. IAM 권한 추가 AWS 콘솔에 로그인 후 IAM 서비스로 이동한다. 생성된 사용자가 없다면 생성 후 AmazonSQSFullAccess 권한을 추가한다. 해당 사용자의 access key와 secret key를 코드상에 적용해야 하므로 복사해둔다. SQS..
· Spring
log4j(Log For JAVA)란? Java 기반 Logging 유틸리티로써 debug용 도구로 주로 사용된다. 애플리케이션에 문제 발생 시 문제의 위치를 빠르고 정확히 파악하기 위해 사용한다. 또한 성능 및 속도에 영향을 미치지 않고 편리하게 사용할 수 있다. log4j의 특징 속도 최적화 thread-safe 하다. 즉, 멀티스레드 환경에서도 안전 properties 파일과 xml 형식으로 실행 중 수정 적용 가능 5단계의 레벨의 장애를 사용(DEBUG < INFO < WARN < ERROR
· AWS
기본적인 AWS S3를 생성 및 권한 설정 후 Spring Boot에 적용하는 것을 정리해보았다. AWS S3 Bucket 생성 1. 버킷 이름과 리전을 선택하고 모든 퍼블릭 엑세스 차단을 선택 해체해 버킷을 생성한다. AWS S3 정책 편집 버킷 정책 편집 1. 생성된 bucket의 권한 탭을 클릭 해 버킷 정책을 편집한다. 2. 버킷 ARN을 복사하고 정책 생성기를 클릭 버킷 정책을 생성 Select Type of Policy → S3 Bucket Policy Principal → * Actions → Get Object, Put Object ARN → 이 전에 복사한 ARN 1. 정보 입력 후 Add Statement 버튼을 클릭 2. 생성하려는 정책을 다시 확인 후 Generate Policy 버..
· Apache Kafka
[Kafka] Local에서 Kafka 명령어 날리기 [Kafka] EC2 생성 후 접속, Kafka 설치 및 설정 AWS EC2 생성 후 Inbound rule 추가 1. AWS Console 로그인 후 EC2에 접속 2. EC2 인스턴스 생성 3. 키 페어 생성 4. Inbound rule 추가 Inbound rule은 필요한대로.. devbksheen.tistory.com 앞서 Local에서 여러가지 Kafka 명령어를 날려보았다. 이제는 Spring Boot에 연동해 실제 프로젝트에 적용해보자 Spring Boot에 Kafka를 연동 Java(11) Amazon Corretto JDK(11) Spring Boot(2.5.5) 1. Kafka 의존성 추가 dependencies { ... // re..
· Spring
Flyway란? 오픈소스 마이그레이션 툴 자바나 c++같은 프로그램의 소스 코드는 svn, git과 같은 형상관리 툴로 쉽게 관리할 수 있지만 테이블의 스키마나 데이터는 위와 같은 툴로 변경이력을 관리할 수 없습니다. 따라서 SQL 스크립트문을 실행하거나 직접 DB 콘솔이나 Toad 같은 툴을 통해 직접 수동으로 처리해줘야 하는 단점이 있습니다. Flyway는 버전 관리 목적인 SCHEMA_VERSION 테이블을 통해 SQL 스크립트의 변화를 추적하면서 자동적으로 관리하는 방법으로 위와 같은 문제를 해결합니다. 구현 예제 1. build.grade 설정 dependencies { ... // flyway implementation 'org.flywaydb:flyway-core' // jpa impleme..
beekei
'boot' 태그의 글 목록 (2 Page)