upcurve631 자바의 여러가지 functional interface + comparator 1. Supplier @FunctionalInterface public interface Supplier { T get(); } 사용 예시 public static void main(String[] args) { Supplier myStringSupplier = () -> {return "hello world!";}; myStringSupplier.get(); Supplier myRandomDoubleSupplier = () -> Math.random(); System.out.println("myRandomDoubleSupplier.get() = " + myRandomDoubleSupplier.get()); printRandomDoubles(myRandomDoubleSupplier, 5); } publi.. 2023. 6. 3. 자바의 Functional Interface와 andThen 메서드 이해하기 1. Function interface @FunctionalInterface public interface Function { R apply(T t); } input 타입은 T 이고 return 타입은 R인 메서드 이것을 Object 형태로 구현하면 어떻게 될까? 아래처럼 쓸 수 있다. public class Adder implements Function { @Override public Integer apply(Integer integer) { return integer + 10; } } public static void main(String[] args) { Function adder = new Adder(); Integer apply = adder.apply(5); System.out.println.. 2023. 6. 2. 자바와 함수형 프로그래밍 함수형 프로그래밍과 자바의 객체지향 프로그래밍은 문제에 대한 접근 방식이 다르다. 1. 함수형 프로그래밍 ? 함수란 ? f(x) => input을 입력할 때 output을 반환하는 것 => 자바에서는 method 함수는 역할을 고려할 때 동사에 가깝다. => method 명명을 동사로 짓는다. 반대로 객체는 명사 형태로 짓는다. 동사의 형태로 추상화하는 것이 쉬울 때가 있다. 명령형 프로그래밍 Imperative Programming 선언형 프로그래밍 Declarative Programming OOP 객체 지향 프로그래밍 How to do? 어떻게 해야 할까? Functional Programming What to do? 무엇을 해야 할까? 예를 들어, 유저 리스트가 주어졌을 때 검증되지 않은 유저들의 .. 2023. 6. 2. [Spring Cloud] Kafka 를 사용한 마이크로서비스 간 데이터 전송, 단일 데이터베이스를 사용해 동기화 문제를 해결하기 Order MicroService -> Catalog MicroService - orders service에 요청된 주문의 수량 정보를 catlogs service에 반영 - orders service에서 kafka topic으로 메시지 전송 (producer) - catalogs service에서 kafka topic에 전송된 메시지 취득 (consumer) db - order service -> message Queing Service (Kafka) 데이터 동기화 문제 해결 - OrderService에 요청된 주문 정보를 DB가 아니라 Kafka Topic으로 전송 - Kafka Topic에 설정된 Kafka Sink Connect를 사용해 단일 Db에 저장 -> 데이터 동기화 즉, 데이터베이스 입장.. 2023. 6. 2. 카프카 Kafka 콘솔에서 사용하기 Kafka - Scalar 언어로 된 오픈 소스 메시지 브로커 프로젝트 (브로커: 중간 서버, 메시지: 다양한 데이터 가능) - 실시간 데이터 피드를 관리하기 위해 통일된 높은 처리량, 낮은 지연 시간을 지닌 플랫폼 제공 카프카 이전의 방식 - end to end 연결 방식의 아키텍처 - 데이터 연동의 복잡성 증가 - 서로 다른 데이터 파이프라인 연결 구조 - 확장이 어려움 카프카 탄생의 배경 -> 모든 시스템으로 데이터를 실시간으로 전송하여 처리할 수 있는 시스템 -> 데이터가 많아지더라도 확장이 용이한 시스템 보내는 쪽과 받는 쪽이 누가 보내고 누가 받는지를 전혀 신경 쓰지 않게 된다. - Prdocuer / Consumer를 분리 Kafka Broker = Kafka Application Serv.. 2023. 6. 2. 이전 1 ··· 59 60 61 62 63 64 65 ··· 127 다음