Web çerçevesi idame

4 Cevap php

Umarım bu web uygulaması için bir uygulama dili seçerek, ama kimseye saldırma önce, biz deneyimleri bir uygulama bakımı ile ne olduğunu bilmek istiyorum son bir soru.

Biz Perl dayalı bir web portalı tutulan (ve o zamandan beri bir barındırılan çözüm taşındı).

Sorun Perl güncellenen ya da bir modül güncellendi davaları vardı, ve bütün web sitesi birbirine beri CPAN modülleri küçük bir değişiklik bütün web sitesi (bu bir açık ölüme neden olabilir, çünkü kolayca bir kabus oldu portalda bir şey bunu kabul hangi sürümü modülü hakkında çok özel çünkü kaynak portalı, biz) onu yaratmadı.

Güvenlik güncellemeleri zararsız bir dizi web sitesi bir zaman fark süre için ayrı çökmesini çıkmasına neden olabilir bir kaç kere vardı.

Yani, Ruby on PHP, Django veya Ruby dayalı bir web uygulaması oluşturmak için karar verirken, insanların çerçeve veya dil bölümü ya da tümü yükseltirken gerektirdiği gelmiştir sitesinde ne bakım paylaşabilirim?

Nasıl "kolay" sadece oluşturmak değil bir modül / gem için bir güvenlik düzeltme yüklemeye çalışırken web uygulamasını kırmak ya da aksaklık nedir? Ya da gerçekten bir sorun değil mi?

4 Cevap

Ben bu gün bir python uygulaması dağıtma olsaydı, ben kesinlikle kontrol virtualenv. Olur

Kendi sayfasında:

virtualenv is a tool to create isolated Python environments.

The basic problem being addressed is one of dependencies and versions, and indirectly permissions. Imagine you have an application that needs version 1 of LibFoo, but another application requires version 2. How can you use both these applications? If you install everything into /usr/lib/python2.4/site-packages (or whatever your platform's standard location is), it's easy to end up in a situation where you unintentionally upgrade an application that shouldn't be upgraded.

Or more generally, what if you want to install an application and leave it be? If an application works, any change in its libraries or the versions of those libraries can break the application.

Django ile gelin revizyonlar arasındaki yükseltirken herhangi bir sorunları yoktu (benim bazı projelerin 0,96 ya da öylesine beri bitrotting olmuştur, bu yüzden daha karmaşık idi). Bildiğim kadarıyla yeniden uygulamalar gider gibi, gerçekten app bağlıdır. Tarafından ve büyük olsa da, (yerine insanlar geliştirme sürümünü çalışacak varsayarak daha) onların uygulamalar serbest bırakmak için yeterli disiplinli geliştiriciler sürümleri arasında geçiş sağlar iyi olma eğilimi ağrısızdır.

Sadece tests.py bazı regression tests içerir. Eğer test değilseniz, sen yanlış yapıyorsun ...

Python easy_install ve distutils size ne gerek versiyonları tanımlamak için oldukça sağlam bir şekilde vermek. Arayüzleri geçersiz nadiren sürpriz güvenlik değişiklikleri vardır.