일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 리버스 프록시
- Google Cloud Platrofm
- Cloud Datastore
- Reverse Proxy
- Compute Engine
- container
- AWS
- playbook
- Cloud SQL
- VPC
- Cloud Storage
- Solution Architect Certificate
- ansible
- AWS Database
- Cloud Bigtable
- kubernetes
- Google Cloud Platform
- Kubernetes Engine
- Google Cloud Platorm
- Cloud Spanner
- gcp
- AWS Solution Architect
- AWS 자격증
- 앤서블
- Google Cloud
- GKE
- AWS Certificate
- Solution Architect
- 아마존웹서비스
- Amazon Web Service
- Today
- Total
목록language/java (7)
sungwony
JAVA8의 parallelStream은 멀티스레드 프로그래밍을 간편하게 해준다. 개발자가 직접 스레드 혹은 스레드풀을 생성하거나 관리할 필요없이 parallelStream(), parallel()만 사용하면 알아서 ForkJoinFramework를 이용하여 작업들을 분할하고 병렬적으로 처리하게 된다. 이번에 조회가 오래 걸리는 시스템을 개선하면서 조회 서비스를 다음과 같이 처리하였다. public class StreamUtils { private static final int PARTITION_SIZE = 100; public static List getResultParallel(List parameter, Function mapper){ if (parameter == null || parameter...
Java8에서는 더블 콜론(::)이라는 문법이 추가되었다. 더블 콜론은 정확하게는 'Method Reference'라고 부른다. 즉, 메소드 참조를 의미한다. 메소드 참조의 종류는 4가지이다. 종류 예시 static 메소드 참조 ContainingClass::staticMethodName 특정 객체의 인스턴스 메소드 참조 containingObject::instanceMethodName 특정 유형의 임의의 객체에 대한 인스턴스 메소드 참조 ContainingType::methodName 생성자 참조 ClassName::New 각각의 메소드 참조가 어떻게 이루어지는지 살펴보자. static 메소드 참조 import java.util.Arrays; public class MethodReferenceSampl..
Java 8에는 "stream"이 추가되었다. 이는 Java I/O 인터페이스의 InputStream, OutputStream과는 완전히 다르다. 스트림은 "연속된 정보"를 처리하는데 사용한다. 지금까지 우리가 알고 있는 연속된 정보에는 '배열'과 '컬렉션' 등이 존재한다. 아쉽게도 배열에서는 스트림을 활용할 수 없다. 하지만 배열을 컬렉션으로 변환하여 스트림을 활용할 수 있다. 먼저 스트림의 구조에 대해서 알아보자. list.stream().filter(x -> x>10).count() 스트림 생성 중개 연산 종단 연산 스트림 생성 : 컬렉션의 목록을 스트림 객체로 변환. 여기서 스트림 객체는 java.util.stream패키지의 Stream 인터페이스를 말한다. 이 Stream() 메소드는 당연히 C..
java.util.function 패키지 Java 8에 추가되었으며 람다 표현식을 보조하는 인터페이스를 모아놓은 패키지이다.Function, Supplier, Consumer, Predicate, UnaryOperator, BinaryOperator 등의 인터페이스가 있으며, 람다 표현식으로 선언될 추상 메소드를 하나씩 가지고 있다.java.util.function API Predicate- boolean test(T t)- default Predicate and(Predicate
람다(lambda) 표현식은 Java 8의 가장 특징적인 표현식. 람다 표현식은 함수형 프로그래밍에 유용하고 개발을 용이하게 한다. 람다 표현식은 인터페이스 메소드가 "하나"인 것들만 적용이 가능하다. 람다 표현식은 익명 클래스로 전환이 가능하며, 익명 클래스는 람다 표현식으로 전환이 가능하다. 기본 문법 람다 표현식은 3 부분으로 구성되어 있다. 매개 변수 목록 화살표 토큰(Arrow Token) 처리 식 (int x, int y) -> x+y 아래는 인터페이스를 익명클래스와 람다표현식으로 선언한 예 public class NestedAndLambda { public static void main(String[] args) { NestedAndLambda sample = new NestedAndLamb..
『자바 8에 추가된 것들은?』 · Optional · Default method · 날짜 관련 클래스 · 병렬 배열 정렬 · StringJoiner 『자바 8에서 변경된 것들은?』 · 함수형 프로그래밍 · 람다(Lambda) 표현식 · 메소드 참조 · java.util.function 패키지 · Stream
JVM의 Runtime Data Area는 자바 애플리케이션 실행을 위한 메모리 영역이다. RegisterJVM StackNative Method StackMethod AreaHeapRegister, JVM stack, Native Method Stack은 각 Thread가 개별적으로 소유한 공간.(Thread와 운명을 함께 한다.) Method Area, Heap은 모든 Thread가 공유하는 공간.(JVM 기동시에 생성된다.) JVM은 Stack 기반 구조를 가지고 있다. Register CPU 내 Register는 데이터를 신속하게 저장하여 사용하는 공간으로 data, address, status 등으로 구성되어 있다. 한편 가상 머신인 JVM에도 PC(Program Counter) Register..