タグ

nginxとluaに関するy_uukiのブックマーク (4)

  • cybozu.com のリバースプロキシを nginx にリプレイス - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは。インフラチーム Hazama の深谷です。 デブサミ 2015 で、cybozu.com の自社製リバースプロキシを全面的に再実装した話をしてきました。 今回は、そちらの資料を紹介いたします。 cybozu.com ではお客様ごとに異なるサブドメイン(ex. demo.cybozu.com)を用意しています。サブドメイン方式には、お客様ごとに異なる IP アドレス制限をかけられるとか、Same-Origin-Policy のため安全に JavaScript でカスタマイズができるといった利点があります。 このサブドメインを実現しているのは、従来 Apache で実装されたリバースプロキシでした。しかし、この時の実装はサブドメインごとに異なる VirtualHost を定義する方式で、お客様サブドメインの数に比例して Apache の設定を変更する時間が伸びていくというものでした

    cybozu.com のリバースプロキシを nginx にリプレイス - Cybozu Inside Out | サイボウズエンジニアのブログ
  • 自作でイベント駆動型サーバ作るのツライ問題とlua-nginx-module - NaCl Blog

    何の因果かわかりませんが、お仕事でちょっと賢いリバースプロキシサーバ(以降、RPサーバ)を作る機会が2回ありました。 HTTPヘッダの内容によってプロキシ先のサーバを動的に切り替えるようなものです。 この要件を満たすため、RPサーバには以下のようなプログラムが必要になります。 HTTPヘッダの内容を知るためにHTTPリクエストをパース プロキシ先のサーバへHTTPリクエストをプロキシ プロキシ先のサーバはRedisから取得 レスポンスをクライアントへ返す 大量のリクエストも捌ける 1回目はRubyとI/O多重化のライブラリを使ってイベント駆動型のRPサーバを自作してみました。 が、振り返ってみるとこれは失敗でした。 なぜ失敗だったのか? Rubyでイベント駆動型のサーバを書こうとすると様々なものが途端に大変になります。 イベント駆動型サーバではほとんどの箇所でブロックする処理を書けません。

  • ハイパフォーマンスngx_lua | メルカリエンジニアリング

    Site Reliability Engineering(SRE) Teamの@cubicdaiyaです。 今回は数あるnginxのサードパーティモジュールの中でも一際強力で、メルカリでも活用しているngx_luaの便利な活用方法や最適化集について紹介します。 ngx_luaは軽量スクリプト言語のLuaでnginxを拡張できるモジュールです。 nginxの設定ファイル内にLuaのコードを埋め込んだり、nginxの拡張モジュールをCではなくLuaで開発することができます。以下はngx_luaにおける「Hello, World!」です。 location / { content_by_lua 'ngx.say("Hello, World!")'; } 上記のロケーションにHTTPでアクセスするとnginxはボディが「Hello, World!」のレスポンスを返します。 なお、先月末にリリースさ

    ハイパフォーマンスngx_lua | メルカリエンジニアリング
    y_uuki
    y_uuki 2015/11/26
    興味深い "nginx自身が持つタイマーのキャッシュ"
  • Using ngx_lua / lua-nginx-module in pixiv

    pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)

    Using ngx_lua / lua-nginx-module in pixiv
  • 1