タグ

ブックマーク / blog.yugui.jp (13)

  • gRPC-JSON proxy - 世界線航跡蔵

    grpc-gateway という gRPC からJSON APIへの変換プロキシ生成機を書いた。 これを使えばシステム内部ののmicroservicesはgRPCで通信しつつ公開APIはJSON APIで提供する、みたいなことが簡単になる。 なお、gRPCそのものについては mattnさんの記事 が参考になる。 背景 gRPCの良い点はいくつもある。 データはデフォルトでprotocol buffersで直列化される。ベストではないにせよ十分にコンパクト且つ高速だし、サイズで言えばJSONとは比べるべくもない。 簡単に複数の言語でサーバーのテンプレートやクライアントを生成できる。通信の詳細はgRPCにまかせて開発者はサーバーロジックの実装に注力できる。 design by Googleという安心感。 gRPCの素晴らしさは認めるものの、一方では欠点もある。まず、クライアントライブラリの多く

    gRPC-JSON proxy - 世界線航跡蔵
    kamipo
    kamipo 2015/04/09
  • Dockerで何が変わるのか - 世界線航跡蔵

    DockerCon 2014 に行ってきた。 この会期中には各社からいくつもの製品が紹介/発表された。そして、それによってクラウドという技術は次のステージに移行したと言っても過言ではないだろう。 より自由にユーザーがクラウドベンダーを選べる時代へ。どうやってクラウドにうまくデプロイするかではなく、アプリケーションそのものに注力できる時代へ。 Dockerとは Docker とはいわゆるコンテナ技術の1つで、Linuxホスト環境の中に隔離された別のLinux環境を作ってくれる技術だ。 軽量仮想マシンと呼ばれたりもする。 Solaris Container とも似ている。 新しくないDocker 1つ述べておくとDocker技術的には新しくない。Dockerの価値は技術以外にある(とDockerCEODockerConで言ってた)。 技術的にはSolarisにはSolaris 10の頃か

    Dockerで何が変わるのか - 世界線航跡蔵
    kamipo
    kamipo 2014/06/17
  • 光目覚まし時計 - 世界線航跡蔵

    ムーンムーン(moon moon) 光目覚まし時計 OKIRO(オキロー) 光で起きてスッキリ目覚め シルバー 出版社/メーカー: ムーンムーン(moon moon)メディア: 購入: 2人 クリック: 12回この商品を含むブログを見る 光目覚まし時計というものを初めて買った。騒音でなく光によって目覚めを図るというものだ。2ヶ月ばかり使っている限りではなかなか好印象だ。OKIROという直球な名前も一周回ってセンスよくすら感じる。定価は39,000円だけど、Amazonではもっと安く売ってたし。 私はもともと睡眠時間が長いたちで、日常生活を送っているとなかなかその体質に足るだけの睡眠時間を毎日とることは難しい。 それで起きられなくて目覚まし時計に頼る訳だけれども、生半可なものでは起きられない。新しい目覚まし時計を買うとしばらくは起きられるが、一週間ぐらい経って新しい機体の操作に慣れると半ば眠

    光目覚まし時計 - 世界線航跡蔵
    kamipo
    kamipo 2013/03/07
  • 良い相続人であるために - 世界線航跡蔵

    翔泳社の「君のために選んだ1冊 ソフトウェア開発の名著」という企画に寄稿を依頼されて、以下のような文章を書いた。ブログ等で公開して良いとのことだったのでここに公開したいと思う。 この企画は他の人の分を読むのが楽しみだ。早くができあがらないかな。 ちなみに「 きっと何者にもなれないお前たちに告げる 一冊」というタイトルを最初に思いついたけれど、長く読み継がれるであってほしいという企画の趣旨を鑑みて流行のネタを使うのは避けた。 yuguiがレガシーコードに絶望した人に贈りたい一冊 - 『レガシーコード改善ガイド』 レガシーコード改善ガイド (Object Oriented SELECTION) 作者: マイケル・C・フェザーズ,ウルシステムズ株式会社,平澤章,越智典子,稲葉信之,田村友彦,小堀真義出版社/メーカー: 翔泳社発売日: 2009/07/14メディア: 大型購入: 45人 クリ

    良い相続人であるために - 世界線航跡蔵
    kamipo
    kamipo 2011/12/05
  • 転職のお知らせ - 世界線航跡蔵

    世間は地震により慌ただしい。震源地近くの被災者の方にはお見舞いを申し上げる。 この最中に、個人的な報告を投下するのはちょっと憚られるものもあるのだけれども、あまり時期を外しても書く機会を逸するので思い切って書くことにしよう。 1月一杯で約3年務めた 株式会社スケールアウト を辞め、3月1日から Google Japan で働き始めた。twitterでは大勢の方に祝っていただき有り難い限りである。 Googleについては特に語ることはない。みんなが知っているし、私もまだみんなが知っているようなことの他は僅かしか知らない。だからスケールアウトについて語ることにしよう。 株式会社スケールアウト スケールアウトは広告配信エンジン/広告在庫管理システム/広告入稿システム/広告案件管理システムをフルスタックの製品「ScaleAds」を提供するスタートアップである。 創業 創業者の山崎大輔さんは、元はY

    転職のお知らせ - 世界線航跡蔵
    kamipo
    kamipo 2011/03/14
  • Ubuntu 10.4で端末をシリアルポートにしてみた - 世界線航跡蔵

    Ubuntu 10.4をインストールしたPC/AT互換機を、端末としてシリアルポートを使うように設定してみた。最近はクライアント環境としてはMacBook Proを専ら使っていて、他のマシンにはSSH経由で入ることが多いので、ディスプレイやキーボードは邪魔なだけだ。メンテするときもUnixワークステーションの類はMacにUSB-Serialアダプタを挿してシリアルで繋ぐので、PC/AT互換機もそれに合わせたい。 基的には Remote Serial Console HOWTO に従う。 設定をミスしたときのためのブートディスクは作らなかったけど、安全を期すならやっぱり作った方が良い。 このマシンのBIOSはシリアルポートに出力する機能が見あたらなかった。BIOSをシリアル経由で扱うのは諦める。 このマシンにはシリアルポート3は存在しないので、ttyS2を無効化する手順は必要なかった。 ブ

    Ubuntu 10.4で端末をシリアルポートにしてみた - 世界線航跡蔵
    kamipo
    kamipo 2010/06/28
  • 続・Railsの画面生成を10倍高速化する方法: フィルタ編 - 世界線航跡蔵

    さて、昨日は SSIとの組み合わせでPageキャッシュの適用範囲を広げる話 をした。 なぜSSIかというと、これは組込みの手軽なフィルタ機構だからだ。Apache 1系統ではSSIはハンドラとして実装されているけれども、2系統では新たにフィルタ機構が加わって、SSIはこちらで再実装されている。 フィルタ機構ならmongrelからの出力にも加工できる。Pageキャッシュとキャッシュでないものを透過的に扱えてうれしい訳だ。 ただ、確かにちょっとDRYさに欠ける。どうせならRailsのレイアウトファイルにPHPコード片を直接書きたいではないか。で、これを出力するとPHPとして処理してその結果がクライアントに伝わる、と。 id:yamazさんが「 rhtmlで直接phpを吐き出して処理する方法を模索したいのです。 」と言ってるのはたぶんそういうことだ。私もそれが理想だと思う。今日はそれに挑戦してみ

    続・Railsの画面生成を10倍高速化する方法: フィルタ編 - 世界線航跡蔵
  • passengerとmod_autoindex - 世界線航跡蔵

    Passenger を使っていて、ディレクトリのautoindexが効かなくて困った。 Passengerもいくらか枯れてきている感じなので先日試したところ、確かに管理が楽なので最近気に入っている。ちょっと前まではRailsアプリケーションのデプロイと言えばmongrel+mod_proxy_blancerだったのだけれども、最近はpassengerの人気が上がっている。 passenger人気の理由はいくつかある。 Rack という汎用の仕組みをサポートしていること。だから、passengerがあればrailsだけでなくmerbもsinatraも動く。 デプロイが楽なこと。SSHでサーバーに入ってアプリケーションサーバーを再起動、とかやらなくて良い。まーこれはcapistranoやvladでデプロイしている私にはあまり関係ないけど、PHPアプリケーションやJava EE warの「ディレ

    passengerとmod_autoindex - 世界線航跡蔵
  • それでもPHPが好きでない理由 - 世界線航跡蔵

    なんか、会社に行っても家でRSSリーダー開いてもPHPだね。今日は。 PHP 言語デザイナー ってどうよ? というのは丁度、今日会社で愚痴を言ったばかり。 PHPを他の言語が見下す理由 は違うぞ。PHPにもちゃんと コマンドラインインターフェースはある 。PHPは別にweb専用っていうわけじゃない。うちの、今のプロジェクトでもdaemonを3個、PHPで書いてあるし、隣のプロジェクトでは数年前の資産であるところのバックエンドのシステムがまるごとPHPだ。webに戻っても、テンプレートエンジンもCPANには劣るかもしれないけれどちゃんと選ぶ余地がある。 でもね。それでもね、PHPは好きになれない。20世紀も終わりのころにPHP3を触って以来、今回のプロジェクトで7年ぶりぐらいにPHPを触ったけれど、知れば知るほど、中途半端にPerlに似ていて気持ち悪い。Rubyを触り始めた頃endが気持ち悪

    それでもPHPが好きでない理由 - 世界線航跡蔵
    kamipo
    kamipo 2009/02/28
    より正確を期すならば「私と波長の合う哲学性が欠如してい」て、故に「生理的に受け付けない」。
  • Rubyのメタクラス階層 - 世界線航跡蔵

    この記事は、先日開催した 第3回 RHGの逆襲 のまとめみたいなものである。と、同時に『初めてのRuby(仮題)』の宣伝である。 クラス、その例外、そのトリック Rubyはクラスベースのオブジェクト指向だから、メソッドの情報はクラスに属している。インスタンスメソッドを呼び出すときには、そのオブジェクトの属するクラスを調べて、そのクラスの持っているインスタンスメソッドの中から探す。 でも、Rubyの場合は例外がある。1つはモジュール。モジュールはクラスではないのに、でもインスタンスメソッドを提供している。1つは特異メソッド。特異メソッドは特定のインスタンスに直接所属するメソッドだ。 でも、ここには実装上のトリックがある。Rubyにとってはモジュールのインスタンスメソッドも特異メソッドも、等しくクラスに属するインスタンスメソッドなんだな。 モジュール モジュールをクラスにincludeすると、

    kamipo
    kamipo 2009/01/25
  • Railsの画面生成を10倍高速化する方法 - 世界線航跡蔵

    RailsでPageキャッシュをより広く活用する方法を考えてみました。以下、ちょっと長く前置きが続きます。 Rails遅杉 Railsは遅い。何が遅いって、Rubyが遅くてRoutingが遅くてRDBとRHTMLが遅い。RDBが遅いのは大抵のWebアプリケーションでは変わらない話、で、だからRailsなんかが評価される余地があるんだよね。RubyやRHTMLの遅さは柔軟性の代償として受け入れよう。なにしろRDBがもともと遅いんだから。ただ、Routingは無駄に高機能だったりして頭にくる。Rhino on RailsのSteve YeggeもRoutingは黒魔術だと言っていたし。私はActionPackの全てが黒魔術だと思うけど。 そういう訳で、RoutingをCで書き直すのはドリコムのみなさんがいつかやってくれると期待するとして(可能なら手伝いたいけどね)、当面の対応としてはキャッシュ

    Railsの画面生成を10倍高速化する方法 - 世界線航跡蔵
  • RubyKaigi2008で喋ってきた - 世界線航跡蔵

    サイン会やった みなさん、ご来場 & お買い上げありがとうございました。なんか、緊張していたので最初のほうの人は特に、ちゃんと顔を見てお話しする余裕が無くてごめんなさい。書がお役に立てれば幸いです。 初めてのRuby 作者: Yugui出版社/メーカー: オライリージャパン発売日: 2008/06/26メディア: 大型購入: 27人 クリック: 644回この商品を含むブログ (251件) を見る RSpecによるRailsアプリケーションBDD事例 RSpecをRailsと組み合わせてBDDを導入したときの、導入話とか。 RSpecによるRailsアプリケーションBDD事例 from Yuki Sonoda Redmine - Ruby 1.9.1への道 RejectKaigiで話した。途中で時間切れになって残念。 Ruby 1.9.1への道 from Yuki Sonoda

    RubyKaigi2008で喋ってきた - 世界線航跡蔵
  • Rails勉強会@東京 第22回 - 世界線航跡蔵

    Rails勉強会 に行ってきた。しばらく抑うつ症状やらパニック症状やらの状態が悪かったので、久しぶりの参加だ。でも、最初から最後までどうも頭が働いてなかった。処理が追いつかなくて、切り返しが鈍かったり反応を返せなかったりした人にはごめんなさい。医師には「もう暫くゆっくりしなさい」 と言われてしまったけど、なるほどまだ調子じゃないね。 うむ。気がつけばこの勉強会も回数を重ねて、もうすぐ2周年。 いつもの通りの形式 である。 前半セッション 3つのセッションに分かれた。 初心者セッション(acts_as_authenticated) Rails悩み事相談Ruby Hoedown 2007 の動画を見る 私は初心者セッションに出た。オーナーは諸橋さん。とはいえ、私も我が物顔で口を挟ませてもらった。 acts_as_authenticatedとは acts_as_authenticatedと

    Rails勉強会@東京 第22回 - 世界線航跡蔵
  • 1