タグ

rpcに関するkgbuのブックマーク (10)

  • Kyoto Tycoon に MessagePack-RPC をプラグインして Java から使う - Blog by Sadayuki Furuhashi

    Tokyo Cabinet を始めとする Tokyo シリーズの作者として知られる平林幹雄さんですが、Tokyo シリーズに続く新製品として、Kyoto シリーズがリリースされています。 Kyoto Tycoon(以下KT)は、ネットワーク経由で使えるデータベースサーバで、Tokyo Tyrantの後継製品に当たります*1。 KT は HTTP ベースのプロトコルで操作することができますが、別のプロトコルを追加することもできます。 実際に memcached プロトコルのプラグインが標準でバンドルされています。(memcachedプロトコルをKTにプラグインする) と言うわけで、KT を MessagePack-RPC で使えるようにするプラグインを書いてみました。github からダウンロードできます。 kt-msgpack kt-msgpack downloads MessagePac

    Kyoto Tycoon に MessagePack-RPC をプラグインして Java から使う - Blog by Sadayuki Furuhashi
    kgbu
    kgbu 2010/12/15
    これ、JRubyから使えないかしら、とか思うのであった。
  • 開発メモ: Kyoto Tycoonのプロトコル仕様

    TTではpure Ruby版とpure Perl版のクライアントライブラリを自分で実装していたが、KTでは各種pure実装は自分では書かないことにする。私はC++版のクライアントライブラリを作成しメンテナンスするが、その他の言語に関しては、その言語で生活していて腕に覚えのある方々にお任せしたい。その前提として、プロトコルを明らかにしておく必要がある。英文の仕様書を後で書くが、そのたたき台としてまずは日語で書いてみる。 ---- 概要 KTのサーバプログラム(ktserver)は、HTTPに基づいてクライアントと通信を行う。デフォルトのサービスポートは1978番だが、ユーザの設定によって変わることもある。サーバは、HTTP/1.0およびHTTP/1.1のリクエストを解釈することができ、それに対応するレスポンスを返す。 HTTP/1.1のリクエストにおいてContent-Typeヘッダの値が

    kgbu
    kgbu 2010/10/06
    自分の得意な言語でバインディングを作る練習に好適と思える。すぐ動きそうだし、使えるし。とか書く暇があったらやってみよう>俺。あと、動的リンクですらないからライセンスの自由度も高い。
  • Google Wave Robots APIの新機能

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Google Wave Robots APIの新機能
    kgbu
    kgbu 2010/05/27
    ちょっと読むと、Waveのrobotって、すごくErlangで実装したくなるんだけど、意味あるかなぁ。
  • 140行で作る分散リアルタイム検索エンジン(Twitter Streaming API対応) - 古橋貞之の日記

    マトモに使えるRPCライブラリ MessagePack-RPC for Ruby のバージョン 0.2.0 をリリースしました! 新たにコネクションプーリングの機能を追加しました。一度接続したコネクションを共有して使い回すことができます。コネクションを何度も張り直す負荷と遅延を削減でき、リソースの消費も抑えられます。 また、不意に切断されたコネクションを自動的に再接続する機能を導入し、信頼性を向上させています。 これを使って何か作ってみようと言うことで、twitterのリアルタイム検索エンジンを作ってみました。日語を検索できないなど機能は貧弱ですが、プログラム全体がわずか140行に収まっています(クローラ27行、インデクサ48行、クラスタ管理ノード37行、検索クライアント28行)。 新しいつぶやきを受信するたびに、リアルタイムで転置インデックスを作成していきます。インデックスを作成するノ

    140行で作る分散リアルタイム検索エンジン(Twitter Streaming API対応) - 古橋貞之の日記
    kgbu
    kgbu 2009/12/07
    コネクションpoolingの機能のデモ
  • InfoQ: WebフレームワークGoogle Sitebricks - Dhanji Prasanna氏へのQ&A

    原文(投稿日:2009/09/26)へのリンク SitebricksはGoogleによって開発された新しいWebアプリケーションフレームワークである。このフレームワークはGoogle Guice上に構築されており、早期エラー検出、短いコード、スピーディな開発に焦点を合わせている。InfoQではクリエイタでありGoogle WaveのコアエンジニアでもあるDhanji Prasanna氏から話をうかがった。 InfoQ:新Webフレームワーク構築の背景にある動機は何だったのですか? 既存のフレームワークで満足できなかったのはなぜですか? Dhanji氏:私は長い間(Java 5が出たのと同じ頃から)これに取り組んできました。Struts1/2、JSFなどのポピュラーなフレームワークを使ってみて苦労する点を特定し、自分自身のために楽しくて苦痛のないWebプログラミングを試みてきました。それらの

    InfoQ: WebフレームワークGoogle Sitebricks - Dhanji Prasanna氏へのQ&A
    kgbu
    kgbu 2009/10/14
    今日のほとんどのサイトに適用可能だが、"Google Waveのような最新のAJAXアプリケーションはSitebricksの恩恵はあまりないでしょう”とのこと
  • RPC サーバの遅延リターン - steps to phantasien(2009-07-04)

    最近は過労気味でウェブにものを書くこともできない, という話で上司の同情を誘うべく 日人の労働時間やストレスの実態をまとめた エンドレス・ワーカーズ を読んだら, 自分の労働時間は日人労働者の上位 2 割から漏れていることを知り愕然とした. あんなに働いたってのに...残業エリートへの道は険しい. 道を進みたいわけじゃないけれど. (平均は越えてたぜ!) いずれにせよ流行からはすっかり脱落しているので, 時流を無視して仕事の話でもしよう. 以前, 会社の blog で RPC の結果をノンブロッキングスタイルで受け取るプリミティブ "弱関数" を提案した. でも試行錯誤の結果, いまは使っていない. C++ での弱参照は意図しないリークを作りやすい. 使いわすれることも多く, 忘れた頃にクラッシュする. 要求は明示的にキャンセルした方がいいことがわかった. (世間はみんなそうやってます

    kgbu
    kgbu 2009/07/06
    みんな苦労してるんだなぁ。Erlangが窮屈だなんて贅沢すぎるぜ>オレ
  • Apache Thrift - Home

    The Apache Thrift software framework, for scalable cross-language services development, combines a software stack with a code generation engine to build services that work efficiently and seamlessly between C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, OCaml and Delphi and other languages. Getting Started Download Apache Thrift To get started, down

    kgbu
    kgbu 2009/05/25
    ApacheのincubatorプロジェクトになったThriftは関数型言語やErlangも接続可能になっていたのでメモ。
  • Cybozu Developer Network: Facebookで開発されたオープンソースのRPCフレームワーク「Thrift」調査報告

    サイボウズはクラウドベースのグループウェアや業務改善サービスを軸に、社会のチームワーク向上を支援しています。

    Cybozu Developer Network: Facebookで開発されたオープンソースのRPCフレームワーク「Thrift」調査報告
    kgbu
    kgbu 2009/05/25
    IDLコンパイラとライブラリのセットで、C++, Java, PHP, Ruby ,Pythonの機能モジュールをつなげられる Facebookから2007年にopensource化、2008年にApacheのプロジェクトになった
  • Ruby Rev + MessagePack による分散プログラム - Blog by Sadayuki Furuhashi

    ネットワークプログラミングで面倒なのが、通信相手にバイト列しか送れないためプロトコルをシリアライズ方法から考えないといけないかったり、複数のクライアントに対応しようとするとスレッドやらイベント駆動やらを考えないといけないところで、なかなか質的なロジックの実装に手を付けられずもどかしくなります。 そのあたりの面倒な部分をまとめて良きに計らってくれるRPCライブラリを作っておくと良さそうです。 とはいえ、RPCレイヤーはネットワークプログラミングの中でも速度と信頼性に大きく影響する部分でもあります。実装を丸々隠蔽されてしまうと、後になってカスタマイズできずに困ったことになるかもしれません。 最初のプロトタイピングとして簡単に使えるが、カスタマイズも効くような柔軟性が欲しいところです。 そこでRubyの高速なイベント駆動IOライブラリであるRevと、バイナリベースのシリアライズ形式であるMes

    Ruby Rev + MessagePack による分散プログラム - Blog by Sadayuki Furuhashi
  • RPC and SE Linux

    kgbu
    kgbu 2008/10/07
    RPCが使うポートをSELinuxで制限して、ポートの重複割り当てをふせぐ、なんてことができるんだ、へぇ
  • 1