タグ

2014年9月21日のブックマーク (5件)

  • Varnishに関していろいろ調べて試してみた

    1. Varnishとは Varnishはリバースプロキシを提供するためのミドルウェアである。Varnishを導入することで、Readが多いアプリケーションサーバーの前に設置することで、レスポンスの向上や、アプリケーションサーバーの負荷軽減が見込まれる。また、キャッシュの破棄等も明確に設定できるのが嬉しい。 Varnish 2.Varnishサーバーの構築 2.1.Varnishのインストール CentOS系のAmazonLinuxを使ってVanish環境を構築してみる Red Hat Enterprise Linux 6.4 - ami-5769f956 (64-bit) / ami-bb68f8ba (32-bit) Red Hat Enterprise Linux version 6.4, EBS-boot. $ sudo rpm --nosignature -i http://re

    Varnishに関していろいろ調べて試してみた
  • memcacheのstatsコマンドメモ - taka512's blog

    有効期限前のデータがmemcacheから追い出されていたのでその時のメモ 容量が怪しそうなのでstatsでデータを見てみると $ telnet localhost 11211 Trying 127.0.0.1... Connected to localhost.localdomain (127.0.0.1). Escape character is '^]'. stats 結果を眺めると・・・・ 最初、「bytes」の項目が容量に近かったので容量一杯と判断したが 実はmemcacheは確保したメモリを開放するわけではないので この値で容量が一杯とは判断できないらしい。 (もしかしたら有効期限切れのデータが詰まっているかもしれないので) で、見るべきところは「evictions」の項目で有効期限に達してないデータが memcacheより追い出されたらここの値が増える。 で、原因はやはりmem

    memcacheのstatsコマンドメモ - taka512's blog
  • Go の並行処理 - Block Rockin’ Codes

    intro 先日の Go のカンファレンス GoCon で、 Go の並行処理周りについて発表させて頂きました。 Go Conference 2013 spring - connpass 具体的には Goroutine や Channel の話ですが、これらの機能は結構面白くて、いじって遊んでるだけでもわくわくします。 Go の並行処理は、設計方針がわりと特殊だと思うのですが、設計がシンプルなので分かるとそこまで難しくはないです。 (使いこなすのは、経験が必要そうですが) 今回話すにあたって色々調べましたが、発表時間の都合上省いたものもあるし、質疑応答で聞かれて応えられなかったこともあるので、 ここでまとめて置こうと思います。 発表資料 今回の発表資料はこちらです。 このブログの内容は、これをベースにします。 http://jxck.node-ninja.com/slides/gocon-

    Go の並行処理 - Block Rockin’ Codes
  • [Go言語] database/sqlパッケージを使ってみた - Qiita

    cnn := sql.Open("mysql", "user:password@tcp(host:port)/dbname") 1レコードをSELECTしてみる QueryRowメソッドを使えば、1レコード分を取得できる。 Go言語得意のポイントを渡して、出力引数で受け取る。 id := 100 var name string if err := cnn.QueryRow("SELECT name FROM person WHERE id = ?LIMIT 1", id).Scan(&name); err != nil { log.Fatal(err) } fmt.Println(id, name)

    [Go言語] database/sqlパッケージを使ってみた - Qiita
  • GROUP BY を使用せずに HAVING を使う - Qiita

    例えば下記のように複雑な条件に基づいてレコードを抽出する場合、WHERE を使うと残念なことになります。 SELECT T.id, ( CASE WHEN /*難解極まりない条件1*/ false THEN 1 WHEN /*難解極まりない条件2*/ false THEN 2 WHEN /*難解極まりない条件3*/ false THEN 3 ELSE 0 END ) AS stat FROM tbl T WHERE ( CASE WHEN /*難解極まりない条件1*/ false THEN 1 WHEN /*難解極まりない条件2*/ false THEN 2 WHEN /*難解極まりない条件3*/ false THEN 3 ELSE 0 END ) = 2 とても保守性が低いと思います。 WHERE を無くして stat を使用してアプリケーションレイヤーで絞り込むことも出来ますが、そうす

    GROUP BY を使用せずに HAVING を使う - Qiita
    lxyuma
    lxyuma 2014/09/21