SORU
17 Temmuz 2012, Salı


Ne zaman App Engine zamanlayıcı yeni bir örneğini vs yeni bir iş parçacığı kullanır?

Eğer ben set threadsafe: true app.yaml dosya, hangi kurallara tabi ne zaman yeni bir örneği oluşturulur hizmet isteği karşısında ne zaman yeni bir iş parçacığı oluşturulur bir örneği mevcut mı?

Eğer bir hesaplama her isteği yoğun gerçekleştiren bir uygulamam var, Çoklu-işlem bana bir şey satın almak mı? Diğer bir deyişle, bir örnek, çok çekirdekli bir örneği veya tek çekirdekli mi?

Ya da, yeni bir iş parçacığı mevcut konuları IO üzerinde bekleyen tek yüklendi.

CEVAP
9 AĞUSTOS 2012, PERŞEMBE


Kuralları aşağıdaki kümesi şu anda eğer belirli bir örneği, yeni bir isteği kabul belirlemek için kullanılır:

if processing more than N concurrent requests (today N=10): false
elif exceeding the soft memory limit: false
elif exceeding the instance class CPU limit: false
elif warming up: false
else true

Toplam CPU aşağıdaki çekirdek sınırı şu anda her örnek sınıflar için geçerli/:

CLASS 1: 600MHz 1 core
CLASS 2: 1.2GHz 1 core
CLASS 4: 2.4GHz 1 core
CLASS 8: 4.8GHz 2 core

Yani B8 sadece bir örnek, buna paralel olarak 2 Tam CPU bağlı isteklerine süreç olabilir.

Örnekleri sınıfları < threadsafe: true (Python) veya <threadsafe>true</threadsafe> (Java) ayarı; 8 birden fazla CPU bağlı istekleri tek bir örnek üzerinde paralel işlenmesi için izin vermedi.

Tam olarak olmasa da CPU bağlı ya da g/Ç yapıyorsanız, Python ve Java çalışma zamanı, yeni bir istek threadsafe: true 10 eşzamanlı istekleri işleme için yeni bir iş parçacığı spawn

Ayrıca çalışma zamanı, tek dişli olmasına karşın, eşzamanlı istekleri desteklemiyor unutmayın: İstekleri başına 1 goroutine spawn ve ben gösteri sırasında goroutines arasında kontrol getirebilecek/Ç

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Grace Su

    Grace Su

    6 Ocak 2006
  • Justin Case

    Justin Case

    3 EKİM 2011
  • Official Clouds

    Official Clo

    1 HAZİRAN 2011