Geçmişte çeşitli ortamlarda çalıştım. Masaüstü uygulamaları, oyunlar, katıştırılmış öğeler, web hizmetleri, komut satırı işleri, web siteleri, veritabanı raporları vb. Tüm bu ortamlar aynı özelliği paylaştı: karmaşıklıkları ne olursa olsun, boyutları ne olursa olsun, makinemde veya test etmek için geliştirici ortamında her zaman uygulamanın bir alt kümesine veya dilimine sahip olabilirim.
Bugün bilmiyorum. Bugün kendimi birincil odağı ölçeklenebilirlik üzerine bir ortamda buluyorum. Çevrenin yeniden üretilmesi oldukça maliyetlidir. Ortamın bir dilimini almak, makul olsa da (bazı parçaların simüle edilmesi veya yapılmadıkları tek örnekli bir modda kullanılması gerekir), eşzamanlılığı gizlediği ve yüklemesi nedeniyle bu amacı yener. gerçek sistem karşılaşır. Küçük bir "test" sisteminin bile kusurları vardır. 2 düğümünüz ve 64 düğümünüz olduğunda işler farklı davranacaktır.
Her zaman optimizasyon yaklaşımım (ölçmek, bir şey denemek, doğruluğu doğrulamak, farklılıkları ölçmek, tekrarlamak) gerçekten işe yaramıyor çünkü sorunun önemli kısımları için 2. ve 3. adımları etkili bir şekilde yapamıyorum (eşzamanlılık sağlamlığı ve performansı altında yük). Yine de bu senaryo benzersiz görünmüyor. Bu tür bir görevi bu tür bir ortamda yapmak için ortak yaklaşım nedir?
İlgili bazı sorular var:
Reproducing the environment is prohibitively costly.
- Gösteriyi durduran bir üretim hatası ne kadara mal olur? 2 hata ne olacak? Öngörülemeyen zamanlarda (büyük olasılıkla kullanıcılarınızın çoğunluğu aynı anda sisteme yük bindirdiğinde). Bunu minimal bir çoğaltma ortamı kurma maliyetine karşı tartın - sonuçta bunun çok pahalı olmadığını görebilirsiniz.
prohibitively costly
.