Rails için yazılım geliştirme ortamı

Merhabalar,

Ne zamandır arkadaşlarım rails için yazılım geliştirme ortamı sorup duruyorlar, aslında ortada çok fazla alternatif olduğu için kafa karışıklığına neden olabiliyor.

Son (bir windows sunucu da host etmek zorunda olduğumuz) projem de redcar + jruby 1.6.3 + rails 3.0.9 + mysql >5 (arabirim olarak mysql workbench) ortamında yazılım geliştirme gerçekleştirdim.

Neden redcar;

  • Netbeans Build-in debugger’ı code-complete özelliÄŸi ile tam bir editör ama 6.9.1’den sonra desteÄŸi yok.
  • Redcar’ın kısa yolları ve “snippet” lerine alışırsanız oldukça hızlı ve efektif ÅŸekilde uygulamanızı geliÅŸtirebilirsiniz.
  • DiÄŸerlerini denemeyin bile :)

Neden MRI deÄŸil de jruby kullandığımı soracak olursanız, cevabı yukarıdaki parantez içerisinde yazdığım küçük cümlecikte saklı. Evet malesef rails için windows üzerinde yüksek TPS deÄŸerlerine eriÅŸebilecek bir sistem kurmak oldukça zor ve problemli. Bu nedenle jruby ile java‘nın bu getirilerinden faydalanmak istedim.

JRuby’nin bu gücünü kullanmak içinde bazı çalışmalarım oldu. GlassFish, Tomcat :) hatta IIS üzerinde koÅŸturup, performans deÄŸerlerini inceledim. Tomcat ve IIS için pek olumlu konuÅŸamayacağım, belki de ayarlarını tam yapamadığım için olabilir ama GlassFish gerçekten iyi bir performans grafiÄŸi çizdi. GlassFish’in tek kötü yanı çok büyük ve gereksiz birçok bileÅŸen içermesi ama elbette bazı projelerin bu bileÅŸenlere ihtiyacı olabilir, bu durumda tercih edilebilecek bir sunum ortamı olabilir.

Benim tercihim ise jetty oldu. jetty_rails adlı bir eklenti ile işler kolaylaşıyor fakat ne yazık ki eklenti oldukça eski bir sürüme ait bu nedenle bazı ufak tefek düzeltmeler yapmamız gerekiyor. Lafı çok uzattık bu düzeltmeleri daha sonra sizlerle paylaşırım.

Son söz olarak, rails uygulamanızı yazarken aşağıdaki maddeleri göz önüne almanızı tavsiye ederim;

  • Rails uygulamanızı kendiniz host etmeyin.
  • Rails uygulamanızı gerçekten kendiniz host etmeyin.
  • Rails uygulamanızı Linux bir sunucuda host edin. Linux için zilyon tane baÅŸarılı alternatifi deneyebilirsiniz.
  • Rails uygulamanızı Windows sunucuda host etmeyin.
  • Rails uygulamanızı Windows sunucuda host etmeyin, gerçekten.
  • Rails uygulamanızı Windows üzerinde host etmek istiyorsanız, jruby uyumlu olmasına özen gösterin. Host etmek istediÄŸiniz zaman duruma göre glassFish veya jetty kullanabilirsiniz.

Kolay gelsin :)

Rails için yazılım geliÅŸtirme ortamı” üzerine 5 yorum

  1. Merhabalar,

    jetty konusunda mizuno‘nun daha iyi bir performans saÄŸladığı söyleniyor.


    - Mizuno: 6106.66 req/s (mean)
    - Jetty (via jruby-rack): 2011.67 req/s (mean)
    - Mongrel: 1479.15 req/sec (mean)

    Bunun dışında Glassfish yerine TorqueBox kullanmak, sitesinde bahsettiÄŸi gibi daha “out-of-the-box” bir çözüm gibi gözüküyor. Tabi ihtiyaca göre iÅŸlemci ve bellek kullanımlarını karşılaÅŸtırmak gerekli.

    Bir de “Rails uygulamanızı kendiniz host etmeyin.” demiÅŸsiniz. Sizce uygulama barındırma servisleri (application hosting services) kullanmak fiyat/performans açısından daha uygun mudur? Yada hangi ölçekli uygulamalar için hangi uygulama barındırma yöntemini kullanmak daha saÄŸlıklıdır?

    Not:
    JRuby sunucu uygulamaları;
    https://github.com/jruby/jruby/wiki/Servers

  2. Merhabalar,

    Geç cevap için kusura bakma, söylemesi ayıp uzun bir tatil yaptım.

    Barındırma servisi kullanmak gerçek, doÄŸru anlaÅŸmalar çok karlı olabilir. Hosting firmalarının yaptığı en büyük getiri ölçek ekonomisini kullanarak ucuza hizmet verme yeteneÄŸine sahip olmaları. Ama elbette ki gereksinimleri iyi belirlemek gerekiyor. Yöntem olarak “Virtual Dedicated Server” ve/veya “managed server” kullanılabilir.

    Bu sisteme ödeyeceğimiz ücreti şu şekilde düşünelim;
    – Makina ücreti
    – Ä°nternet baÄŸlantı ücreti
    – Temel güvenlik önlemleri (fiziksel ve sanal)
    – Yangın ve elektrik kesintilerine karşı önlemler
    – Yedekleme ve sistem bakımı
    – Sizin iÅŸletim sistemi kurup, bu sistemi ayakta tutmak için harcadığınız zaman
    – Rahatlık :)

    mizuno’yu kesinlikle araÅŸtırmaya deÄŸer, çok teÅŸekkürler bu bilgiler için.

    Kolay gelsin.

  3. Ben editör olarak SublimeText 2 kullanıyorum. Temiz ve sade bir editör. Sürekli geliştiriliyor ve TextMate için yazılan scriptleri de çalıştırabiliyor.

    Normalde save sırasında bazen register ol diye uyarı veriyor. Onun dışında ücretsiz kullanılabiliyor.

  4. Evet SublimeText 2’ye biraz baktım.
    Kesinlikle gelecek vaad ediyor. Bir Laptop için pek uygun değil ama büyük bir ekran için ideal.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir