タグ

rackに関するgom68のブックマーク (26)

  • マイクロサービス時代を乗り越えるために、Rack::VCRでらくらくアプリケーション間テスト - クックパッド開発者ブログ

    新規アプリケーションの構成 Rack::VCR リクエストの記録 リクエストのモック リクエストの再生 おまけ: Androidアプリのテスト 弊社での利用例 未来 こんにちは、会員事業部の小室 (id:hogelog) です。気づけば弊社に入社してから2年と2ヶ月が経っていました。 今回はその2年2ヶ月で初めて会社プロダクトを rails new したRailsアプリケーションと、そのアプリケーションで利用したRack::VCR (https://github.com/miyagawa/rack-vcr) について簡単に解説します。 新規アプリケーションの構成 今回私が新規に作成したRailsアプリケーションは仮にここではomoikane(仮)と呼ぶことにします。omoikaneはリクエストがあると社内の汎用APIサーバにアクセスし、APIサーバから取得した情報を元にレスポンスを返すアプ

    マイクロサービス時代を乗り越えるために、Rack::VCRでらくらくアプリケーション間テスト - クックパッド開発者ブログ
  • 最近の Rack サーバ事情について - おもしろwebサービス開発日記

    先月、heroku推しサーバが unicorn から puma に変わったという発表がありました。unicorn だとスロークライアントの影響を受けやすいというのが理由なようです。 もう少し詳しく調べてみましょう。 そもそもスロークライアントってなに その名の通り遅い回線のクライアントです。3G環境のモバイル端末などが該当します。 「unicorn だとスロークライアントの影響を受けやすい」とは unicorn はプロセスモデルのサーバであり、blocking I/O モデルを採用しています。つまり、クライアントとの通信中プロセスが専有されるということです。 例えば unicorn がワーカプロセスを3つ立ち上げていて、そこへ通信完了に10分かかるようなスロークライアントが3つ接続されたら…、続くクライアントはスロークライアントの通信が完了するまで実行を待たなければならなくなります。プ

    最近の Rack サーバ事情について - おもしろwebサービス開発日記
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • http://www.func09.com/wordpress/archives/1226

  • Rack::OAuth2 Sample Server - OAuth.jp

    @novです。 OAuth 2.0 draft v.13準拠のRack::OAuth2 version 0.3.0のリリースにあわせて、Rails3でSample Appを作りました。 http://rack-oauth2-sample.heroku.com Facebookアカウントでログインしたら、なんとなくで使い方分かると思います。 Access Token or Authorization Codeを取得した後は、こちらのClient Sampleみたいなのでアクセスしてください。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 re

  • nginxとUnicornでRackアプリを動かす : As Sloth As Possible

    どうやらUnicornというのが良いらしいという噂を聞きつけたので、どんなもんじゃろと試してみることにした。 Route 477 - 大規模Railsサイトのための新しいHTTPサーバ、Unicorn Unicornてのは何者なのかと言うと、Rack及びRailsに対応したRubyのWebアプリ用のHTTPサーバ。詳しくは上の記事を読んで下さい。githubでも使ってるそうだ。あと、名前が格好良い(あんまり関係ない)。 まずはunicornの設定 と言っても、gem install unicornしてconfig.ruがあるディレクトリでunicornコマンドを叩けば、thinとかと同じようにサーバが起動する。rackup互換のオプションも付いてるので特に悩むこともないと思う。あとは普通にApacheとかでプロキシの設定してやるなりなんなりすればすぐ使える。 それだけだと大して面白くないの

    nginxとUnicornでRackアプリを動かす : As Sloth As Possible
  • 第25回 Rackとは何か(3)ミドルウェアのすすめ | gihyo.jp

    前回、前々回の記事では、Rackの生まれた背景、Rackとは何か、実際にRackアプリケーションを作る際に使えるものをご紹介しましたが、もう一つまだ説明していない重要な要素がRackにはあります。今回は、そのミドルウェアという仕組みについてご紹介します。 ミドルウェアとは ミドルウェアとは何かを一言で言うと、「⁠別なアプリケーションをラップして、リクエストやレスポンスを加工したり、処理を切り換えたりするRackアプリケーション」です。 この仕組みがあることで一体何ができるのでしょうか。Webアプリケーションを作っていると、リクエストやレスポンスをアプリケーションに行く前やアプリケーションの処理の後に加工したくなることはよくあります。例えば、条件に応じてURLの書き換えをしたり、エンコーディングの変換をしたり、Cookieの処理をしたり…といったことが日常茶飯事です。こういう処理を、サーバと

    第25回 Rackとは何か(3)ミドルウェアのすすめ | gihyo.jp
    gom68
    gom68 2009/11/17
  • 第24回 Rackとは何か(2)Rackの使い方 | gihyo.jp

    前回の記事では、Rackとは何かについてを、Rackが生まれた背景を交えてご紹介しました。今回は、Rackを実際に使ってみるにはどうすればいいのかを実際に作りながら解説します。 rackupとRack::Builder 前回の記事の最後で、アプリケーションの他にconfig.ruというファイルを用意し、rackupといういうコマンドを使ってアプリケーションを起動しましたが、これについてもう少し詳しく説明したいと思います。 実は、単にRackアプリケーションを起動するためだけであれば、config.ru(rackupファイルと呼びます。拡張子のruはおそらくrackupの略でしょう)は必要ありません。Rackの入門記事等で目にしたことのある方もいるかもしれませんが、以下のようなコードをファイルの末尾に書き加えるとsimple_app.rb単体でアプリケーションを起動することができます。 if

    第24回 Rackとは何か(2)Rackの使い方 | gihyo.jp
  • 第23回 Rackとは何か(1)Rackの生まれた背景 | gihyo.jp

    はじめに SinatraやRamazeといったRubyのWebアプケーションフレームワークに興味をお持ちの方であれば、Rackという名前をしばしば目にしているかもしれません。どうやら様々なフレームワークに使われているらしいのだけど、そいつが一体なんなのかよくわからない、そんなあなたのために今日はそのRackをご紹介したいと思います。 様々なフレームワーク、様々なアプリケーションサーバ しばらく前なら、Ruby on Railsブームの真っ只中、Rubyと言えばRails、Webアプリケーションを作るならRails、といったイメージを持たれていた方も多かったと思います。実際にWebアプリケーションを作ったり、Rubyに触れたりしたきっかけがRailsだったという方も多いでしょう。 しかし最近は、RubyのWebアプケーションフレームワークと一口に言っても、非常に簡単にアプリケーションが書けて

    第23回 Rackとは何か(1)Rackの生まれた背景 | gihyo.jp
    gom68
    gom68 2009/10/26
  • Foxtrot Uniform

    a digital agency

    Foxtrot Uniform
  • Sinatraでshotgunの代わりにRack::Reloaderを使う方法 - Hello, world! - s21g

    もともとSinatraではRack::Reloaderが上手く機能しないのでshotgunを使おうという流れだったのですが、諸般の事情でshotgunを使えない状況になったため、腰を入れてRack::Reloaderを使えるようにする方法を調べました。 結論として、以下のようにすれば使えました。 config.ru 1  configure :development do 2  class Sinatra::Reloader < Rack::Reloader 3  def safe_load(file, mtime, stderr = $stderr) 4  ::Sinatra::Application.reset! 5  use_in_file_templates! file 6  stderr.puts "#{self.class}: reseting routes" 7  supe

  • SinatraでRack::Auth::OpenIDとshotgunの相性が悪い - Hello, world! - s21g

    Sinatraを使ってRack::Auth::OpenID等を使う場合、 shotgunを使って開発をしていると、check_authentication関係のエラーが出てくる事があるようです。 rackupを利用すれば問題は起きないのですが、Sessionがらみの問題でしょうか。shotgunが無いとリロードが結構面倒なので、はやく回避策が見つかると良いです。 See Also remi: remi :: Rack::OpenID

  • 21 Rack Middlewares To Turbocharge Your Ruby Webapps

    Ruby Weekly is a weekly newsletter covering the latest Ruby and Rails news. If you've worked with Web apps using Ruby, you might know of Rack, an interface that sits between Ruby applications and HTTP-speaking Web servers. All of the major Ruby frameworks and server setups use it now, including Rails. Middleware (in Rack) is code that manipulates data going back and forth between your Ruby apps an

    gom68
    gom68 2009/10/17
  • Ruby, Rack and CouchDB = lots of awesomeness « Merbist

    Over the weekend, I spent some time working on a Ruby + Rack +CouchDB project. Three technologies that I know quite well but that I never put to work together at the same time, at least not directly.  Let’s call this Part I. Before we get started, let me introduce each component: Ruby : if you are reading this blog, you more than likely know at least a little bit about, what I consider, one of the

  • Apache2 + Ruby + Rack + mod_passenger (3) - 今日調べたことまとめ

    Ruby, Rack, PassengerApache2 + Ruby + Rack + mod_passenger (1)Apache2 + Ruby + Rack + mod_passenger (2)さて、ここまでで mod_passenger も Rack もインストールされ、Rack の基的な使い方もわかってきていると思います。それでは mod_passenger で動かしてみましょう。 3分で Rack + mod_passengerまずは既存ドメインの下で動かしてみましょう。例えば http://www.example.com/app/ で動くような形です。とはいえ難しいことは何もありません。 # webapps に Web アプリをまとめてると仮定 $ mkdir /webapps/rack_example # 公開用dir 画像やCSSなどの静的コンテンツはここに置く

  • Apache2 + Ruby + Rack + mod_passenger (2) - 今日調べたことまとめ

    Ruby, Rack, PassengerApache2 + Ruby + Rack + mod_passenger (1)Apache2 + Ruby + Rack + mod_passenger (3)一からやる人、生 Rack は Handler でしか使ったこと無い人の為に Rack 自体の説明もしてみます。 Rack とはWebアプリケーションを開発する場合には、フレームワークも動作環境も色々な選択肢があります。たとえばフレームワークは、生開発、Rails、Merb、Ramaze、Camping、Halcyon、Mack などあるし、動作環境は、Apache だけでも CGI、FastCGI、mod_ruby、mod_passenger などなど。ほかにも、lighttpd・Nginx 上の物や、WEBrick、Mongrel もあります。id:takihiroさんの図がわかりや

  • Apache2 + Ruby + Rack + mod_passenger (1) - 今日調べたことまとめ

    Ruby, Rack, Passenger私が作るサービスは大概小粒なので、今まではほぼ Apache2 + Ruby + Rack + FastCGI で動かしていましたが、mod_passenger も Rack でアドホックなサービスを作れるらしい、と知ったので試してみました。ちなみに、Merb とか Ramaze とか Camping とかの Rails 以外のフレームワークを mod_passenger で動かす場合も、どうも mod_passenger + Rack がベースとなっているようなので、知っていて損は無いと思います。 FastCGI vs mod_passenger結論から。比較対象FastCGImod_passenger速度(req/sec)*1900前後1100前後開発の楽さ基的に CGI で開発し FastCGI へ移行。*2 FastCGI の時は err

  • MessagePub.com is for sale | HugeDomains

    Working with hugedomains.com was a quick and easy process. We got to speak to multiple real people located in Colorado without having to wait on hold! Our only complaint was we felt we had to overpay more than this particular domain was worth, and we weren't able to negotiate it down to a level that we felt was fair. However, payment and delivery were seamless, and within a few hours we had all of

    MessagePub.com is for sale | HugeDomains
  • PassengerでRackアプリを動かす : As Sloth As Possible

    昨日のネタではRackで簡単なアプリを作ってそれを複数立ち上げたThinで動かしつつ、表のApacheからmod_proxy_balancerで適当にプロキシしてやるって構成にした。Railsとかでもよくやるので慣れてるし、扱い易いので好きな構成だ。 ただ、今回の遊びでちょっとやってみたかったけことがある。何かというと、Passengerの導入。mod_railsとかmod_rackとか呼ばれてるアレ。スタンドアロンのサーバではなくてApacheやnginxに組み込んで使うタイプで、パフォーマンスもそれなりに良いし使い易いという話を聞いてたので気になってはいた。でもRails使わなくなってからなかなか試してみる機会がなかったので、この際ついでだ、とやってみることにした。 設定は簡単 インストールについてはPassengerのページでも見てもらうとします。別に何のことはない、gemからインス

    PassengerでRackアプリを動かす : As Sloth As Possible
  • Rackを使ってお手軽WebDAV·RackDAV MOONGIFT

    次世代のファイルシステムを語る上で欠かせない(と個人的に思っている)のがWebDAVだ。HTTPを使ってファイルをマウントでき、認証もできる、WindowsのエクスプローラやMac OSXのFinderからも標準で使えるなど汎用性もある。これを使わずに何を使うというのか。 ブラウザからもアクセスできる とは言いつつもいまいち流行りきらないのが実情だ。そんなWebDAVをもっと広めるべく、手軽にWebDAVサーバを立てられるのがRackDAVだ。 今回紹介するオープンソース・ソフトウェアはRackDAV、Rackを使ったRuby製WebDAVサーバだ。 RackはWebサーバとアプリケーション間の問題を吸収してくれるライブラリで、RailsよりももっとシンプルにWebアプリケーションを構築したいという場合に用いられる。そのRackを使って動作するWebDAVサーバがRackDAVだ。 実行ロ

    Rackを使ってお手軽WebDAV·RackDAV MOONGIFT