Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
mruby_nginx_module
∼ Embedded mruby into Nginx ∼
久保 達彦
cubicdaiya@gmail.com
13年9月21日土曜日
自己紹介
✦ 久保 達彦(H.N:bokko)
✦ @cubicdaiya(twitter, github)
✦ ピクシブでエンジニアやってます
13年9月21日土曜日
最近はNginxのモジュール開発に凝ってます
✦ mruby_nginx_module
✦ Embed mruby into Nginx
✦ ngx_small_light
✦ Dynamic Image Transformation for ...
WEB+DBでもNginxの記事を書きました
WEB+DB PRESS Vol.72
□詳解nginx
設定の柔軟性と
優れたスケーラビリティ
□共著者
@harukasan
@semind
13年9月21日土曜日
WEB+DBでもNginxの記事を書きました
WEB+DB PRESS Vol.72
□詳解nginx
設定の柔軟性と
優れたスケーラビリティ
□共著者
@harukasan
@semind
13年9月21日土曜日
読者の声
13年9月21日土曜日
13年9月21日土曜日
( ゚д゚)ヒィィィィ
13年9月21日土曜日
13年9月21日土曜日
ごめんなさい
ごめんなさい
ごめんなさい
........................
13年9月21日土曜日
13年9月21日土曜日
最終的には、
13年9月21日土曜日
とあるpixivを支えるインフラエンジニア
13年9月21日土曜日
それから月日は流れ...
✦ pixivのnginx.confはまだまだ増えてる
✦ lua_nginx_module導入&運用中
✦ @harukasan++
✦ OpenResty最強
13年9月21日土曜日
一方自分は・・・
13年9月21日土曜日
ngx_mrubyにPull request送っていた(5∼60件くらい)
13年9月21日土曜日
現在、
13年9月21日土曜日
mruby_nginx_module
✦ nginx.confでmrubyが書ける
✦ Nginxのモジュールがmrubyで書ける
✦ ngx_mrubyからfork by bokko
✦ 鋭意開発中
✦ https://github.com/...
mruby
✦ 軽量Ruby
✦ 組み込み分野向けにまつもとゆきひろ氏が開発
✦ Cと連携しやすいように設計されてる
✦ リッチなLuaというイメージ
13年9月21日土曜日
Hello, World!
13年9月21日土曜日
nginxの変数にset
#=> 55
13年9月21日土曜日
ヘッダ書き換え
# 本来はtext/html
13年9月21日土曜日
各処理フェーズでデータ共有
13年9月21日土曜日
(mod|ngx)_access_token
っぽいアクセス認証
13年9月21日土曜日
(mod|ngx)_access_token
✦ S3のクエリ文字列認証っぽい機能を提供
✦ 特定のアクセストークンに基づいた認証
✦ リソースの有効期限設定
✦ mod_access_token
✦ livedoor(現NHN Japan)が...
xxx_access_tokenの認証方式
以下のパラメータをリクエストURLに付加する
・AccessKey -> 公開 文字列
・Expires -> 有効期限(エポック値)
・Signature -> シグネチャ
Text = Metho...
ngx_access_token
with mruby_nginx_module
13年9月21日土曜日
今のところ使える機能
✦ 中間コードキャッシュ
✦ 各種ハンドラへのフック(rewrite,access,content,log)
✦ ヘッダおよびボディのフィルタリング
✦ Nginx変数へのアクセス(set & get)
✦ Nginx::...
今後の予定
✦ 正規表現API(Nginx::Regexp)
✦ 共有メモリAPI(Nginx::Shared)
✦ サブリクエストAPI(Nginx::SubRequest)
✦ ノンブロッキングソケットAPI(Nginx::Socket)
...
Upcoming SlideShare
Loading in …5
×

mruby_nginx_module〜Embedded mruby into Nginx〜

2,304 views

Published on

Embedded mruby into Nginx

Published in: Technology
  • Be the first to comment

mruby_nginx_module〜Embedded mruby into Nginx〜

  1. 1. mruby_nginx_module ∼ Embedded mruby into Nginx ∼ 久保 達彦 cubicdaiya@gmail.com 13年9月21日土曜日
  2. 2. 自己紹介 ✦ 久保 達彦(H.N:bokko) ✦ @cubicdaiya(twitter, github) ✦ ピクシブでエンジニアやってます 13年9月21日土曜日
  3. 3. 最近はNginxのモジュール開発に凝ってます ✦ mruby_nginx_module ✦ Embed mruby into Nginx ✦ ngx_small_light ✦ Dynamic Image Transformation for Nginx ✦ ngx_access_token ✦ Porting of mod_access_token into Nginx 13年9月21日土曜日
  4. 4. WEB+DBでもNginxの記事を書きました WEB+DB PRESS Vol.72 □詳解nginx 設定の柔軟性と 優れたスケーラビリティ □共著者 @harukasan @semind 13年9月21日土曜日
  5. 5. WEB+DBでもNginxの記事を書きました WEB+DB PRESS Vol.72 □詳解nginx 設定の柔軟性と 優れたスケーラビリティ □共著者 @harukasan @semind 13年9月21日土曜日
  6. 6. 読者の声 13年9月21日土曜日
  7. 7. 13年9月21日土曜日
  8. 8. ( ゚д゚)ヒィィィィ 13年9月21日土曜日
  9. 9. 13年9月21日土曜日
  10. 10. ごめんなさい ごめんなさい ごめんなさい ........................ 13年9月21日土曜日
  11. 11. 13年9月21日土曜日
  12. 12. 最終的には、 13年9月21日土曜日
  13. 13. とあるpixivを支えるインフラエンジニア 13年9月21日土曜日
  14. 14. それから月日は流れ... ✦ pixivのnginx.confはまだまだ増えてる ✦ lua_nginx_module導入&運用中 ✦ @harukasan++ ✦ OpenResty最強 13年9月21日土曜日
  15. 15. 一方自分は・・・ 13年9月21日土曜日
  16. 16. ngx_mrubyにPull request送っていた(5∼60件くらい) 13年9月21日土曜日
  17. 17. 現在、 13年9月21日土曜日
  18. 18. mruby_nginx_module ✦ nginx.confでmrubyが書ける ✦ Nginxのモジュールがmrubyで書ける ✦ ngx_mrubyからfork by bokko ✦ 鋭意開発中 ✦ https://github.com/cubicdaiya/mruby_nginx_module 13年9月21日土曜日
  19. 19. mruby ✦ 軽量Ruby ✦ 組み込み分野向けにまつもとゆきひろ氏が開発 ✦ Cと連携しやすいように設計されてる ✦ リッチなLuaというイメージ 13年9月21日土曜日
  20. 20. Hello, World! 13年9月21日土曜日
  21. 21. nginxの変数にset #=> 55 13年9月21日土曜日
  22. 22. ヘッダ書き換え # 本来はtext/html 13年9月21日土曜日
  23. 23. 各処理フェーズでデータ共有 13年9月21日土曜日
  24. 24. (mod|ngx)_access_token っぽいアクセス認証 13年9月21日土曜日
  25. 25. (mod|ngx)_access_token ✦ S3のクエリ文字列認証っぽい機能を提供 ✦ 特定のアクセストークンに基づいた認証 ✦ リソースの有効期限設定 ✦ mod_access_token ✦ livedoor(現NHN Japan)が開発 ✦ ngx_access_token ✦ @cubicdaiyaが開発 13年9月21日土曜日
  26. 26. xxx_access_tokenの認証方式 以下のパラメータをリクエストURLに付加する ・AccessKey -> 公開 文字列 ・Expires -> 有効期限(エポック値) ・Signature -> シグネチャ Text = Method + Uri + Expires + AccessKey Signature = Base64(HMAC_SHA1(Text, (※) SecretKey)) (※)秘密 文字列(サーバ側で設定) 13年9月21日土曜日
  27. 27. ngx_access_token with mruby_nginx_module 13年9月21日土曜日
  28. 28. 今のところ使える機能 ✦ 中間コードキャッシュ ✦ 各種ハンドラへのフック(rewrite,access,content,log) ✦ ヘッダおよびボディのフィルタリング ✦ Nginx変数へのアクセス(set & get) ✦ Nginx::(Request|Context|Time|Base64|Digest|etc) 13年9月21日土曜日
  29. 29. 今後の予定 ✦ 正規表現API(Nginx::Regexp) ✦ 共有メモリAPI(Nginx::Shared) ✦ サブリクエストAPI(Nginx::SubRequest) ✦ ノンブロッキングソケットAPI(Nginx::Socket) ✦ etc 13年9月21日土曜日

×