Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

タグ

ブックマーク / blog.stanaka.org (8)

  • Go本体にContribute成功した話 と Gerritの話 - stanaka's blog

    来月ぐらいにはGo 1.7がリリースされそうなのですが、CONTRIBUTORSに名前が載せられそう( https://github.com/golang/go/blob/release-branch.go1.7/CONTRIBUTORS#L915 )なので記念エントリです。 内容自体は、4月にあったGoCon 2016 Spring( http://gocon.connpass.com/event/27521/ )での発表済みです。 tl;dr 一部のディストリの最新版でlinux/386でビルドしたバイナリが起動すらできない、というバグがあった 問題はruntimeのアセンブラ部分だったけど、なんとかパッチ書けた パッチ提出→コードレビュー→やりとり→マージまで、3日程度とスムーズに進行できた https://go-review.googlesource.com/#/c/21190/

    Go本体にContribute成功した話 と Gerritの話 - stanaka's blog
    mattn
    mattn 2016/07/28
    おめでとうございます!
  • GoのLINE BOT APIライブラリを作った - stanaka's blog

    先日、LINE BOT APIが公開されたので、この波に乗らねば、というわけでいろいろ遊んでいます。最近はGoが手に馴染んでいるのでGoでbotを書いているのですが、皆さんもご存知の通り、JSONのAPIGoで扱うのはなかなか辛いものがあるので、ライブラリにしてみました。 github.com こんな感じでecho botを書けます。まだテキスト部分しか実装してないので、これから画像などは実装していきます。 herokuで動かすことを想定していますので、お試しの際はLINE BOT をとりあえずタダで Heroku で動かす - Qiitaあたりを参考にデプロイしてみてください。 LINE BOT APIのアカウントの取得方法やcallbackが来ない!といったトラブルシュートは他にもいろいろ情報あがってますので、そちらでどうぞ。 package main import ( "fmt"

    GoのLINE BOT APIライブラリを作った - stanaka's blog
    mattn
    mattn 2016/04/11
  • Github製エディタAtomでパッケージを作ってみた - stanaka's blog

    先週にpublic betaが始まったgithub製のエディタのAtomを使ってみたので、旬な内にパッケージ (他のエディタでいうところの拡張とかプラグインとか)を作ってみました。 公式ドキュメントが充実しており、開発が活発(バージョンも毎日にようにあがっている)で変化も大きそうですので、ちゃんと触りたい方はそれを読んだほうが良いと思いますが、雰囲気を知りたい人向けの解説を書いてみました。 Atomのエディタとしての基的な使い方は、次のリンクをどうぞ http://qiita.com/spesnova@github/items/d3096d062d70e7385e9d Invite権もまだ残っているので、欲しい方は@stanakaまでmentionしてみてください。→権利終了しました パッケージ作成の基 パッケージ作成の基は、次の二つの公式ドキュメントを読むと分かります。 - htt

    Github製エディタAtomでパッケージを作ってみた - stanaka's blog
    mattn
    mattn 2014/03/04
  • The Benchmark with Go REST API Server - stanaka's blog

    I gave a presentation about lightweight REST API Server by Go, and performance comparison with Go, Perl and Ruby at GoCon 2013 autumn. The slide about benchmarking result is as follows. This shows milliseconds per request with 10,000 sequential requests at various conditions, which are go/perl/ruby, messagepack/json, and mysql SQL query/innodb memcached plugin. "direct memcached (innodb)" is direc

    The Benchmark with Go REST API Server - stanaka's blog
    mattn
    mattn 2013/10/17
  • TheSchwartz / Gearman のワーカープロセス管理WorkerManager - stanaka's blog

    概要 Perlの非同期処理システムとしてTheSchwartz / Gearmanを非常に便利に使っているのですが、いい感じにワーカープロセスを管理したかったので、WorkerManagerなるものを作ってみました。作ったのは実は1年以上前なのですが、ようやくの公開です。 基は、Apacheのpreforkモデルを踏襲しています。特徴は、 子プロセスを複数起動させて、ジョブを並列実行 一定回数のジョブを実行したら、子プロセスを再作成 クラスを定義するのみでジョブを実行 TheSchwartz / Gearmanの切り替えを最低限の変更で実現 ワーカープロセスの安全な停止(プロセス停止の際に、実行中のジョブの終了後に終了) ジョブの実行時のタイムスタンプをジョブ投入からの遅延をログに保存 というあたりです。preforkモデルなので、あまりモダンな設計ではないですが、gdbでのデバッグの容

    TheSchwartz / Gearman のワーカープロセス管理WorkerManager - stanaka's blog
  • CPANモジュールをスクリプト一発で依存解決しつつrpm化する - とあるはてな社員の日記

    少し前にmizzyさんに そういえば、まっさらなサーバを30分で番投入できるようにする で stanaka さんが「CPANの依存関係を解析してrpm化する手製スクリプトで、CPANモジュールのrpm化が、ほぼ自動化されています」と書いてるんだけど、これって公開してくれないのかなー。 HowToRpmizeCpanModules - mizzy.org - Trac と突かれたので、githubで公開してみます。 http://github.com/stanaka/cpan-dependency/tree/master 突かれたついでにmizzyさんに軽く動作確認してもらったところ、それなりに動いているようです。また、はてなでは、このスクリプトを利用して、日々それなりの数のCPANモジュールのrpm化を行っていますので、だいたいうまく動くのではないかと思います。 CentOSやFedor

    CPANモジュールをスクリプト一発で依存解決しつつrpm化する - とあるはてな社員の日記
  • Perlプログラマのためのgdb入門(at Shibuya.pm #9 LT) - とあるはてな社員の日記

    先日のShibuya.pm #9のLightening Talkで「gdbでXS on mod_perlをデバッグ」という話をしてきました。XSを使い出すと、従来のPerl的デバッグだけでは不十分なのでgdbをうまく使って、効率的にデバッグしましょう、という話です。実は、はてな社内では1年近く前に勉強で話したネタだったのですが、ようやく公開することができました。 Shibuya.pmでは5分という枠があったのでショートver.でしたが、ここでは制限はないので、来のロングバージョンの資料をアップします。ちょっと公開できない情報が混っていたので、xxxで隠していますが、ご了承ください。 ちなみに、Rubyとかでも似た感じでデバッグできると思うので、そちらの人も参考にしてください。長いよ!という人は、最後の「これは設定しておけ的gdb初期化マクロ」だけでもどうぞ。かなり便利です。 (資料公開が

    Perlプログラマのためのgdb入門(at Shibuya.pm #9 LT) - とあるはてな社員の日記
    mattn
    mattn 2008/06/30
  • とあるはてな社員の日記 - まっさらなサーバを30分で本番投入できるようにする

    すこし前にはてなスターのリリースがされたのですが、サービス開始直後にありがちなことに、時々負荷で遅くなったり、アクセスしにくくなったりしてしまいました*1。これではいけない、ということで、すぐ次の日に、バックエンドのサーバを一気に10台近くまで増やして、おおむね快適に使える状態になっていると思います。この時に、新しいサーバをまっさらな状態から、だいたい30分程度で番投入することができていました。これを、どのように実現したのかを軽く紹介したいと思います。 ちなみに、サービスの重さは、サーバ増強だけで済むものではなく、それ以降も、Javascriptが重い!とか、アプリケーションロジックで重いSQL を走らせてしまって遅いという問題は何回かありました。が、そこはインフラではなく、アプリケーションの問題で、アプリケーションの改善は、継続的に進んでいると思います。ので、今回は、インフラの話に限定

    とあるはてな社員の日記 - まっさらなサーバを30分で本番投入できるようにする
  • 1