Nedir PHP / MySQL ile zamana duyarlı mesajları kuyruk için en iyi yöntem?

1 Cevap php

Ben bir toplayıcı ağ geçidi yoluyla bir mesaj aldığında, yeni bir app bir SMS çağrı ve yanıt sistemi inşa ediyorum, (vb, ask, stop, run) fonksiyonel anahtar kelimeler için denetler, sonra (bir dönüş, veritabanına kaydetmek uygun şekilde işler ) cevap, ya da kullanıcı yetkilendirme dayalı bir görevi yürütmek. Sadece bir kaç kullanıcı var gibi şu anda iyi çalışıyor, ama ben onun biz o kadar ölçek olarak daha fazla sorunlar olacak rakam. Şu anda tek bir DV makinede (Mediatemple baz dv) üzerinde koşuyoruz.

Benim soru şudur: tek tek her iletiyi işlemek için çalışan bir cini bir kuyruk, ya da basit bir veritabanı çalıştırmak Memcached gibi bir şey kurmak daha mantıklı geliyor? Ben de çok deneyimi yok, bu yüzden herhangi bir tavsiye yararlı olacaktır. Mesajlaşma biraz zaman duyarlı olduğundan, bu ne işlemek için en hızlı ve en güvenilir yolu olurdu?

Biz yanıtlar göndererek konum beri Ayrıca, muhtemelen de kurmak ve giden ileti kuyruğu gerekir. Her ikisi için de aynı kavramını kullanmak mantıklı olur?

1 Cevap

"Hızlı" ve "en güvenilir" ille birlikte iyi gitmez: genellikle bir ya da diğer bulunuyor.

Memcached ve bir veritabanı hakkında, bir veri depolama mecanism değil memcached bir caching mecanism olduğunun farkında ve olmalıdır.


It means it should not be used to store data that you cannot regenerate :

  • veritabanı kurtarmak için daha fazla mümkün iken - (like a crash / reboot), sen memcached içinde ne kaybedecek bir sistem hatası varsa
  • veri depolamak için yeterli RAM yoksa, memcached bunun için sormadım bile, önbellekten bazı eski öğeleri kaldırabilirsiniz

Bir dağıtılmış önbellekleme küme oluşturmak için geldiğinde memcached büyüktür; ama önemli olan ve kaybetmeyi göze alamaz bu verileri depolamak için kullanılmamalıdır.