タグ

2016年8月29日のブックマーク (6件)

  • 続、workerパターンをcontext化してみたら…… - okzkメモ

    みなさん「みんなのGo言語」は予約ポチりましたか? 私はポチりました! そんな「みんなのGo言語」の著者の一人であるid:lestrrat さんからの前エントリに対してマサカリが飛んできてます。 workerパターンをcontext化してみたら…… - okzkメモ[golang] context.Contextを揮発性のないものでラップして持つのはよくないと思う。このほうがよりGoっぽいと思うが、どうだろう https://gist.github.com/lestrrat/c9b78369cf9b9c5d9b0c909ed1e2452e2016/08/23 18:34 コメント内のgistのリンクはこちら ちょっと時間あいちゃいましたけど、これについて思ったことを2点ほど…… まずはcontext関係ないとこから…… contextの使い方へのツッコミなのにいきなりcontextとは無関

    続、workerパターンをcontext化してみたら…… - okzkメモ
    Kiske
    Kiske 2016/08/29
  • Re: golang の channel を使って Dispatcher-Worker を作り goroutine 爆発させないようにする - okzkメモ

    こちらを読みました。 blog.kaneshin.co channel自体にdispatch機構があるからもっとシンプルに書けるのでは?と思って書き直したのがこちら。 コードだけぶん投げてもアレなので、あとで解説書きます。 ついでに「go1.7で標準化されたcontext使ったらどうなるか」も気力次第で書くかもしれません。 というわけで追記というか、編というか、解説です。 channel整理 元のコードを読んでいくと、 dispatcherのqueueにjobを突っ込む dispatcherがidle状態のworkerをpoolから取り出す 同じ行で取り出したworkerのqueueにjobを渡す workerがjobを受け取って処理する。 というカンジの処理の流れになってるんですが、dispatch機構自体がchannelにはあるので、 dispatcherのqueueにjobを突っ込

    Re: golang の channel を使って Dispatcher-Worker を作り goroutine 爆発させないようにする - okzkメモ
    Kiske
    Kiske 2016/08/29
  • Ruby 2.4.0 で導入予定の Integer Unification まとめ, 夏休みで北海道へ - HsbtDiary(2016-08-29)

    Ruby 2.4.0 で導入予定の Integer Unification まとめ Ruby 2.4.0 で導入が予定されている Integer Unification が与えるであろう Ruby アプリケーションへの影響をまとめておく。 率直には rb_cFixnum や rb_cBignum が 2.4 からは見えなくなるので、それらを参照しているような native gem が対応していなければビルドできないためアプリケーションが動かなくなる。じゃあ、対応したバージョンに全てバージョンアップすればいいじゃん、という話なのだけど bundler が解決してくれる dependency 沼と絡み合って、単純には解決できずに 8 月現在は厳しい状態になっている。 json は Rubybundle している�バージョンですでに Integer Unification 対応がなされ

    Ruby 2.4.0 で導入予定の Integer Unification まとめ, 夏休みで北海道へ - HsbtDiary(2016-08-29)
    Kiske
    Kiske 2016/08/29
    ほんとつらそう
  • Elasticsearch を 1.7.5 から 2.3.5 へ移行しました | カメリオ開発者ブログ

    白ヤギの開発者の森です。 白ヤギではニュース記事のキュレーションをする カメリオ API というサービスを開発していますが、検索バックエンドとして Elasticsearch を使っています。 カメリオ API は約1年3ヶ月前に開発を始めたのですが、当時は 1.7 系を使っていました。昨年の夏から秋ごろにかけて 2.0.0 のベータ版がリリースされ、2015-10-28 に GA がリリースされました。現時点の最新バージョン (安定版) は 2.3.5 になります。 Elasticsearch 2.0.0リリース(日語訳) Elasticsearch 1.x と 2.x は非互換となるため、検索インデックスやアプリケーションの変更なしに移行することはできません。2.0.0 リリース後の翌日に早速 ITS にチケットを作りました。その後どうなったかというと、いまこの記事を書いていること

    Elasticsearch を 1.7.5 から 2.3.5 へ移行しました | カメリオ開発者ブログ
  • コードレビューのポイント

    すこし古いけどこちらを読んだ。 pull request を利用した開発ワークフロー // Speaker Deck 非常にわかりやすく読ませてもらったが、筋とはちょっとずれるレビューの勘所の話がとても面白く参考になった。 レビューコメントにラベルをつける [MUST] 問題があり、必ず治す [IMO] 意見、緩やかな指摘。自分ならこう書くけどどう? [nits] ほんの小さな指摘。インデントやタイポ たしかに普段のコードレビューでも、特に意識せずこれらは使い分けていた。こうしてラベルとして明示することでレビュイーに意図が伝わりやすい。レビュアーもこうした観点からレビューを行える。なによりレビュアー・レビュイー双方にとって明確に、指摘事項に優先順位がつけられる。こうすることでレビューとその後のアクションをよりスムーズにすすめる手助けになっている。 いいレビューとだめなレビューというものは

    コードレビューのポイント
    Kiske
    Kiske 2016/08/29
  • Bash Infinity Framework - シェルスクリプトの概念をはるかに超えるモダンなフレームワーク | ソフトアンテナ

    UNIXやMacを使用しているユーザーならば誰でも一度はシェルスクリプトを作成した経験があると思います。どんな環境でも使い回せるポータビリティの高さが魅力ですが、プログラミング言語としてみると独特な部分が多く、なんとなく苦手意識を持っている方も多いかもしれません。 日紹介する「Bash Infinity Framework」はそんなシェルスクリプトの概念を完全に変えてしまうBash用のフレームワークです。 モジュラーかつ軽量で、C#やJavaJavaScriptといった他の言語のコンセプトを取り入れ、プラグ&プレイで必要な機能だけを追加していける特徴を持っています。 主な特徴は以下の通りです: 自動エラーハンドリング 名前付きパラメータ($1、$2ではなくて) 配列とマップをパラメータとして引き渡せる try-catchの実装 独自例外のthrow キーワードのインポート 出力を改善す

    Bash Infinity Framework - シェルスクリプトの概念をはるかに超えるモダンなフレームワーク | ソフトアンテナ
    Kiske
    Kiske 2016/08/29