Railsがサーバとして起動しているか判定する

ごく希に、RakeタスクとしてのRailsの処理と、サーバとしてのRailsの処理を分けたいことがあって、以下のように判定している。

if defined?(Mongrel) or defined?(WEBrick)
  # サーバとしての処理
else
  # スクリプトとしての処理
end

ひじょーに間抜けなコードだけど、他に良いやり方が思いつかない。
あとは「$0で判定」というのもあるけど、これもなぁ…