Timestamps in Message-Passing Systems That Preserve the Partial Ordering

Fidge, C.J., Timestamps in Message-Passing Systems that Preserve the Partial Ordering, Proc. 11th Australian Comp. Sci. Conf., 1988, pp. 56-66. Timestamping is a common method of totally ordering events in concurrent programs. However, for applications requiring access to the global state, a total ordering is inappropriate. This paper presents algorithms for timestamping events in both …

Timestamps in Message-Passing Systems That Preserve the Partial Ordering 더 보기 »

Spotify's Engineering Culture

Spotify engineering culture (part 1) from Spotify Labs 이미 잘 알려진 서비스인 Spotify는 2008년에 창업해 2010년에 어느 정도 규모의 서비스 (1000만 사용자)에 도달, 2013년 연간 활성 사용자가 2400만명인 서비스이고, 현재 회사의 규모는 1200명 수준의 조직으로, 이제는 어느 정도 성숙해져가고 있는 엔지니어링 조직을 가지고 있는 회사라고 말할 수 있을 것 같습니다. 현재 몸을 담고 있는 회사의 문화와도 …

Spotify's Engineering Culture 더 보기 »

Time, Clocks, and the Ordering of Events in a Distributed System

Leslie Lamport. 1978. Time, clocks, and the ordering of events in a distributed system.Commun. ACM 21, 7 (July 1978), 558-565. The concept of one event happening before another in a distributed system is examined, and is shown to define a partial ordering of the events. A distributed algorithm is given for synchronizing a system of logical clocks which can be …

Time, Clocks, and the Ordering of Events in a Distributed System 더 보기 »

Actors in Scala

  Actors in Scala by Philipp Haller and Frank Sommers 150페이지 남짓의 이 책은 Scala의 Actors 라이브러리에 대한 책이다. 이 책의 저자 중 한명인 Philipp Haller는 Scala Actors 라이브러리의 저자다. 이 책은 Scala Actors를 다루는 것에 대한 기본적인 내용과 Exception/Termination handling, Actor 실행 방법의 customization, Remote Actors를 상세하게 다루고 있다. 원래는 Actor를 사용하는 패턴도 기대하고 있었지만 MapReduce와 …

Actors in Scala 더 보기 »

소중한 것을 먼저 하라. (First things first)

최근 한달 동안 frustrating things를 지난 주에 적어 본 것이다. 1. 누군가가 찾아오거나 메신저로 물어보거나 메일을 보내온 일들을 처리해주다 보면, 일과 시간 내내 새로이 발견된 문제를 해결하는 문제를 처리하고 있거나, 아마도 다른 사람에게 갔어야 하거나 지금까지 몇번이나 반복되었던 듯 한 누군가의 질문에 답해주거나, 업무의 경과를 공유 또는 보고하는 문서나 메일을 쓰고 있다. 상사로부터 명시적으로 부여받은 …

소중한 것을 먼저 하라. (First things first) 더 보기 »

Hacking Culture

Hacking Culture by Jesse Robins QCon San Francisco 2012에서 Chef로 유명한 Opscode의 공동창업자인 Jesse Robins가 발표한 내용입니다. Chef나 Opscode에 대한 홍보가 섞여있고, 내용은 어디선가 들어봤을 법한 내용들이었지만, 자신의 이야기를 곁들여서 재미있고 한층 더 마음에 와닿게 설명을 하고 있는 것 같습니다. Velocity 2009 요즈음 유행하고 있는 DevOps라는 개념이 처음 나온 것은 Velocity 2009에서의 John Allspaw가 발표한 …

Hacking Culture 더 보기 »

Programming in Scala

Programming in Scala, Second Edition 2013년이 시작하고 얼마 지나지 않아 트위터에서 개발자 저마다 개인적으로 2012년의 프로그래밍 언어를 꼽는 것이 유행한 적이 있다. 조금 늦었지만, 내게 2012년 한 해의 언어를 꼽으라면 Scala가 될 것 같다. 가장 큰 이유는 두가지로, 첫번째는, (정확히 세어보지는 않아서 모르겠지만 아마도) 2012년 동안 가장 많은 라인을 코딩한 프로그래밍 언어가 Scala라는 것, 두번째는, Programming …

Programming in Scala 더 보기 »

The Facebook Release Process

The Facebook Release Process by Chuck Rossi 사용자들이 항상 사용하고 있는 서비스를 하면서 빠르게 변화하는 것은 두마리 토끼를 잡으려는 것과 같이 어려운 일이기 때문에 많은 고민과 노력을 통한 좋은 프랙티스가 필요하다고 생각되지만, 실제로는 그러한 프랙티스는 그다지 널리 알려져 있지는 않는 것 같다. 이 발표는 QCon SF 2012의 발표 중 하나로, Facebook의 Release Engineering을 2008년부터 지금까지 담당해온 …

The Facebook Release Process 더 보기 »

What consistency does your key-value store actually provide?

What consistency does your key-value store actually provide? by Anderson, Eric, et al Many key-value stores have recently been proposed as platforms for always-on, globally-distributed, Internet scale applications. To meet their needs, these stores often sacrifice consistency for availability. Yet, few tools exist that can verify the consistency actually provided by a key-value store, and …

What consistency does your key-value store actually provide? 더 보기 »