タグ

2015年12月3日のブックマーク (7件)

  • Optimizing performance of multi-tier web applications using HTTP/2 push

    Optimizing performance of multi-tier web applications using HTTP/2 push Push is a feature of HTTP/2, that allows a server to speculatively send response to a client, anticipating that the client will use the response. In my earlier blogpost, I wrote that HTTP/2 push does not have significant effect on web performance when serving static files from a single HTTP/2 server. While that is true, push d

    Optimizing performance of multi-tier web applications using HTTP/2 push
  • Kazuho's Weblog: Performance improvements with HTTP/2 push and server-driven prioritization

    Performance improvements with HTTP/2 push and server-driven prioritization tl;dr HTTP/2 push only marginally improves web-site performance (even when it does). But it might provide better user experience over mobile networks with TCP middleboxes. Introduction Push is an interesting feature of HTTP/2. By using push, HTTP servers can start sending certain asset files that block rendering (e.g. CSS a

    Kazuho's Weblog: Performance improvements with HTTP/2 push and server-driven prioritization
  • type roleについて学ぶ

    Haskell Advent Calendar 2015 の 3日目は、最近 洗濯機 を新調した @hiratara がお送りします。 気が付けばもうクリスマスシーズン、みなさんは今年どのくらいHaskellのコードを書きましたか? 私は最近はGoPerlしか書いてないのですが、今年の夏 レガシーなコードをstackでビルドできるようにする ってことをやっていました。今日はその時に出くわしたあるエラーに関連する話を書きます。 イカ 以下がそのエラーなのですが、これを見てパッと対処法が浮かびますか? src/MO/Run.hs-boot:6:1: Type constructor ‘AnyResponder’ has conflicting definitions in the module and its hs-boot file Main module: type role AnyRe

    type roleについて学ぶ
  • 正格評価と遅延評価(詳細編)

    さて基編に続き詳細編です。 動作を確認しながら細かく見ていきます。 Debug.Trace.trace 初めにtrace関数を導入しておきます。 こんな型の関数です。traceが評価されると、第一引数が標準エラー出力へ出力され、第二引数が返り値として返ります。 このtrace関数が単なる関数だということに注意してください。デバッグ用とはいえ何も魔法は使われていません。IO以外で標準エラー出力へoutputすることから、内部ではunsafeな関数が使われていますが。魔法が使われていない、というのは評価順序に関してです。つまり、trace自体が評価されなければ標準エラー出力への出力もありません。 trace "some string" 42をcaseで評価してみます。 結果は "heyhey!" という文字列が先に現れます。 caseによってtraceは評価され、42がその返り値です。 何が

    正格評価と遅延評価(詳細編)
  • HTTP/2 for the Web Developer

    HTTP/2 for the Web Developer 1. Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ SPRINGONE2GX WASHINGTON, DC HTTP/2 for the web developer By Brian Clozel @brianclozel 2. Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc.

    HTTP/2 for the Web Developer
  • Vim に Gosrc コマンド作った — KaoriYa

    この記事は Vim Advent Calendar 2015 の 1日目の記事です。 Vimgolang サポートは非常に手厚いことで有名です。しかしながら、ちょっと $GOROOT や $GOPATH の下にあるソースコードを探検したいって時に、手軽な良い方法がなくて困ってました。主に私が。 誰か作ってくれないかなぁ (/ω・\)チラッ — MURAOKA Taro (@kaoriya) 2015, 11月 20 誰か作ってくれないかなぁって期待していたんですが、誰もやってくれないようでしたので、自分で koron/vim-gosrc を作りましたよ。ほぼ :Godoc のパクりです。 まぁ実際のところアドベントカレンダー用に用意していた、命のネタの進捗が思わしくなかったのと、Vim script アドベントカレンダー 2015のほうがふさわしそうだったので、急遽ネタをコンバート

    Vim に Gosrc コマンド作った — KaoriYa
  • 業務システムにおけるロールベースアクセス制御 - Qiita

    RBACの基礎 業務システムの権限制御の基形はロールベースアクセスコントロール(RBAC)です。簡単化すると、以下のようなモデルです。 Subject(システムユーザ)は、複数のRole(ロール)を持っている。 Role(ロール)は、Permission(権限)のセットからなる。 Permission(権限)は、オペレーション(許可される操作)のセットからなる 具体的に、Redmineでの例をみてみましょう。 ユーザにはデフォルトで「管理者」「開発者」「報告者」のロールが割当可能である。 「報告者」ロールは、「Add Issues」の権限をもつ。 「Add Issues」の権限をもつユーザは、「Issueの新規作成」ができる。 このモデルをRedmineでは、以下のように表現しています。 Redmineは1人のユーザを、複数のプロジェクトに異なるロールでアサインすることができるので、上記

    業務システムにおけるロールベースアクセス制御 - Qiita