mruby_nginx_module〜Embedded mruby into Nginx〜

2,038 views
1,857 views

Published on

Embedded mruby into Nginx

Published in: Technology
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,038
On SlideShare
0
From Embeds
0
Number of Embeds
83
Actions
Shares
0
Downloads
10
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide

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日土曜日

×