PHP / Cronjob arama ölçeklenebilirlik kurtardı

1 Cevap php

Özellikleri kullanıcıların arama ölçütlerini kaydedilmiş eşleşen piyasaya gelip bizim emlak sitesi e-posta bildirimleri gönderir.

Ben aramaları işlemek için cronjob üzerinde çalışan bir PHP komut dosyası var.

Sistem şimdi 40.000 'den fazla kullanıcıya sahip. Ben PHP bellek boyutu tükenmiş bir sorunu içine koştu. Sistem büyüdükçe ben php.ini bellek boyutunu artırmak için devam edebilirsiniz, ancak bunu yapmak için daha sağlam bir yol bulmak istiyorum.

Bunu gerçekleştirmek için daha ölçeklenebilir bir yolu var mı? Ben daha sağlam bir dilde bir şeyler inşa etmeli? Java veya Python belki bir dişli bir uygulama?

1 Cevap

Bunun için özel bilgisayar miktarı ile partition the tasks için kaydedilen arama tablolarında bir tanımlayıcı kullanarak.

divide and conquer her bazı görevler bölümü çalışan, birçok makine için arama üstlenmeden bölümleri çiftçilik yaparak.

Her komut dosyası yapabilirsiniz

SELECT * FROM saved_search_tbl WHERE ssid IN CALCRANGE(searchid, node_id)

INRANGE iş ve makinenin düğüm sayısının miktarına göre bazı bölümleme mantığı nerede. Yeni arama geldiğinde, birincil ve ikincil işlem düğümleri atayarak makinelerde load balance Onları cound.

Bir kaç fikir, onlar yardımcı umut!

good luck