#tlstudy tokyoLinuxStudy 03 の抽出
HandlerSocket: AtmicなIncrement/Decrementが可能。だけどトランザクションは非サポート。 #tlstudy
2011-09-06 19:23:40HandlerSocket: TIMESTAMP型は、未対応。将来的に実装するかもしれない、とのこと。 #tlstudy
2011-09-06 19:26:38Tips: HandlerSocketの接続を切るまで、テーブルを開きっぱなしになる。#tlstudy
2011-09-06 19:27:17SQLクエリとの共存は非常に素晴らしい。大量の更新処理と、複雑な読みだしSQLの共存とか。シリアル型対応使えるし・・・Timestamp非対応は、クライアントで何とかしろと #tlstudy
2011-09-06 19:28:42HandlerSocketとSQLの両方から同一DBを更新すると、デッドロックすることがある。 SELECT GET_LOCK, SELECT RELEASE_LOCK というアドバイザリーロックを使って回避するなど。 #tlstudy
2011-09-06 19:28:52ドライバ: libhsclient (by C++) 、Net:HandlerSocket (by perl)ほか、PHP,Javaなど。 #tlstudy
2011-09-06 19:29:59アプリサーバがMyDNSサーバからMySQLサーバのリストを取得してくる・1台をランダム選択しクエリ実行・エラーが出たら次を試す #tlstudy
2011-09-06 19:31:47MyDNSで、重み付けランダムor Consistent Hashingでサーバを選べる。後者はしらなんだ。#tlstudy
2011-09-06 19:32:51サーバリストの各エントリには重みが指定可能・10秒に1度の頻度で取得・ランダムまたはconsistenthashingでサーバを決定・DB接続はなるべく持続・アプリ自体がリトライする仕組みを持っている・DBサーバ以外も同じ仕組みで負荷分散冗長化 #tlstudy
2011-09-06 19:33:46Mobageの仕組みの一部(かなり?)が、HandlerSocketのソースに入っている。 接続持続、リトライなど。 #tlstudy
2011-09-06 19:36:50Mobageでエラーリトライ処理の中身がHandlrSocketのソースにあるらしい・・・これは読もう是非読もう。こういうのって一度作れば凄く便利ですが、安定するまでめんど臭いんですよね・・・ #tlstudy
2011-09-06 19:38:08次は、斯波 さんによる HandlerSocket-Spider-HandlerSocket-InnoDB など。 #tlstudy
2011-09-06 19:38:52javaのクライアントhs4jにも持続接続、リトライの仕組みが入っておりました。 #tlstudy
2011-09-06 19:39:08Spier Storage EngineはMySQLのストレージエンジンの1種。 複数のDBのテーブルを束ねて一つのテーブルとして使えるもの。 GPLライセンス。#tlstudy
2011-09-06 19:40:29Spiderストレージエンジンとは、MySQLのストレージエンジンの一種。複数のDBサーバにあるテーブルを束ねて、1つのテーブルとして利用できる。クラウド環境で増え続けるデータを分割して管理しつつ1つとして利用することができる #tlstudy
2011-09-06 19:41:01