Otomatik olarak MySQL veritabanı depolama için bir RSS beslemesi ayrıştırmak nasıl?

3 Cevap php

Ben bir şekilde otomatik olarak güncellemek / RSS beslemeleri bir çift ayrıştırmak ve yem güncellenen, ya da mümkün olduğunca yakın olarak neredeyse en kısa sürede bir MySQL veritabanı içine yerleştirmek gerekir. Ancak, otomatik olarak yapmak için en iyi yolu iş olamaz - ama bu durumda tüm arka planda yapılması gereken - Ben bir kullanıcı bir komut dosyası çalıştırıldığında yapıyor için öğreticiler buldum. Cron uygun olurdu?

Herhangi bir fikir? Herhangi bir tavsiye büyük teşekkür takdir edilmektedir.

3 Cevap

You should check out Zend_Feed_Reader.
Zend_Feed_Reader provides HTTP Conditional GET Support.
If the Feeds is proper configured your script only has to download and parse the Feed if it has even changed.

Sen tam Zend Framework gerekmez. Bu tek başına kullanılabilir böylece Zend_Feed_Reader çok az bağımlılıkları vardır.

Bu sadece hiç bir şey yanıt olarak yapılabilir - ". Belirli bir zaman olmasına karşılık olarak" bir cron işi sadece anlamına gelir Size özel durumlar için neyin en iyi olduğunu olay karar vermek zorunda.

Eğer cron üzerinden periyodik olarak yapıyor, RSS beslemeleri kaynağını kontrol etmiyorum varsayarsak mantıklı. "Besleme güncellendiğinde ya da mümkün olduğunca yakın olarak kısa sürede" o çalıştırmak için size son derece sevilmeyen kılacak, her saniye yoklamak gerekir. (Besleme farklı bir onay süre vererek bilgi içeren sürece) daha sık saatlik daha kontrol edin.

Eğer RSS Feed kaynağını kontrol yaparsanız, diğer Observer pattern bakabilirsiniz. Değilse, kontrol ederseniz kaynak yem destekleri PubSubHubbub:

Basit, açık, sunucu sunucuya web kanca tabanlı PubSub (/ abone yayımlamak) Atom ve RSS bir uzantısı olarak protokol. Onlar ilgilendiğiniz bir konu (besleme URL) güncellendi zaman PubSubHubbub protokolü konuşan Taraf (sunucular) (webhook geriçağırımlarının üzerinden) yakın-anlık bildirimler alabilirsiniz.