タグ

ブックマーク / qiita.com/cubicdaiya (6)

  • keepalive_requests in upstream context - Qiita

    先日、某所のnginxを1.14系から1.16系に更新したところ、レスポンスタイムが悪化する現象に遭遇したので、その時の対処記録。以下は99percentileと95percentileでのレイテンシのグラフ。 99percentile latency 95percentile latency nginxのバージョンアップでレスポンスタイムが悪化するのを経験したのは初めてのことだったのですが、いろいろ調べてみるとアップストリームサーバとのキープアライブに関する挙動が大きく変わったのが原因で、そのへんのディレクティブの値をちょいと調整することで元のレスポンスタイムを維持できるようになりました。 nginxの1.16系と1.14系の大きな違いの一つとしてkeepalive_requestsディレクティブが従来のhttp, server, locationコンテキストに加えてupstreamコン

    keepalive_requests in upstream context - Qiita
    mattn
    mattn 2019/08/16
    おぉ、モロにヒットしてた。ありがとうございます。。。
  • go-bindataで実行バイナリにWeb UIをバンドルする〜slackboardの場合〜 - Qiita

    個人的にGoはミドルウェアやコマンドラインツールの開発によく利用していますが、その理由の一つにシングルバイナリなのでデプロイが楽、というのがあります。一方で、(特に)サーバ系のミドルウェアだとちょっとしたWeb UIを付けたくなることがあります。こうなると、シングルバイナリのほかにHTMLCSSJavaScriptといったリソースファイルが多数付いてくるのでちょっと面倒です。 そこでgo-bindataを使って実行バイナリにそれらのリソースファイルをくっつけてしまうという方法があります。go-bindataは各リソースファイルの内容をGoのコードとして生成し、Asset()という関数を呼び出すことで内容を取得することができます。 go-bindataによるコード生成 まずは、go-bindataをインストールします。

    go-bindataで実行バイナリにWeb UIをバンドルする〜slackboardの場合〜 - Qiita
    mattn
    mattn 2016/12/05
  • gonp〜Goによるdiffのアルゴリズム実装〜 - Qiita

    この記事は、2015年のGo Advent Calendarの25日目の記事です。 Go Advent Calendarのその2とその3ができる前、最終日だけ空いてて滑り込みで登録したのはいいけど、なんかネタないかなーと思いつつ、自分のgithubリポジトリを漁っていたらdiffのアルゴリズムをGoで実装したやつが出てきたので紹介してみます。 gonp〜Goによるdiffのアルゴリズム実装〜 gonpはGoによるdiffのアルゴリズム実装です。元々は昔々C++で書いたdtlというdiffライブラリの簡易移植で、diffを取るのに必要な以下の要素を求めることができます。 編集距離(Edit Distance) LCS(Longest Common Subsequence) SES(Shortest Edit Script) diffのアルゴリズムにはさまざまな種類があり、中でもdiffに限ら

    gonp〜Goによるdiffのアルゴリズム実装〜 - Qiita
    mattn
    mattn 2015/12/25
  • ngx_dynamic_upstreamでnginxのアップストリームを動的に変更する - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    ngx_dynamic_upstreamでnginxのアップストリームを動的に変更する - Qiita
    mattn
    mattn 2015/05/21
  • nginxのパラメータチューニングとh2o - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    nginxのパラメータチューニングとh2o - Qiita
    mattn
    mattn 2015/04/26
    一定サイズ以下ならLRUでコンテンツキャッシュしてしまうとか。
  • Goサーバのモニタリング - Qiita

    5日目担当の@cubicdaiyaです。先月末のGoConではGoのカンファレンスなのにほぼnginxをビルドする話しかしてなかったので今日はちゃんとGoの話をします。 Goで書くサーバプログラム Goではサーバプログラムを書くためのユーティリティが豊富に揃ってる上に、ゴルーチンやチャネルを利用することで高いパフォーマンスが要求される環境でも十分な性能を発揮することができます。いつだったか「あれはHTTPサーバ書くための言語ですよ」なんて話をとあるエンジニアから聞いたことがあるくらいです。 例えば「Hello, World!」を返すだけのHTTPサーバであれば標準ライブラリのnet/httpを利用することで以下のように書くことが出来ます。 package main import ( "fmt" "net/http" ) func handler(w http.ResponseWriter,

    Goサーバのモニタリング - Qiita
    mattn
    mattn 2014/12/05
  • 1