Yüksek Frekans Ajax ve MySQL Uyku Aşırı

1 Cevap php

Şu anda benim site için bazı yüksek istek ajax ile kullanmak için bir ışık php çerçeve üzerinde çalışıyorum, ve beni tamamen şaşkına, ilginç bir sorun haline çalıştırmak. Ajax bildirimleri bir dizi, bu yüzden javascript yeni bilgilerle her 30 saniyede bir ajax isteği gönderir. Bu ajax tüm sitenin her sayfasında aktif olduğunu, bu yüzden birkaç yüz kullanıcılar birçok pencere açıkken, herhangi bir anda birçok siteyi geziyor gibi isteklerinin çok biliyoruz.

Sözdizimi bilge her şey mükemmel. MySQL veritabanı 40 UYKU komutları - Sorun benim toplum için ajax aktive edildiğinde, 30 bir yapı kadar, orada olduğunu. Bütün bunlar 10 saniye set aşımı görmezden görünüyor. Bir sonuç olarak tüm sitenin performansını etkiler.

Benim anlayış uyku komutlar üzerinde sol kapatıldı henüz bir bağlantı sonucu olmasıdır. Ben MySQLi nesne yönelimli sınıfını kullanın ve benim kendi birkaç fonksiyonları ile artırdık. Her şey belgelere karşı kontrol metin kitap ve çift tarafından, ve ben MySQLi sınıfın her küçük parça kapalı ve serbest olduğundan emin yaptık.

Herkes bu tip etki ile herhangi bir bilgelik ya da deneyim varsa, ben herhangi bir tavsiye için çok minnettar olacaktır.

1 Cevap

Eğer mevcut çekme / yoklama yaklaşımı karşısında bir itme yaklaşım denediniz mi? Comet bir göz atın:

Ancak, bazı olumsuzlukları, açık bir bağlantıyı sürdürmek zorunda olan ana biri ve bazı tarayıcılar koruyabilirsiniz bağlantı sayısını sınırlamak. Aşağıdaki makale Comet kullanarak artılarını ve eksilerini bahsediyor ve bir melez-yoklama yaklaşım göstermektedir:

Burada da kuyrukluyıldızın bahsediyor bir stackoverflow soru: