basyura's blog

あしたになったらほんきだす。

sinatra

RSS配信してみた

http://basyura.org/rone/ Twitter ユーザを県別に集計している(地味に)んだけど、これの新着ユーザを RSS で配信するようにしてみた。RSS を取得して中身を見るのは何回かやったことあるんだけど、自分で生成するのは始めて。差分更新の仕方がよく分からな…

トップ画面まるごとキャッシュした

http://basyura.org/rone/ require でいろいろロードしたり、Sequel で DB につなげたりと cgi で呼び出されるごとに毎回やるのは非常に厳しいので、トップ画面を cache = erb :index // この後 cache を PStore で書き込み // 1 時間おきに cache の作り直…

ROneUsers を作ってみた

Twitter で発言場所導入の話が上がってきてる中、自力で半径 1 クリックの範囲を収集した地域別 Twitter ユーザ数を集計。自分の住んでる地域に近い人を探したい人にぴったり(かもしれないけど、なかなか地方の人にはヒットしない)。特徴 あーるわんゆーざー…

さくらで sinatra

ようやくさくらサーバで sinatra が動いた。情報は探せばすぐ出てくると思うけど自分のまとめ。 sinatra rack 0.9.1 /home/basyura/lib/ruby/gem/gems/rack-0.9.1/lib/rack/request.rb を修正 begin @env["rack.input"].rewind if @env["rack.input"].respon…

views

get '/hello' do erb "hello/index".to_sym end とすれば、サブディレクトリのテンプレートを見てくれる。

cgi でようやく動かせた・・・

sinatra 1.0.0 rack 1.0.0だと Errno:ESPIPE の対処法が見あたらず・・・ require 'rubygems' gem 'rack' , '0.9.1' require 'sinatra' として、rack の 0.9.1 を入れ直してソースを触った(Errno::ESPIPE発生箇所を rescue)上でなんとか動作・・・。