ParallelStream VS CompletableFuture 병렬 처리에 영향을 미치는 다음 3가지 요인을 잘 살펴보아야 한다. 1) 요소의 수와 요소당 처리 시간 컬렉션에 요소의 수가 적고 요소당 처리 시간이 짧으면 순차 처리가 오히려 병렬 처리보다 빠를 수 있음. 병렬 처리는 스레드풀 생성, 스레드 생성이라는 추가적인 비용이 발생하기 때문 2) 스트림 소스의 종류 ArrayList, 배열은 인덱스로 요소를 관리하기 때문에 포크 단계에서 요소를 쉽게 분리할 수 있어 병렬 처리 시간이 절약된다. 반면 HashSet, TreeSet은 요소 분리가 쉽지 않고, LinkedList 역시 링크를 따라가야 하므로 요소 분리가 쉽지 않음. 따라서 이 소스들은 ArrayList, 배열보다는 상대적으로 병렬 처리가..