タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

Rackに関するfuyu77のブックマーク (8)

  • Railsのsession周りコードリーディング

    Railssessionがどうやって設定されるのかをコードリーディングをして追ってみました。Railsのバージョンは5.1.4です。 今回はセッションストアにRedis(redis-store)を使ったケースを追ってみます。 ActionController::Metal#sessionはActionDispatch::Request#sessionにdelegateし、Rack::Request::Env#session(Rack::Request::HelpersやRack::Request::Envなどをinclude)を呼び出します。 module Rack class Request module Env def fetch_header(name, &block) @env.fetch(name, &block) end module Helpers def session

  • Rack入門 概念編 (1/3) - Qiita

    RailsやSinatraなどのRuby製Webフレームワークを利用されている方は、Rackというキーワードを一度は目にしたことがあるのではないでしょうか。 よく聞くけど詳しくは知らない、そんなやつがRackです。 今回は自分の知識の整理も兼ねて、Rackとは何ものなのかについて調べたメモを、ここに残します。長かったので、全3回に分割しています。 目次 [記事] Rack入門 概念編(1/3) Rack入門 Rack Application編 (2/3) Rack入門 Rack Middleware編 (3/3) Rackとは何か。ひとことで Webアプリケーションサーバーとアプリケーションを接続するための標準化されたインターフェースのこと Rackとは何か。詳細 Rackの公式リポジトリでは、Rackは以下のように記載されています。 そして、 Supported web servers

    Rack入門 概念編 (1/3) - Qiita
    fuyu77
    fuyu77 2021/02/01
  • Rackとは何か - Qiita

    僕はRackミドルウェアを何個か書いたことがあるけど、この前Rubyを始めたばかりの人に「Rackって何?」って聞かれた時、ちゃんと答えられなかった。 なので、rack/rackは何を実装していて、RailsやSinatraはどのようにRackを利用しているのかについてRack 1.6.4のコードを読みつつ調べてみた。 Rackは、指定したファイルを独自のRuby DSLとして読み込み、DSLで指定した様々なミドルウェア、アプリケーションを組み合わせてWebサーバを立ち上げることができるrackupというコマンドを提供するライブラリである。 Rack::Serverの仕組み rackupコマンドはRack::Server.startしているだけであり、rackupによって立ち上がるWebサーバの挙動を理解するにはRack::Serverの仕組みを知る必要がある。 Rack::Server.

    Rackとは何か - Qiita
    fuyu77
    fuyu77 2021/02/01
  • rails, rack, unicorn or puma, nginx の関係についてちゃんと理解したい - Note

    だいぶメモ書きです。 表題の件、まだ曖昧にしか理解できてない。 ググっても浅い情報しか出てこないし、各ライブラリのソースコードを読んでみたけどどう繋がってるか、それぞれどんな役割を担っているか把握するのムズいなぁ…。 結論 色々調べてここまで分かった。 「クライアント側 nginx <-> puma or unicorn <-> rack <-> rails DB 側」 的な感じ rails(や sinatra)はつまるところ rack の仕様に沿って env(HTTPリクエスト)をもらって [status, headers, body](HTTP レスポンス)を返すだけのプログラムである rack HTTP server としてのインターフェースを提供する。 #call とか。 Rackとは何か - Qiita rails rack アプリケーション。 rack の仕様に沿った #cal

    rails, rack, unicorn or puma, nginx の関係についてちゃんと理解したい - Note
  • Rackの概要、RackミドルウェアとRackアプリケーションの違いについて - woshidan's blog

    この記事はRubyアドベントカレンダーの14日目の記事です。 最近Rackにさわることがあったのでこの記事では Rackの概要 RackミドルウェアとRackアプリケーションの違い についてまとめます。 Rack概要 RackはWebサーバとRuby及びRubyのフレームワークとの間でやりとりをするためのインタフェースを提供するためのライブラリです。 具体的にはRackは Webサーバに来たリクエストを決まったキーを持つハッシュに加工し *1 、そのハッシュを引数にしてRubyで動いているアプリケーションのプログラムを呼び出す Rubyのアプリケーションから受け取る['200', {'Content-Type' => 'text/html'}, ['A barebones rack app.']] のような形式の配列を加工して、Webサーバが扱う変数に代入する のはたらきをする Rack

    Rackの概要、RackミドルウェアとRackアプリケーションの違いについて - woshidan's blog
    fuyu77
    fuyu77 2020/06/19
  • Rack入門 Rack Middleware編 (3/3) - Qiita

    前回 は、Rackのプロトコルを理解するために簡単なアプリを作りました。 今回はRackの重要な概念であるRack Middlewareについて学びます。 目次 Rack入門 概念編(1/3) Rack入門 Rack Application編 (2/3) [記事] Rack入門 Rack Middleware編 (3/3) Rack Middlewareとは はじめにややこしいことを言いますが、Rackはミドルウェア(Middleware)です。 アプリサーバーとフレームワーク間のやりとりを仲介しているため、ミドルウェアと呼ばれます。 今回学ぶのはミドルウェアとは何か、ではなくてRack Middlewareについてです。 Rackには以下2つの概念があります。 Rack Application 前回学んだ、callメソッドを持つオブジェクトのことです StatusCode・Header

    Rack入門 Rack Middleware編 (3/3) - Qiita
    fuyu77
    fuyu77 2020/06/19
  • https://www.web-development-kb-ja.site/ja/ruby-on-rails/rack%E3%83%9F%E3%83%89%E3%83%AB%E3%82%A6%E3%82%A7%E3%82%A2%E3%81%A8%E3%81%AF%E4%BD%95%E3%81%A7%E3%81%99%E3%81%8B%EF%BC%9F/968484405/

    fuyu77
    fuyu77 2020/06/19
  • Rails と Rack - Railsガイド

    このガイドはRackのミドルウェア、urlマップ、Rack::BuilderといったRackのプロトコルや概念に関する実用的な知識を身につけていることを前提にしています。 1 Rack入門 Rackは、RubyのWebアプリケーションに対して、モジュール化された最小限のインターフェイスを提供して、インターフェイスを広範囲に使えるようにします。RackはHTTPリクエストとレスポンスを可能なかぎり簡単な方法でラッピングすることで、Webサーバー、Webフレームワーク、その間に位置するソフトウェア(ミドルウェアと呼ばれています)のAPIを1つのメソッド呼び出しの形にまとめます。 Rackに関する解説はこのガイドの範疇を超えてしまいます。Rackに関する基的な知識が不足している場合は、下記のリソース を参照してください。 2 RailsとRack 2.1 RailsアプリケーションのRackオ

    Rails と Rack - Railsガイド
  • 1