Wypowiedzi
-
Nie chodzi mi o dekodowanie sha-1 - po prostu myślałem żeby obliczyć sumę kontrolną (zaszyfrowaną) - i sprawdzić czy ktoś nie podsyła mi spreparowanych danych.
Memcache czy baza czy plik - po prostu gdzieś chciałbym przechowywać kilkanaście ostatnich rekordów więc nie wiem który z elementów najlepiej by się do tego nadawał.
Właśnie chodzi o to że jest API ale często nawala z uwagi na duże obciążenie i czasami trzeba stronkę parsować. Admin wie o stosowanych praktykach - ale jeszcze się nie zdarzyło aby kogoś upomniał o zbyt częste odpytywanie. Z API doszedłem do 15 sekund, poniżej nie chcę schodzić aby mój host się mnie nie czepiał. A takie przesyłanie danych to było by fajne - z tym że dużo użytkowników tego by chciało aby i im je udostępniać - więc tu takie coś odpada. -
Witam,
Jestem nowicjuszem w PHP więc proszę o wyrozumiałość. Nie chcę też aby ktoś pisał za mnie kod.
Chciałem poruszyć pewien problem oraz propozycję jak coś takiego najlepiej rozwiązać.
A wiec mam skrypt który zbiera dane ze strony www, przetwarza, wykorzystuje zgromadzone dane w czasie rzeczywistym i udostępnia je dalej w postaci czytelnej XML, JSON itp. Jak wiadomo czas to pieniądz - i w moim przypadku cenna jest każda sekunda. O ile nie śpieszno mi udostępniać dane dalej to o tyle bardzo szybko muszę reagować na otrzymane dane - tak że 4 sekundy to dla mnie dużo. Ktoś może pytać po co to na co to - no nie istotne tak bardzo. Ważne że coś takiego funkcjonuje - ale wolno. Pozyskanie informacji, przetwarzanie, wykorzystanie i udostępnienie dalej informacji.
Rozwiązanie:
OK jak wiadomo odpytywanie hosta co 20 sekund może nie być efektywnym rozwiązaniem i admin może to potraktować jako atak ddos i zbanować użytkownika. Wobec powyższego pomyślałem że może 10 użytkowników odpytywać host co 60 sekund, obrabiać dane i wysyłać je do głównego serwerka. Główny serwerek odbiera dane, zapisuje do bazy, duplikaty odrzuca, wykorzystuje dane na swój sposób i udostępnia je dalej. Taki jest plan.
Teraz pytanie - czy jeśli w jednym czasie zbiegnie się wielu użytkowników i zaczną aktualizować dane to serwer nie będzie miał zadyszki? Rozumiem żeby dane nie zostały zmodyfikowane przez klienta przed wysłaniem na serwer to trzeba zrobić może sha1 i szyfrowanie. Dekodowanie tego na serwerze i kolejkowanie np do pliku - czy to bardzo obciąża serwer? Czy ewentualnie jest jakiś inny sposób aby pozyskiwać dane z serwisów www w jak najkrótszym czasie po wprowadzeniu modyfikacji. Dodam że sprawdzanie nagłówków, ETAG nic nie daje bo dane w serwisie są ładowane z bazy. Trochę to taki akademicki projekt, trochę poznanie dodatkowych rozwiązań, opinii, oczywiście krytyka też mile widziana. Może tak się nie robi, może próbuję wynajdować koło na nowo a do tego typu rzeczy są całkiem inne rozwiązania. Tym bardziej jak by nie było mam do wykorzystania php, bazy, perl, python, c.
Pozdrawiam