BIBLIOGRAPHY

Butcher, Paul. 2014. Seven Concurrency Models in Seven Weeks Clojure. The Pragmatic Programmers. Dallas, Texas: Pragmatic Bookshelf. https://pragprog.com/titles/pb7con/seven-concurrency-models-in-seven-weeks/.

History

  • [2025-04-02 Wed 14:23] 기록

Seven Concurrency Models in Seven Weeks Clojure

(Butcher 2014)

  • Seven concurrency models in seven weeks
  • Butcher, Paul
  • 2014

소개

Your software needs to leverage multiple cores, handle thousands of users and terabytes of data, and continue working in the face of both hardware and software failure. Concurrency and parallelism are the keys, and Seven Concurrency Models in Seven Weeks equips you for this new world. See how emerging technologies such as actors and functional programming address issues with traditional threads and locks development. Learn how to exploit the parallelism in your computer’s GPU and leverage clusters of machines with MapReduce and Stream Processing. And do it all with the confidence that comes from using tools that help you write crystal clear, high-quality code. 이 새로운 세상에 대비하세요. 액터 및 함수형 프로그래밍과 같은 새로운 기술이 기존 스레드 및 잠금 개발의 문제를 어떻게 해결하는지 알아보세요. 컴퓨터 GPU의 병렬성을 활용하고 MapReduce 및 스트림 프로세싱으로 머신 클러스터를 활용하는 방법을 알아보세요. 그리고 명확하고 고품질의 코드를 작성하는 데 도움이 되는 도구를 사용하여 자신감을 가지고 이 모든 작업을 수행하세요.

This book will show you how to exploit different parallel architectures to improve your code’s performance, scalability, and resilience. You’ll learn about seven concurrency models: threads and locks, functional programming, separating identity and state, actors, sequential processes, data parallelism, and the lambda architecture. 이 책에서는 다양한 병렬 아키텍처를 활용하여 코드의 성능, 확장성, 복원력을 향상시키는 방법을 보여드립니다. 스레드와 잠금, 함수형 프로그래밍, ID와 상태 분리, 액터, 순차적 프로세스, 데이터 병렬 처리, 람다 아키텍처 등 7가지 동시성 모델에 대해 배우게 됩니다.

Learn about the perils of traditional threads and locks programming and how to overcome them through careful design and by working with the standard library. See how actors enable software running on geographically distributed computers to collaborate, handle failure, and create systems that stay up 24/7/365. Understand why shared mutable state is the enemy of robust concurrent code, and see how functional programming together with technologies such as Software Transactional Memory (STM) and automatic parallelism help you tame it. 기존 스레드 및 잠금 프로그래밍의 위험성과 신중한 설계와 표준 라이브러리 작업을 통해 이를 극복하는 방법에 대해 알아보세요. 액터를 통해 지리적으로 분산된 컴퓨터에서 실행되는 소프트웨어가 어떻게 협업하고, 장애를 처리하고, 연중무휴 24시간 가동되는 시스템을 만들 수 있는지 알아보세요. 공유 가변 상태가 강력한 동시 코드의 적인 이유를 이해하고 함수형 프로그래밍과 소프트웨어 트랜잭션 메모리(STM) 및 자동 병렬 처리와 같은 기술이 어떻게 이 문제를 해결하는 데 도움이 되는지 알아보세요.

You’ll learn about the untapped potential within every GPU and how GPGPU software can unleash it. You’ll see how to use MapReduce to harness massive clusters to solve previously intractable problems, and how, in concert with Stream Processing, big data can be tamed. 모든 GPU에 내재된 미개발 잠재력과 GPGPU 소프트웨어가 이를 활용하는 방법에 대해 알아보세요. MapReduce를 사용해 대규모 클러스터를 활용하여 이전에는 해결하기 어려웠던 문제를 해결하는 방법과 스트림 프로세싱과 함께 빅 데이터를 길들일 수 있는 방법을 살펴볼 수 있습니다.

With an understanding of the strengths and weaknesses of each of the different models and hardware architectures, you’ll be empowered to tackle any problem with confidence. 다양한 모델과 하드웨어 아키텍처의 장단점을 이해하면 어떤 문제도 자신 있게 해결할 수 있습니다.