You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
Rubyを書いていると、サーバを書きたくなることがあります。皆さんもそうだと思います。 ということで今日はRubyでスッとサーバを書くためのgem、serverengineの簡単な使い方メモ。 github.com Rubyでサーバを書きたくなった時 そもそも的に、Rubyでただサーバを書くのは非常に簡単である。具体的には Kernel#loop などを回してその中でリクエストを待ったり、何かしら処理を行えば終わり。特別なgemは必要ないし、TCPを扱うクラスなども組み込みで用意されている。 以下のような9行のスクリプトを起動すれば、サーバを書いたと言える。ところで TCPServer#accept_nonblockでないと、acceptでブロックしてしまって終了処理が遅れたりするのでノンブロッキングの方のAPIを好んで使うのがいいだろう。 require 'socket' server
This document discusses Rhebok, a high performance Rack handler written in Ruby. Rhebok uses a prefork architecture for concurrency and achieves 1.5-2x better performance than Unicorn. It implements efficient network I/O using techniques like IO timeouts, TCP_NODELAY, and writev(). Rhebok also uses the ultra-fast PicoHTTPParser for HTTP request parsing. The document provides an overview of Rhebok,
unicornのwokerのbusy数とidle数の比率がわからなくて、うっかりworkerが枯渇して大変なことになったので、workerの状況を返すエンドポイントを追加するrackミドルウェアを書いています。 github.com ぶっちゃけkazeburoさんのPlack-Middleware-ServerStatus-Liteのruby版です。 github.com この中で使っているkazuhoさん製のParallel-Scoreboardも移植しました。(まだREADMEがない。。。) github.com 元は下記です。 github.com Kazuho@Cybozu Labs: Parallel::Scoreboard でワーカープロセスをモニタリングする方法 使い方 config.ruに下記の用に書く。 # In config.ru use Rack::ServerSta
rubocop のしつけ方 TL;DR rubocop --auto-gen-config して Offense count の多い順に毎日数個ずつ設定を確認したら 僕の使っている .rubocop.yml ができました これが onkcop か…(ゴクリ / “僕の使っている .rubocop.yml” https://t.co/KVryle9SJq — そのっつ (SEO Naotoshi) (@sonots) October 26, 2015 rubocop とは コーディング規約に準拠しているかをチェックする gem です。 https://github.com/bbatsov/rubocop こんなコードに対してかけると def badName if something test end end 以下のような警告をしてくれます。 Offenses: test.rb:1:5: C:
Annotation.md Idobata Gemfile プレゼント tl;dr IdotabaのGemfileは"全プレ"になりました。ご笑納ください。→ Gemfile プレゼントについてのお詫び rebuild.fmのep36でお知らせさせていただきました、Idobataの最新版Gemfileプレゼントをお届けいたします。 過日はIdobata会議01への多数のご参加ありがとうございました。おかげさまで盛況なミートアップとなりました。 (当日会場を提供いただいたEngine Yardさまのブログにて、Idobata会議01当日の様子がまとめられています。ありがとうございます!) さて、肝心のGemfileですが、Engine Yard Cloudのstable-v4スタックでRuby 2.1.2が利用可能になるのを待ちつつ、2.1.2対応をしていたら、Gemfileをお届けするのが
RubyKaigi 2014 talk. Points for *practical* use of metaprogramming in Ruby.
■ [ruby] 最近の rubocop の使い方 rubocop はとても便利だけど eval とか別に知ってて使ってるし、if foo = bar やめろとかまで言われると知ったことかとなってしまうので ~/.rubocop.yaml に下のような内容を書いて動かしている. Lint/Eval: Enabled: false Lint/AssignmentInCondition: Enabled: false あと、「今すぐ直せオラオラ」みたいなやつは Lint/UselessAssignment くらいなので最近は $ rubocop --only Lint/UselessAssignment だけで十分な感じになっている。これでもかなりゴミコードを検出できるので rubocop 素晴らしい。
─質問1─ Ruby製サードパーティライブラリ、要はgemで、何が人気なのかってこと、手っ取り早く知りたいんですけど。 ─回答1─ RubyGems.orgのstatsページを見てください。 ─質問2─ えっ?これだけ?この辺は万年上位で固定でしょ。もうちょっと俺の知らないバラエティに富んだものに出会いたいんだけど。俺、Rails用ないし。 ─回答2─ カテゴリー別ならThe Ruby Toolboxがあります。 The Ruby Toolbox - Terminal Coloring ─質問3─ あんた、俺の質問ちゃんと聞いてるの?カテゴリー別なんて言ってないし。それに、ここのカテゴリーってなんか俺的に信用ないんだよね。取りこぼし多いっていうか..。俺のgem出てこないっていうか..。 ─回答3─ GitHubのTrendingでここ最近の人気リポジトリが分かります。 Trending
24 Dec 2013 Ruby 2.1 is shipping with rb_profile_frames(), a new C-api for fetching ruby backtraces. The api performs no allocations and adds minimal cpu overhead making it ideal for profiling, even in production environments. I've implemented a sampling callstack profiler for 2.1 called stackprof with this API, using techniques popularized by gperftools and @brendangregg. It works remarkably well
最近、fluent-plugin-droongaという分散データストリームエンジンを書いています。その中で、RubyでDSLを実現するときに工夫していることに気づきました。それは、値を設定するときは代入する字面にするということです。代入する字面にするために、グループ化用のオブジェクトを作っていました。 これだけだとどういうことかわからないので、具体例を示しながら説明します。 RubyとDSL Rubyを使っているとRubyで実現されたDSLに触れることが多くあります。RubyのMake実装であるRakeの設定ファイルもそうですし、ライブラリー管理ツールのBundlerの設定ファイルもそうです。 Rakeの場合:
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く