(신간) '자바 병렬 프로그래밍'의 비급 전격 공개!
Jul 18, 2008
더우시죠? 달콤하고도 유쾌한 "한 여름 밤의 꿈"을 꾸기엔 방해꾼 열대야의 공작이 너무도 맹렬합니다. 저는 추위에 취약한 동물이라 "더위쯤이야~" 싶었는데, 그래도 덥긴 덥습니다. -0-; 자, 무더위를 날려줄 시원한 신간 소식 알려드립니다. 아마 지금쯤 블로그 히어로즈 트랙백 이벤트 당첨자 명단을 눈이 빠지게 기다리실 분들 많을 텐데요. 일단 신간 소식부터 알려드리고 올려드릴 테니 좀만 기다리세요.~
사람들은 여러 가지 타입이 있습니다. 한 가지 일에만 몰두하면서 순차적으로 일을 처리하는 사람. 혹은 몇 가지 일을 동시에 처리하는 사람. 전자가 보기에 후자인 사람은 정신 없고 "산만"하기 그지 없다는 표현을 쓰기도 하고, 후자가 전자를 바라 본다면 답답해서 속 터지는 사람같다는 생각을 하기도 하죠. 흠, 저야 뭐.
하지만 아무리 집중도가 높고 순차적인 일처리를 하는 사람이라고 하더라도 알게 모르게 적어도 몇 가지 일은 동시에 하게 마련입니다. 일상생활에서도 밥이 다 되기를 기다렸다가 반찬을 만들기 시작하고, 커피물이 끓는 동안 옆에서 지켜보고 있는 사람은 없기에 어느 정도는 우리 모두 멀티스레딩을 하고 있다고 보면 되죠. 좀 단순하긴 하지만요. 하지만.... 우리가 일상에서 겪는 10가지 일 정도라면 뭐 병렬 프로그래밍 따위 신경쓰지 않아도 처리할 수 있을 만큼 여러분의 두뇌는 이미 뛰어나리라고 믿습니다. 그러나 수천개의 연관 관계를 고려하고 작업의 우선순위와 병렬 처리를 고려하고 오만가지의 유스케이스와 DB 공유에 신경써야 한다면, 아... 그냥 집에 가서 발씻고 자거나 뻗어버리거나 삽질을 동원하거나 몇 가지 선택사항은 있긴 할 겁니다.
서버 프로그램을 작성하는 개발자들은 누구나 "병렬 프로그래밍"이라는 이야기를 들으면 혀를 내두르거나 고개를 돌리곤 한다는 이야기를 많이 들었습니다. 멀티 CPU, 멀티코어를 기반으로 다양한 데이터를 공유해야 하는 서버 프로그래밍에서 작업간의 동기화를 맞추지 못하면 야금야금 데이터를 갉아먹기 시작합니다.
물론 요즘 구입하는 서버 소프트웨어에서는 이미 이런 병렬 처리 기능이 보강되어있고, 수천만원을 호가하는 제품을 구입하면 어느 정도 효율을 기대할 수는 있긴 합니다. 하지만 분명 한계가 있습니다. 프로그램은 어쨌든 사람이 짜야 하니까요. 똑같은 기능을 하는 프로그램을 짜는 프로그래머가 여러 명 있다고 합시다. 대강 이런 서버 소프트웨어의 성능을 고려해 프로그램을 짜는 사람과, 『멀티코어를 100% 활용하는 자바 병렬 프로그래밍』을 읽고 이해한 후 여유있게 커피 한 잔 마시면서 "몰려드는 사용자를 감당할 수 있는 안정적이고도 성능이 높으며 오류가 적은 프로그램을, 그것도 아주 짧은 시간"에 만들어내는 개발자가 있다면, 어느쪽의 몸값이 올라갈지는 자명한 일입니다.
이 책에는 자바 5.0과 6.0을 기반으로 한 서블릿 예제와 웹 서버 예제, 서버 프로그램 예제 등 생생한 소스코드가 가득합니다. 서버 프로그래머, 자바 개발자는 물론이고 유지보수팀에서도 꼭 읽어야 할 내용이 꽉 차있습니다.
(지금은 마이크로소프트를 떠난) 빌게이츠 회장은 2007년 MVP 서밋에서 개발자를 대상으로 하드웨어 발전에 따른 소프트웨어 성장 기회를 다음과 같이 논평했습니다. 원문은 여기서 읽으실 수 있습니다(글을 읽으시려면 사이트를 구독하셔야 합니다).
이 책은 지금 YES24, 교보문고, 강컴, 인터파크, 알라딘에서 절찬 예약 판매중입니다.
사람들은 여러 가지 타입이 있습니다. 한 가지 일에만 몰두하면서 순차적으로 일을 처리하는 사람. 혹은 몇 가지 일을 동시에 처리하는 사람. 전자가 보기에 후자인 사람은 정신 없고 "산만"하기 그지 없다는 표현을 쓰기도 하고, 후자가 전자를 바라 본다면 답답해서 속 터지는 사람같다는 생각을 하기도 하죠. 흠, 저야 뭐.
하지만 아무리 집중도가 높고 순차적인 일처리를 하는 사람이라고 하더라도 알게 모르게 적어도 몇 가지 일은 동시에 하게 마련입니다. 일상생활에서도 밥이 다 되기를 기다렸다가 반찬을 만들기 시작하고, 커피물이 끓는 동안 옆에서 지켜보고 있는 사람은 없기에 어느 정도는 우리 모두 멀티스레딩을 하고 있다고 보면 되죠. 좀 단순하긴 하지만요. 하지만.... 우리가 일상에서 겪는 10가지 일 정도라면 뭐 병렬 프로그래밍 따위 신경쓰지 않아도 처리할 수 있을 만큼 여러분의 두뇌는 이미 뛰어나리라고 믿습니다. 그러나 수천개의 연관 관계를 고려하고 작업의 우선순위와 병렬 처리를 고려하고 오만가지의 유스케이스와 DB 공유에 신경써야 한다면, 아... 그냥 집에 가서 발씻고 자거나 뻗어버리거나 삽질을 동원하거나 몇 가지 선택사항은 있긴 할 겁니다.
서버 프로그램을 작성하는 개발자들은 누구나 "병렬 프로그래밍"이라는 이야기를 들으면 혀를 내두르거나 고개를 돌리곤 한다는 이야기를 많이 들었습니다. 멀티 CPU, 멀티코어를 기반으로 다양한 데이터를 공유해야 하는 서버 프로그래밍에서 작업간의 동기화를 맞추지 못하면 야금야금 데이터를 갉아먹기 시작합니다.
물론 요즘 구입하는 서버 소프트웨어에서는 이미 이런 병렬 처리 기능이 보강되어있고, 수천만원을 호가하는 제품을 구입하면 어느 정도 효율을 기대할 수는 있긴 합니다. 하지만 분명 한계가 있습니다. 프로그램은 어쨌든 사람이 짜야 하니까요. 똑같은 기능을 하는 프로그램을 짜는 프로그래머가 여러 명 있다고 합시다. 대강 이런 서버 소프트웨어의 성능을 고려해 프로그램을 짜는 사람과, 『멀티코어를 100% 활용하는 자바 병렬 프로그래밍』을 읽고 이해한 후 여유있게 커피 한 잔 마시면서 "몰려드는 사용자를 감당할 수 있는 안정적이고도 성능이 높으며 오류가 적은 프로그램을, 그것도 아주 짧은 시간"에 만들어내는 개발자가 있다면, 어느쪽의 몸값이 올라갈지는 자명한 일입니다.
이 책에는 자바 5.0과 6.0을 기반으로 한 서블릿 예제와 웹 서버 예제, 서버 프로그램 예제 등 생생한 소스코드가 가득합니다. 서버 프로그래머, 자바 개발자는 물론이고 유지보수팀에서도 꼭 읽어야 할 내용이 꽉 차있습니다.
(지금은 마이크로소프트를 떠난) 빌게이츠 회장은 2007년 MVP 서밋에서 개발자를 대상으로 하드웨어 발전에 따른 소프트웨어 성장 기회를 다음과 같이 논평했습니다. 원문은 여기서 읽으실 수 있습니다(글을 읽으시려면 사이트를 구독하셔야 합니다).
흠. 세상사가 논리를 구성해서 순차적으로 일을 처리해야하는 일만 가득하다면 얼마나 좋을까요. 지금 제게 닥쳐있는 백만 가지 일을 병렬로 술술 풀어줄 그런 책은 어디 없을지.... 이 책에 대한 글을 쓰다보니 제게도 정말 간절하네요. 그러니 프로그래머라면 "앗, 이거다"라고 반가워할 만할 책이라는 얘기가 가슴에 팍 와닿습니다. 이 책 읽으시고 몸값 높이게 되시면 저희 에이콘출판사에 맛있는 피자 한 판이라도 꼭(!) 보내주세요. 주소는 저희 사이트를 잘 뒤져보시면 나와 있습니다. ^^/마이크로소프트의 빌 게이츠 회장은 IT 산업이 멀티코어 프로세서를 효율적으로 프로그램하는 방법을 스스로 개발해야 한다고 언급했다.
게이츠 회장은 하드웨어 업계가 더 많은 트랜지스터를 사용함으로써 부분적으로 병렬 프로그래밍을 처리하고 있다고 설명했다. 그는 하드웨어가 지속적인 성장을 보인데 비해 소프트웨어의 성장 기회는 그리 크지 않았다고 말했다.
“하드웨어 산업은 계속해서 발전을 거듭하고 있다. 무어의 법칙에 따른 트랜지스터 수의 증가가 실상을 증명해주고 있다. 프로세서의 능력을 배가 시키는 것은 끝없이 계속될 것이다. 클록 속도를 높이는 대신에 이제는 더 많은 프로세서를 사용하고 있다”고 게이츠는 말했다.
이 책은 지금 YES24, 교보문고, 강컴, 인터파크, 알라딘에서 절찬 예약 판매중입니다.
크리에이티브 커먼즈 라이센스 에이콘출판사에 의해 창작된 이 저작물은 크리에이티브 커먼즈 코리아 저작자표시 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
헉.. 우와. 저 좋은 책이 번역서로 나왔군요!!! 우와 우와... 멋져요
요즘 멀티 코어에 대한 책들이 여기저기서 나오는 군요.
확실히 멀티 코어 세상에 진입한지 꽤 되었거늘
아직도 일반적은 프로그램들은 싱글코어 방식에서 발전하지 못하고 있는게 현실입니다.
전 자바를 할 줄은 모르지만, 읽을 줄은 아니깐 요책도 한번 찔러봐야겠습니다. ㅎ
확실히 현재를 살아가는 프로그래머들이라면 누구나 앗! 이거다! 할만한 책이니깐요 ㅎ
이 책 원서를 사려다가 모 인터넷서점에서 번역본 출간 소식을 보고 기다리는 중입니다. 만약 주문했으면 땅을 치고 후회할뻔...
(그런데 미리보기 같은 건 없나요???)
"KSUG의 차세대" 기선님 맞으시죠? ^^ 글 올리자마자 블로그에 글 써주셔서 감사합니다. ^^
레몬에이드님, 오늘 이 책 역자분하고도 한참을 얘기했는데요. 멀티코어는 물론이고, 자바 개발자, 서버 프로그래머라면 꼭 읽어보시면 정말 도움 되실거라는~*
초보님, 다행이에요. 저도 가끔 "원서 샀는데 번역서가~"라는 이야기 들으면 너무 안타깝거든요. 책 내용에 대해서는 나중에 좀더 흘려 드릴게요. :)
요새 cuncurrent 에 관심이 많은데..원서 보다가..이런 번역 본이 나오다니.ㅎㅎ
암튼..좋은 번역서 부탁 드립니다.(어떤것들은 한글이 더 어려운 번역서도 잇어서.)
또 읽고 싶은 책 등장이군요. ^^;;;
그래서 원서를 즐겨봐야 할까 봅니다.
항상 늦어지니.. 원.
쇼펜하워님, concurrent programming은 개발자라면 누구나 관심 있어 하고, 부족함을 많이 느끼는 분야라고 들었어요. 『Ajax 인 액션』, 『루씬 인 액션』을 훌륭하게 번역해서 호평 받은 강철구님이 번역한 책이니 번역 수준은 믿으셔도 될 겁니다. 국내에서 (거의) 처음 나오는 책이라 용어를 정립하기가 약간 까다롭기는 했지만요.
짱가님, 이 책이 원서 출간보다 좀 늦어지기는 했지만, 자바 5.0과 6.0을 반영하고 있어서 내용을 이해하거나 실무에 적용하는 데는 전혀 무리가 없을 거라고 생각합니다. 어서 번역서 고고싱~하세요.^_^
가장 기다리던 책이 드디어 나왔군요!! 철구님 수고많으셨습니다!
원서도 있긴 하지만.. 저도 다시 보고 우리 팀사람들한테 선물해야겠네요~
자바 5 이후를 사용하는 개발자라면 필수로 알아두어야할 내용이 가득한 책입니다.
멀티코어는 둘째치고.. 쓰레드를 안 쓰는 프로그램 찾기가 더 어렵지 않나요^^
javanese님, 이 책 기다리신 분 정말 많죠. 기다림 끝에 더 큰 보람이 찾아오는 법이죠. 기대에도 부응할 만한 책이구요. 주위분들께 많이 소개해주세요~