タグ

2013年1月24日のブックマーク (5件)

  • もしもデータベースサーバがクラッシュしたら

    人の作ったものは完璧ではない。完璧でないものはクラッシュする。故にデータベースはクラッシュする。サーバハードウェアの故障、OSのクラッシュ、データベースそのもののバグなど原因は様々であるが、永遠に停止することなく動き続けるRDBMSというものは存在しない。もちろん数年間無停止で問題が出ない場合もあるが、クラッシュするときはするので対策が必要である。もしもの時に備えて抜かりないのがスマートなオトコのスタイルである。データベースのご利用は計画的に。 と思ったそこのアナタ!!人生そんなに楽ではありません。 もちろんRDBMSはトランザクションのDurabilityを保証しているので99%の場合はそれでOKだけど、それはCOMMITが成功した場合の話。COMMITは大抵の場合高速な処理であるが、それでも処理にかかる時間はゼロではない。アプリケーションがデータベースサーバにCOMMITを送信してから

    もしもデータベースサーバがクラッシュしたら
  • 『はじめての RabbitMQ』

    アメーバ事業API 基盤グループでプログラマをしている @na_ga です。 API 基盤グループでは、弊社の様々なサービスから利用される共通 API の開発・運用を行なっております。今回は、私が担当した API でメッセージキューとして利用した RabbitMQ を紹介させていただきたいと思います。 はじめにAPI 基盤グループで提供している API には、リクエストをリアルタイムに処理する必要がないものもあります。例えばメール配信 API や、投稿内容の有人監視 API などが挙げられます。 これらの非同期処理が可能な API では、大量のリクエストを受け取るためにメッセージキューを使用しています。 メッセージキューを使用した構成では、リクエストを受け取るプログラムが、受け取ったリクエストから生成したメッセージをキューに格納します。キューに格納されたメッセージは、メッセージを処理

    『はじめての RabbitMQ』
  • Flask ハンズオン — Flask Handson 1 documentation

    Flask ハンズオン¶ Flask は Python 製のマイクロフレームワークです。 マイクロフレームワークの対義語はフルスタックフレームワークで、普通の Webアプリケーションを作るのに必要なもの・便利なものをできるだけなんでも 用意したものになります。 マイクロフレームワークはその逆で、最低限必要なものや、ほぼすべてのWebアプリで 使う機能だけで構成されたフレームワークです。 マイクロフレームワークのフルスタックフレームワークに対する利点は、 フレームワークを覚えるだけで精一杯にならないで済む 追加のツールを自分で選ぶのが簡単 (O/Rマッパー等) になります. なので、簡単なアプリを短い勉強時間で作りたいケースや、高い目標性能などで フルスタック型フレームワークをそのままでは適用できない (大幅な改造が必要になってしまう) ケースでは、マイクロフレームワークが適しています。 目

  • zshのbindkeyをイジってワンストロークでエディターを起動する - プログラムモグモグ

    zsh使う人なら割とよく知られてるっぽい技 function cdup() { echo cd .. zle reset-prompt } zle -N cdup bindkey '\^' cdup 「^」キーを押すと, どんどん上のディレクトリーに動く 「^」自身を入力するには, ^V^みたいなかんじ ホームディレクトリーに「~」で移動する設定 function cdhome() { echo cd ~ zle reset-prompt } zle -N cdhome bindkey '~' cdhome これはかえって邪魔かもしれない. 他に使えないかなぁ... って考えてたところ, 一週間前にこれを思いつきました. function starteditor() { exec < /dev/tty $=EDITOR zle reset-prompt } zle -N startedit

    zshのbindkeyをイジってワンストロークでエディターを起動する - プログラムモグモグ
  • 「Ctrl」+「S」でキー入力が受け付けられなくなる

    ついついWindows上で一般的なファイル保存のショートカット(「Ctrl」+「S」キー)に手が伸びてしまい、キー入力がまったく受け付けられなくなってしまった。これは、Linuxのコンソール上で「Ctrl」+「S」キーを押すとターミナルへの出力がロックされるためだ。 この場合には、焦らずに「Ctrl」+「Q」キーを押せば解除される。混乱を避けるためにこの機能そのものを無効にさせたい場合、次のように指定しよう。 まず現在の状況をモニタしてみる。コマンドラインから「stty -a」と入力すると「stop」機能が「Ctrl」+「S」に割り当てられていることが分かる。 これを無効にすることは簡単であり、コマンドラインから「stty stop undef」と入力すればよい。 # stty -a speed 38400 baud; rows 65; columns 100; line = 0; int

    「Ctrl」+「S」でキー入力が受け付けられなくなる