11

Tôi đang lên kế hoạch xây dựng một trang web sẽ là một CMS đơn giản, nơi người dùng gửi và xem các bài đăng với video, ảnh và văn bản.Ruby Enterprise Edition vs Ruby 1.9

Một quyết định mà tôi muốn thực hiện là chọn giữa Ruby Enterprise Edition và Ruby 1.9.

Những điều tôi quan tâm theo thứ tự:

  1. Performance & Khả năng mở rộng.
  2. Khả năng tương thích với các dự án mã nguồn mở/bổ sung/mã nguồn mở hiện có.
  3. Tốc độ phát triển và triển khai (Tôi sẽ triển khai trên VPS).

Đề xuất của bạn là gì?

+0

một chuỗi tương tự http://stackoverflow.com/questions/6106907/why-is-mri-the-mainstream-ruby-interpreter-while-it-performs-the-worst –

Trả lời

15

REE từ kinh nghiệm của tôi có xu hướng ném mallocs ở những nơi lẻ (hoàn thành tab tháng 1 năm 2009 trong tập lệnh/bàn điều khiển - https://webrat.lighthouseapp.com/projects/10503/tickets/89-excessive-output-caused-by-and-only-by-running-webrat).

Ruby 1.9.1 có một lỗi lớn trong tempfile mà thổi lên Rack (tháng 8 năm 2009 hiện diện trong patchlevel 243 - http://groups.google.com/group/rack-devel/browse_thread/thread/a2aab3a4720f34c4?pli=1). Cũng như điều này tôi không tin rằng Ruby 1.9.1 đã được thử nghiệm đúng với Rails 2.3.4 (String độc quyền hoặc - https://rails.lighthouseapp.com/projects/8994-ruby-on-rails/tickets/3144-undefined-method-for-string-ror-234).

Khá trung thực, nó phụ thuộc vào việc bạn phản ứng như thế nào với những điều bất ngờ. Tôi sử dụng một bản vá lỗi cũ 1.9.1 trên một máy chủ chạy 2.3.3 và khác với một bản vá trong Net :: HTTP để làm việc với ActiveResource, nó chạy rất nhanh.

Nếu bạn không thích bất ngờ, hãy xem 1.8.7.

Cập nhật 10/10/2010

Câu trả lời cho câu hỏi của tôi là không hợp lệ ngày nay, cả của Ruby EE và 1.9.2 là triển khai rất tốt của Ruby!

Tôi không chắc chắn mình sẽ chọn cái nào, có thể là 1.9.2 - hoặc nói ra những gì các anh chàng đang sử dụng, vì họ đang làm việc trên phiên bản 1.9 của REE - nhưng 1.8. 7 REE là khá vững chắc.

1

đề xuất của tôi là đi 1.9.2 nếu có thể vì 1.9.2 nhanh hơn nhiều so với REE và MRI 1.8.7. Tuy nhiên, hãy nhớ rằng 1.9.2 như MRI 1.8.7 của nó không phải là một phiên bản tối ưu hóa đầy đủ, vì vậy bạn sẽ thấy nhiều RAM được ăn hơn so với REE. Nếu bạn chưa thể nâng cấp lên 1.9.2, tôi khuyên bạn nên gắn bó với REE.

Cập nhật: REE vừa sáp nhập tất cả thay đổi từ MRI 1.8.7-p334, vì vậy nó rất tốt và nóng;)

+2

"1.9.2 nhanh hơn nhiều so với REE và MRI 1.8.7 ", xin vui lòng? Gần đây tôi đã chuyển hai ứng dụng của mình sang 1.9.2 từ REE và thời gian phản hồi tăng lên một chút. – gertas

7

Như đã trình bày bởi Phusion họ sẽ không phát triển một phiên bản 1.9 của Ruby Enterprise Edition và tuyên bố kết thúc - Cuộc sống của REE với sự kết thúc của MRI Ruby 1.8. Lý do không phát triển phiên bản 1.9 là

  • Bản vá trên bản sao đã được kiểm tra gần đây vào Ruby 2.0.
  • Nhiều bản vá trong Ruby Enterprise Edition đơn giản là không cần thiết trong 1.9.
  • Chúng tôi muốn tập trung nỗ lực vào Phusion Passenger và các sản phẩm khác. Thay vì làm nhiều việc> kém, chúng tôi muốn làm một vài việc, nhưng làm rất tốt.

Bài đăng đầy đủ có thể đọc được here.

Do đó tôi khuyên bạn nên sử dụng phiên bản hiện tại và ổn định của Ruby 2.0.0 hoặc phiên bản ổn định trước đó Ruby 1.9.3.