데이터

· JPA
컨버터를 사용하면 엔티티의 데이터를 변환해서 데이터베이스에 저장할 수 있다. 예를 들어 회원의 VIP여부를 데이터베이스에는 "Y", "N"으로 저장하고 엔티티에서는 boolean 타입으로 변환해서 사용할 수 있다. @Entity public class Member { ... @Convert(converter = VipConverter.class) private boolean isVip; } @Converter public class VipConverter implements AttributeConverter { // 엔티티의 데이터를 데이터베이스 컬럼에 저장할 데이터로 변환 @Override public String convertToDatabaseColumn(Boolean attribute) { retu..
· ELK
ELK란? 데이터 분석 및 저장 기능을 담당하는 Elasticsearch 데이터 수집 기능을 하는 Logstash 이렇게 수집한 데이터를 시각화하는 Kibana 그림처럼 3가지의 앞글자만 딴 Log 및 데이터 분석 도구이다. ELK는 접근성과 용이성이 좋아서 요즘 많이 사용하는 추세다. Elasticsearch Elasticsearch는 Apache Lucene( 아파치 루씬) 기반의 Java 오픈소스 분산 검색 엔진 Elasticsearch를 통해 루씬 라이브러리를 단독으로 사용할 수 있게 되었으며, 방대한 양의 데이터를 신속하게, 거의 실시간( NRT, Near Real Time )으로 저장, 검색, 분석할 수 있다. Logstash 다양한 소스로부터 데이터를 수집하고 곧바로 전환하여 원하는 대상에 ..
· Apache Kafka
Kafka Broker & Zookeeper란? 브로커(broker)는 실행된 Kafka application 서버를 뜻한다. 주키퍼(zookeeper)는 이러한 분산 메세지 큐의 정보를 관리해 주는 역할을 한다. kafka를 띄우기 위해서는 주키퍼가 반드시 실행되어야 한다. 3대 이상의 브로커로 클러스터를 구성한다. 주키퍼와 연동(~2.5.0버전) 주키퍼의 역활 : 메타데이터(브로커id, 컨트롤러id 등) 저장 추후에는 주키퍼와 연동하지 않도록 구성할 예정 → 메타데이터를 브로커 안에 저장 n개 브로커 중 1대는 Controller기능을 수행한다. Controller : 각 브로커에게 담당파티션 할당 수행, 브로커 정상 동작 모니터링 관리 누가 Controller인지는 zookeeper에 저장 Brok..
· DDD
시스템 간 강결합의 문제 만약 외부 시스템과의 연동으로 서비스를 구축할 경우, 외부 시스템이 정상적으로 작동하지 않을때 트랜잭션 처리로 인한 롤백이 애매해지게 된다. 롤백 처리를 하지 않고 추후에 처리를 할 수 있겠지만 문제가 되는 외부시스템에서 응답 시간이 오래 걸리게 되면 내부 서비스에도 영향을 준다. 그리고 외부 시스템이 내부 시스템 코드에 영향을 주는 문제도 생길 수 있다. 이는 외부 시스템과의 문제뿐만 아니라 내부 시스템간에도 생길수 있는 문제들이다. 이러한 문제는 BOUNDED COUNTEXT 간에 강결합(high coupling) 때문이다. 이러한 문제를 해결하는 방법이 있는데 그것은 바로 이벤트를 사용하는 것이다. 이벤트 관련 구성요소 이벤트 핸들러(handler)는 이벤트 생성 주체가 발..
beekei
'데이터' 태그의 글 목록