Disque 1.0 RC1が登場!
原文は Salvatore Sanfilippo により に公開されました。 このブログを購読する
本日、Disque 1.0の最初のリリース候補版(RC1)が利用可能になったことをお知らせできて嬉しく思います。
Disqueをご存じない方は、GitHubのプロジェクトページ(http://github.com/antirez/disque)にあるREADMEから読んでみるのが一番の近道です。
Disqueは所詮一つのソフトウェアに過ぎません。ですから、その物質的な価値は、それを使う人にとってどれだけ役に立つかによって、ゼロにもなればそれ以上にもなります。しかし私にとっては、Disqueというモノ自体を超えた、はるかに大きな価値があります。それは、自分が大切に思うものを設計し、作り上げることの価値です。これこそがプログラミングの魔法です。何もなかったところに、今は動く何かが存在するのです。他の誰かが解析し、実行し、使うかもしれない何かが。
分散システムは美しい分野です。Redisと、さまざまな形で私を導いてくれた人々のおかげで、私は分散システムの世界に触れることができました。この愛を何か形あるものにしたいと思いました。ゼロから設計され、偏見なく、他の類似システムが何をしているかをあまり覗き込むこともなく作られた、新しい小さなシステムです。Redisでの経験から、メッセージブローカーは非常に興味深いトピックであり、ある意味で分散システムの概念を適用するのに最適な題材だと気づきました。メッセージブローカーは楽しく、エキサイティングなものになり得るとさえ思っています。そこで新しいメッセージキューを設計してみました。その結果がDisqueです。
Disqueの設計目標は、優れたユーザーエクスペリエンスを持つシステムを提供することです。すなわち、メッセージングの文脈において推論しやすい保証を提供し、徹底的な運用のシンプルさを提供することです。RC1はその基盤を提供しますが、まだやるべきことは残っています。何よりも、DisqueがAphyr氏によってJepsenで徹底的にテストされることを願っています。Disqueはテスト可能な形で特定の保証を提供するシステムなので、もしテストに失敗すれば、それは直接修正すべきバグを意味し、結果としてより良いシステムにつながるからです。
運用面では、実世界でのテストが必要です。APとメッセージキューは、運用の堅牢性を提供する上で完璧な組み合わせだと個人的には思っています。しかし、最初のリリースですべてを完璧にできたなどという幻想は抱いていません。ですから、私が目指す真の運用シンプルさに*本当に*到達するには、数か月、あるいは数年もの反復が必要になるでしょう。さらに、このRC1はここ数週間で大幅に変更が加えられたものであり、少なからぬバグが残っていると予想しています。
楽しくエキサイティングなシステムを作るという観点からは、ユーザーに*この特定の*実装の細部について考えさせるのではなく、より一般的にユーザーが抱えるメッセージングそのものの問題について考えられるようにする、シンプルで小さなAPIに仕上げようとしました。Disqueにはまた、ブラックボックスではない、実際にデバッグや観測が可能なシステムにするための一連のイントロスペクション機能も備わっています。
新しいコードやアイデアゆえのあらゆる限界を抱えつつも、このRCリリースは素晴らしい第一歩であり、Disqueが私たちプログラマが始めては完成させずに終わるサイドプロジェクトのリストに入らなかったことを嬉しく思います。
この数か月間、Disqueをハックし、その形を模索する中で、私は一人ではありませんでした。He Sun、Damian Janowski、Josiah Carlson、Michel Martens、Jacques Chester、Kyle Kingsbury、Mark Paluch、Philipp Krenn、Justin Case、Nathan Fritz、Marcos Nils、Jasper Louis Andersen、Vojtech Vitek、Renato C.、Sebastian Waisbrot、Redis Labs、Pivotal、そして今思い出せていない他にも多くの方々に助けていただきました。ご協力に感謝します。
RC1はDisqueのGitHubリポジトリでタグ付けされています。ぜひお楽しみください!
記事をランダムに読む
コメント
ログインしてコメントする