10/31/2006

Gentoo 安裝 Ruby on Rails + Lighttpd + fastcgi

相比起FreeBSD,Gentoo 安裝 Ruby on Rails 雖然沒那麼方便,但是 Gentoo 也可以相當迅速的安裝 Ruby on Rails +Lighttpd + Fastcgi ,不過要多下幾個參數就是了。

1. 安裝 Lighttpd + fastcgi
USE="fastcgi" emerge lighttpd

2. 安裝 Ruby + Ruby on Rails + Ruby Gems + Fastcgi + Ruby Fastcgi + MySQL Binding + SQLite3 Binding(一次裝好多)
USE="fastcgi mysql sqlite3" emerge rails
他會一次安裝
[ebuild U ] dev-lang/ruby-1.8.5
[ebuild N ] dev-ruby/rubygems-0.8.11-r5
[ebuild N ] dev-ruby/rake-0.7.1
[ebuild N ] dev-ruby/activesupport-1.3.1
[ebuild N ] dev-ruby/activerecord-1.14.4
[ebuild N ] dev-ruby/actionpack-1.12.5
[ebuild N ] dev-ruby/actionmailer-1.2.5
[ebuild N ] dev-libs/fcgi-2.4.0 457 kB
[ebuild N ] dev-ruby/ruby-fcgi-0.8.6
[ebuild N ] dev-ruby/mysql-ruby-2.7
[ebuild N ] dev-ruby/sqlite3-ruby-1.1.0
[ebuild N ] dev-ruby/actionwebservice-1.1.6
[ebuild N ] dev-ruby/rails-1.1.6

如果你希望個別安裝,可以照上面的相關的 Package 用 Gentoo 的 Portage 系統安裝。紅色的是 Ruby on Rails 相關套件,藍色的是 fastcgi 相關套件,棕色的是 Database 相關套件。

3. 安裝 Mongrel
Portage 沒有 Mongrel 的套件,但是剛剛已經安裝了 rubygems ,所以我們可以很簡單的使用
gem i mongrel mongrel_cluster
來安裝 Mongrel

10/30/2006

Mongrel 新的安全漏洞

問題
根據這篇Mongrel Denial of Service vulnerability
There is a denial of service vulnerability for Ruby applications that either use cgi.rb, or run on Mongrel or Litespeed.
也就是說,所有使用 cgi.rb,Mongrel ,LiteSpeed 都會糟 DOS 攻擊(最近DOS這個東西很敏感XD),最慘的情況會遭致 Ruby 消耗 99% CPU 的無窮迴圈。

解法
gem install mongrel --source=http://mongrel.rubyforge.org/releases


參考連結:
  1. Mongrel Denial of Service vulnerability
  2. 新的安全漏洞,mongrel DOS

FreeBSD 6.1 安裝 Ruby on Rails

FreeBSD 之極速傳說:

FreeBSD 其實安裝 Ruby on Rails 相當的快速,根據 Rails on FreeBSD 這篇,直接下達
cd /usr/ports/www/rubygem-rails
make install clean
就會安裝好 ruby , ruby-fcgi,memcache-client 跟 MySQL ,PQSQL ,SQLite 的 support ,真是太可怕的速度了:)

或是你可以使用老牌 Ruby 程式 PortInstall 來安裝 Rails ,Portinstall 是依附在 portupgrade 裡面的一支 Ruby 程式,專門幫你安裝套件。
portinstall -P rubygem-rails

以下是詳細的安裝方式

1. 安裝 Ruby
cd /usr/ports/lang/ruby18
make install clean

2. 安裝Ruby Gems
cd /usr/ports/devel/ruby-gems
make install clean

3. 安裝 fast-cgi
cd /usr/ports/www/fcgi
make install clean

4. 安裝 Ruby Fastcgi Lib
cd /usr/ports/www/ruby-fcgi
make install clean

5. 安裝 Ruby on Rails
cd /usr/ports/www/rubygem-rails
make install clean
PS. ruby fsatcgi 請用 port 安裝,用 gem 安裝會失敗。

TIOBE 排名(舊紀錄)

出自邵东好Blog以及 RIS,僅當作紀錄。

2006/5( Ruby 剛進入 20名)

Position
May 2006
Position
May 2005
Delta
in Position
Programming Language Ratings
May 2006
Delta
May 2005
Status
1 2 Java 21.316% +3.92% A
2 1 C 17.690% -0.83% A
3 4 C++ 10.935% +1.03% A
4 5 PHP 10.220% +1.02% A
5 6 (Visual) Basic 9.564% +1.93% A
6 3 Perl 6.050% -4.53% A
7 7 C# 3.271% +0.50% A
8 8 Python 3.042% +0.56% A
9 11 JavaScript 2.191% +0.75% A
10 9 Delphi/Kylix 1.766% -0.48% A
11 12 SAS 1.479% +0.14% A
12 10 PL/SQL 1.011% -0.64% A
13 33 20 * Visual FoxPro 1.002% +0.72% A-
14 15 Lisp/Scheme 0.893% +0.08% A-
15 14 COBOL 0.664% -0.32% B
16 25 9 * ColdFusion 0.509% +0.14% B
17 28 11 * VB.NET 0.508% +0.17% B
18 18 Ada 0.488% -0.19% B
19 27 8 * D 0.478% +0.13% B
20 30 10 * Ruby 0.456% +0.14% B


2006/6

Position
June 2006
Position
June 2005
Delta
in Position
Programming Language Ratings
June 2006
Delta
June 2005
Status
1 2 Java 21.128% +2.56% A
2 1 C 18.253% -1.11% A
3 4 C++ 10.670% +0.95% A
4 6 (Visual) Basic 10.185% +3.41% A
5 5 PHP 9.593% +1.62% A
6 3 Perl 6.002% -4.37% A
7 8 Python 3.464% +0.66% A
8 9 C# 3.238% +0.45% A
9 7 Delphi 2.393% -0.50% A
10 10 JavaScript 1.456% +0.07% A
11 14 SAS 1.373% +0.28% A
12 24 12 * Visual FoxPro 1.036% +0.66% A
13 11 PL/SQL 0.959% -0.37% A
14 12 COBOL 0.650% -0.73% B
15 15 Lisp/Scheme 0.644% -0.22% A--
16 18 Ada 0.536% -0.14% B
17 19 Pascal 0.486% +0.00% B
18 26 8 * D 0.485% +0.13% B
19 23 Ruby 0.479% +0.10% B
20 31 11 * ColdFusion 0.453% +0.18% B


2006/7

Position
July 2006
Position
July 2005
Delta
in Position
Programming LanguageRatings
July 2006
Delta
July 2005
Status
1 2 Java 21.853% +2.19% A
2 1 C 17.829% -2.02% A
3 6 (Visual) Basic 10.689% +4.62% A
4 4 PHP 10.350% +1.18% A
5 3 C++ 9.779% -1.28% A
6 5 Perl 5.626% -2.20% A
7 7 C# 3.401% +0.26% A
8 8 Python 3.017% +0.49% A
9 9 JavaScript 2.108% +0.33% A
10 10 Delphi 2.037% +0.30% A
11 12 SAS 1.746% +0.54% A
12 13 PL/SQL 0.956% -0.09% A
13 35 22 * Visual FoxPro 0.868% +0.60% A
14 18 Ada 0.548% -0.20% B
15 15 Lisp/Scheme 0.515% -0.46% B
16 21 Pascal 0.511% -0.04% B
17 30 13 * Ruby 0.506% +0.20% B
18 33 15 * ActionScript 0.484% +0.20% B
19 16 VB.NET 0.477% -0.48% B
20 11 9 * COBOL 0.464% -0.93% B


2006/8

本次
排名
去年
排名
变化趋势编程语言占有率变化幅度等级
11

平衡

Java22.377%+1.17%A
22

平衡

C17.430%-2.04%A
36

上升三位

(Visual) Basic11.195%+3.44%A
43

下降一位

C++10.254%-0.26%A
55

平衡

PHP9.639%+1.77%A
64

下降两位

Perl5.313%-4.57%A
78

上升一位

Python3.071%+0.19%A
87

下降一位

C#2.683%-0.80%A
910

上升一位

Delphi2.162%+0.40%A
109

下降一位

JavaScript2.019%+0.10%A
1111

平衡

SAS1.986%+0.69%A
1213

上升一位

PL/SQL1.151%+0.19%A
1328

上升15位

Ruby0.804%+0.54%A--


2006/9

本次
排名
去年
排名
变化趋势编程语言占有率变化幅度等级
11平衡Java21.532%-0.91%A
22平衡C18.059%-1.10%A
33平衡C++10.753%-0.41%A
46上升 (Visual) Basic10.627%+4.12%A
55平衡PHP9.128%+0.23%A
64下降Perl5.430%-3.84%A
78上升 Python3.144%+0.11%A
87下降 C#2.992%-0.30%A
99平衡JavaScript2.442%+0.67%A
1010平衡Delphi2.105%+0.43%A
1111平衡SAS1.933%+0.63%A
1212平衡PL/SQL1.038%+0.08%A
132714 * 上升 Ruby0.938%+0.65%A-
1414平衡Lisp/Scheme0.649%-0.07%B