루비는 왜 느린 것으로 간주됩니까?
Ruby와 다른 언어간에 일반적인 벤치 마크를 실행하면 Ruby가 손실됩니다.
루비가 느리다는 것을 알지 못하지만 다시 간단한 CRUD 앱과 회사 블로그를 만드는 데 사용하고 있습니다. 루비가 느려지기 전에 어떤 종류의 프로젝트를해야합니까? 아니면이 느려짐이 모든 프로그래밍 언어에 영향을 미치는 것입니까?
루비는 아마도 실시간 디지털 신호 처리 응용 프로그램이나 모든 종류의 실시간 제어 시스템을 작성하는 데 도움이되지 않을 것입니다. 루비 (오늘날 VM과 함께)는 아마도 스마트 폰과 같은 리소스가 제한된 컴퓨터에서 질식 할 것입니다.
웹 응용 프로그램의 많은 처리는 실제로 C로 개발 된 소프트웨어에 의해 수행됩니다. Apache, Thin, Nginx, SQLite, MySQL, PostgreSQL, 많은 파싱 라이브러리, RMagick, TCP / IP 등은 Ruby에서 사용하는 C 프로그램입니다. . 루비는 접착제와 비즈니스 로직을 제공합니다.
이 "느림"을 처리하려면 Ruby 프로그래머가 선택할 수있는 옵션은 무엇입니까?
더 빠른 언어로 전환하십시오. 그러나 비용이 든다. 그만한 가치가있는 비용입니다. 그러나 대부분의 웹 응용 프로그램의 경우 언어 선택은 관련 요소가 아닙니다. 개발에 더 많은 비용이 드는 더 빠른 언어를 사용하는 트래픽이 충분하지 않기 때문입니다.
속도가 중요하고 트래픽이 많은 스택 오버플로와 같은 응용 프로그램에 가장 적합한 Ruby 버전은 무엇입니까?
JRuby, IronRuby, REE는 VM을 감당할 수있는 플랫폼에서 애플리케이션의 루비 부분을 더 빨리 실행하게 할 것입니다. 느리게하는 것은 Ruby가 아니지만 컴퓨터 시스템 아키텍처 및 애플리케이션 아키텍처이므로 데이터베이스 복제, 다중 애플리케이션 서버, 리버스 프록시를 사용한로드 밸런싱, HTTP 캐싱, memcache, Ajax, 클라이언트 측 캐싱 등과 같은 작업을 수행 할 수 있습니다. 루비가 아닙니다.
마지막으로, Ruby 2.0에 관한 뉴스를 많이 찾을 수 없습니다. 그로부터 몇 년이 지났다고 생각합니까?
대부분의 사람들은 Ruby 1.9.1을 기다리고 있습니다. JRuby의 Ruby 1.9.1에서 Rails 3.1을 기다리고 있습니다.
마지막으로 많은 개발자들이 다른 언어에 비해 프로그래밍을보다 즐겁게 경험할 수 있고 Ruby with Rails를 통해 숙련 된 웹 개발자가 응용 프로그램을 매우 빠르게 개발할 수 있기 때문에 Ruby를 선택한다는 사실을 기억하십시오.