본문 바로가기
728x90

전체 글69

Kafka 설치 목차 실습 환경 kafka 설치 kafka 브로커 힙 메모리 설정 kafka 브로커 실행 옵션 설정 zookeeper, kafka broker 실행 정리 1. 실습 환경 OS: Ubuntu 20.04 CPU: OCPU 4core Memory: 24G 2. kafka 설치 https://archive.apache.org/dist/kafka/ Index of /dist/kafka archive.apache.org kafka 설치는 어렵지 않습니다! 먼저 위 사이트에서 사용하려는 버전의 kafka 바이너리 패키지 경로로 이동 후 wget 명령어를 통해 kafka 바이너리 패키지를 다운로드 받습니다. 다운로드가 완료되면 tar 명령어와 xvf 옵션을 사용해서 압축을 풀어주시면 해당 디렉토리에 kafka_2.13.. 2023. 10. 9.
KafKa란? 목차 kafka란? kafka가 데이터 파이프라인으로 적합한 이유 kafka의 중앙 집중화 정리 1. KafKa란? 카프카 공식 홈페이지에서는 고성능 데이터 파이프라인, 스트리밍 분석, 데이터 통합 및 미션 크리티컬 애플리케이션을 위해 사용하는 오픈 소스 분산 이벤트 스트리밍 플랫폼이라 소개하고 있습니다. 이벤트 스트리밍은 데이터베이스, 웹, 웹 백엔드 서버와 같은 이벤트 소스에서 거의 실시간으로 발생하는 데이터를 연속적으로 처리 및 수집, 분석 하는 방식입니다. https://kafka.apache.org/ Apache Kafka Apache Kafka: A Distributed Streaming Platform. kafka.apache.org kafka는 링크드인 백엔드 아키텍처에서 파편화된 데이터 .. 2023. 10. 8.
equals() 메서드와 hashCode() 메서드 이번 포스트에서는 자바의 equals() 메서드와 hashCode()메서드에 대해서 알아보도록 하겠습니다. 자바를 사용하여 개발을 하는 개발자분들은 equals() 메서드를 한 번씩 봤거나 사용해 봤을 겁니다. equals() 메서드는 두 객체가 같은 객체인지 비교할 때 사용하는 메소드입니다. 밑의 간단한 Member 클래스를 살펴보겠습니다. public class Member { private String name; private String email; public Member(String name, String email) { this.name = name; this.email = email; } public String getName() { return name; } public String ge.. 2023. 9. 16.
Facade Pattern 적용기 이번 포스트는 개발을 하면서 하나의 서비스가 여러 개의 레포지토리를 의존하는 방식을 해결하기 위해서 퍼사드 패턴을 적용한 과정에 대해서 써보려 합니다. 목차 하나의 서비스가 여러 개의 레포지토리를 의존하는 코드의 문제점 퍼사든 패턴 적용 결론 하나의 서비스가 여러 개의 레포지토리를 의존하는 코드의 문제점 밑은 퍼사든 패턴을 적용하기 전 주문/결제 서비스 코드와 아키텍처 입니다. 지금 생각하면 정말 부끄러울 정도로 생각 없이 코드를 작성한 거 같다고 느껴지네요...ㅋㅋ @Service @RequiredArgsConstructor public class OrdersServiceImpl implements OrdersService{ private final OrdersRepository ordersReposi.. 2023. 8. 27.
Stream Stream 이란? 데이터 처리 연산을 지원하도록 데이터 소스에서 추출된 연속된 요소라고 정의할 수 있습니다. 거의 모든 자바 애플리케이션은 collection으로 데이터를 그룹화하고 그룹에서 특정 값을 고르거나 연산하는 과정을 포함합니다. 이러한 과정을 밑의 SQL query 문처럼 구현 코드 대신 질의(선언) 형식으로 표현하고 select * from member m where m.gender = 'M'; 멀티 코어 아키텍처 환경에서 멀티 스레드 코드를 구현하지 않아도 collection에 대해서 병렬 처리를 할 수 있게 자바 8부터 새롭게 도입된 기능입니다. Stream의 간단한 예제 public class Main { public static void main(String[] args) { Lis.. 2023. 8. 20.
람다 표현식 람다 표현식 함수형 프로그래밍을 구성하기 위한 함수식이며, 자바의 메서드로 전달할 수 있는 익명 함수를 단순화한 것이라고 할 수 있습니다. 람다 표현식이 중요한 이유는 익명 클래스처럼 코드를 전달하는 과정에서 자질구레한 코드가 많이 생기지 않고 간결한 방식으로 코드를 전달할 수 있어 결과적으로 코드가 간결하고 유연해지기 때문입니다. // (1) (2) (3) (Apple apple) -> a.getWeight() > 80; 람다 파라미터 리스트 파라미터 리스트와 바디를 구분 람다의 반환값에 해당하는 표현식. 바디가 한 줄일 경우 중괄호와 return 생략 가능. 람다의 특징 익명 보통의 메서드와 달리 이름이 없으므로 익명이라 표현되며 메서드를 미리 만들어서 재사용하는 것이 아니라 관리해야 할 코드가 줄어.. 2023. 8. 16.
728x90