okuyamaでのアプリ開発で押さえておきたい機能

2011年11月10日(木)
岩瀬 高博

はじめに

これまで2回にわたり、okuyamaの導入前と、運用のためのTipsを紹介させていただきましたが、いかがだったでしょうか。

最終回となる今回では、開発で利用するクライアントの機能を主に解説させていただきます。

今回の内容

今回はタイトルのとおり、アプリ開発で押さえておきたいokuyama用のクライアントが持つ機能を以下の6つの項目に絞って解説していきます。今回はJava版のバージョン0.9.0以上のOkuyamaClientを対象として説明を進めていきます。

  1. 2つのMasterNodeへの接続設定
  2. 有効期限の設定と延長
  3. 複数データの同時取得
  4. アトミックな更新処理
  5. オブジェクトの保存
  6. Tagを使ったデータ操作

それでは早速1の「2つのMasterNodeへの接続」から見ていきましょう。

1. 2つのMasterNodeへの接続設定

この機能は読んだままの機能ですが、OkuyamaClientでMasterNodeへ接続する際に複数のMasterNodeを指定する事で、接続中のMasterNodeに障害が発生した際に別のMasterNodeへ自動的に再接続して処理を続行する処理です。1台のMasterNodeで運用する際は利用できませんが、複数台の場合はこちらの接続方法を利用する事をおすすめします。また接続するノードは正常なノードからランダムに選択されます。

この機能を利用するためのOkuyamaClientのメソッド名は、接続先のMasterNodeを指定するメソッドがsetConnectionInfosとなり、接続がautoConnectになります。

コード1(クリックで拡大)

2. 有効期限の設定と延長

次の機能は保存するデータの有効期限を設定する機能です。有効期限は秒数で指定する事が可能で、有効期限が切れたデータは取得できなくなります。そして有効期限が設定されたデータを取得する際に、有効期限を取得した時間から設定した秒数分延長する事が可能です。例えばWebなどのセッション情報をokuyamaに保存する場合に、セッションデータにアクセスする毎に有効期限を延長したい場合などに有効活用してもらえると思います。

この機能を利用するためのOkuyamaClientのメソッド名は有効期限を設定できるメソッドがsetValue、setNewValue、setByteValue、setObjectValueとなり、有効期限を延長するメソッドが、getValueAndUpdateExpireTime、getObjectValueAndUpdateExpireTimeになります。

コード2(クリックで拡大)

株式会社神戸デジタル・ラボ

2006年神戸デジタル・ラボに入社。企業内業務アプリケーション開発に従事。
2008年末から大規模ECサイトのアプリケーション、インフラ周りの運用に従事。
2009年末に分散Key-Value Store”okuyama”をオープンソースとして公開。
2010年から各都道府県で開催されるオープンソースカンファレンスへの出展やセミナー登壇、「NOSQL afternoon in Japan」や、「JavaCloud Meeting Kansai」での登壇といった”okuyama”の普及活動の傍ら、”okuyama”を使ったアプリケーション開発などに従事し、現在に至る。

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています