Kullanıcıların fotoğraf yükleme bir site var. Bu görüntüler, çeşitli boyutlarda yeniden boyutlandırılır. Şu anda benim sunucuda bunu, ama işleme düşündüğünü AWS ya da benzer bir şey. Bu iyi bir fikir mi?
Ben de benzer görevler için EC2 ve adanmış sunucular kullanarak oldum ve burada bazı ipuçları şunlardır:
Mümkün olduğu kadar az IO kullanın. Eğer Imagemagick gibi şeyler kullanmayı düşünüyorsanız (siz yine de önbelleğe istediğiniz sürece.), Diske yazma io kaynak israfı olduğunu biliyoruz PHP / GD http yanıt olarak doğrudan jpeg göndermenizi sağlar.
Kısa sürede serbest RAM: serbest kaynak ve boyutlandýrýlmýþ görüntüleri zaman yapabilirsiniz. Sunucu belleği üzerinden takas şansını ortadan kaldırır.
EC2 bağlam anahtarları ile son derece yavaş. Bu yüzden mümkün olduğunca az çalışın. Gimp gibi işlemciler-son derece yavaş (adanmış 0.2 saniye sürdü ölçekli bir aşağı, EC2 7 saniye sürmüştür.) Ayrıca, ImageMagick son derece yavaş olduğunu, dönem. Eğer yapabilirseniz, sizin işlem için tüm PHP / GD kullanın.
Maksimum bellek ayarlamak için hatırlıyorum. Bellekte resmin iki kopyalarını gerekir (kaynak ve küçülttüm.) Olacak
Son ama en az değil: gerçek zamanlı ile başlar. Mysql kuyruklar ve dış cinleri overkill çözeltisi ile başlamayın. Bunlar uzun vadede korumak için sert ispat edecektir. Eğer bir roket inşa Yani önce gerçek-zamanlı bir deneyin.
İyi şanslar!
Bunu görüntüleri ve kaç işleme tahmin işlemek için gereken ne kadar anlamaya ihtiyacımız var.
Lütfen sunucu pik yük ile gerçek zamanlı olarak bunları işleyebilir eğer, şu anda bu konuda endişelenmeyin.
Ben sunucu yükünü işleyebilir, ama gerçek zamanlı olarak, ben sunucu üzerinde bir kuyruk oluşturmak ve bir cron işi veya servis sürecini isteği dışında görüntüleri olurdu olduğunu söyleyebilirim. Sıra büyüyen başlar veya sunucu aşırı almak başlarsa, başka bir makineye taşıyabilirsiniz.
Diğer makine yük işleyemez eğer, kuyruğunu işlemek için daha fazla makineleri eklemek, biraz kolayca mümkün olmalıdır.
Bu noktada, muhtemelen oldukça sofistike ve sen talep üzerine ölçekleme gibi şeyler için EC2 yararlanarak başlayabilirsiniz.