SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

PHP 5.3 & MySQL 5.1

PHP 5.3 & MySQL 5.1 zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Entwicklung und Softwaredesign

PHP Entwicklung und Softwaredesign Hier können strukturelle (Programmier-) Konzepte diskutiert und Projekte vorgestellt werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 26.10.2012, 12:06:48
Tsengo Tsengo ist offline
Anfänger
 
Registriert seit: Oct 2012
Alter: 34
Beiträge: 4
automatisierte Datenaktualisierung

Guten Tag,

ich hoffe ich bin erstens an dieser Stelle hier richtig und zweitens, dass mir jemand auch helfen kann.
Ich suche eigentlich nur einen Denkanstoss. Ich kann leider auch keinen Link zu meiner Seite schicken, da alles was ich heir schreibe bisher nur in der Theorie vorhanden ist und ich erst an die Umsetzung gehe, wenn ich einen Lösungsansatz habe.

Grundlegende Informationen zuerst:

Ich habe WebspacePaket mit einer mysql-Datenbank auf einem Linux-System.
Diese enthält unter anderem Daten von angemeldeteten Benutzern von meiner Seite.
Um manche Funktionen auf dieser Seite nutzen zu können müssen die Benutzer Punkte vorweisen können. Diese Punkte laden sich mit der Zeit auf, egal ob der Benutzer Online ist oder nicht.

Dies wäre theoretisch einfach mit einem Cronjob machbar, aber der Knackpunkt komtm jetzt:

Für die Benutzer gibt es unterschiedliche Ränge und je nach Rang laden sich die Punkte entsprechend schneller/langsamer auf.
Ich würde nun ungern für jeden Rang einen eigenen Cronjob anlegen, zumal die Unterschiede teilweise nur wenige Sekunden betragen.

Kann mir nun vielleicht jemand einen Ansatz liefern, mit dem ich das Problem lösen kann?

Sollte ich mich unklar ausgedrückt, oder für die Lösung wichtige Details vergessen haben, so meldet mir das bitte, damit ich diese noch hinzufügen kann.


Danke schonmal für eure Unterstützung.
Mit Zitat antworten
  #2  
Alt 29.10.2012, 16:43:31
CPCoder CPCoder ist offline
Anfänger
 
Registriert seit: May 2008
Beiträge: 51
AW: automatisierte Datenaktualisierung

Zitat:
Zitat von Tsengo Beitrag anzeigen
Guten Tag,

... Für die Benutzer gibt es unterschiedliche Ränge und je nach Rang laden sich die Punkte entsprechend schneller/langsamer auf.
Ich würde nun ungern für jeden Rang einen eigenen Cronjob anlegen, zumal die Unterschiede teilweise nur wenige Sekunden betragen.

Kann mir nun vielleicht jemand einen Ansatz liefern, mit dem ich das Problem lösen kann?
...
Dann mach es wie die großen ;o)

1. Erstell eine PHP-Datei, welche die "Update Arbeiten" der jeweiligen Benutzerränge durchführt.
2. Erstell einen Cronjob, der die zuvor erstellte PHP-Datei jede Minute ausführt.

Die zuvor PHP-Datei sollte nun folgende Aufgaben durchführen.

- Prüfen wann für welchen Rang der letzte Durchlauf war (z.B. über Timestamps in einer Tabelle)
- jeweilige Update-Arbeit der Ränge durchführen, wenn der aktuelle Timestamp abzüglich Timestamp in der Tabelle kleiner ist, als ein vorgegebener Wert.
Mit Zitat antworten
  #3  
Alt 29.10.2012, 17:25:37
Tsengo Tsengo ist offline
Anfänger
 
Registriert seit: Oct 2012
Alter: 34
Beiträge: 4
AW: automatisierte Datenaktualisierung

Okay danke dir, so werde ich es auf jeden Fall versuchen.

Was mir dabei aber dann auch aufgefallen ist:
Ich muss ja dann aufpassen, dass keiner der Intervalle kleiner als 60 Sekunden wird, oder? Sonst hätte dieser Rang mehr oder weniger "Verlust" da er nicht das volle Potential ausschöpfen kann. Liege ich damit richtig?

Da ich davon ausgehe, mit dieser Annahme korrekt zu sein, würde ich meine Frage gerne erweitern, ob es denn möglich ist unter 60 Sekunden solche Aktualisierungen vorzunehmen, oder ob ich dafür einen komplett eigenen Server bräuchte und dann ein entsprechendes Programm schreiben müsste (z.b. in C# oder anderen Programmiersprachen)?

Danke nochmals :)
Mit Zitat antworten
  #4  
Alt 29.10.2012, 17:47:16
DokuLeseHemmung DokuLeseHemmung ist offline
SELFPHP Experte
 
Registriert seit: Jun 2008
Alter: 16
Beiträge: 2.269
AW: automatisierte Datenaktualisierung

Frage doch auch mal ob das nicht grundsätzlich der falsche Ansatz ist......

z.B.:
Wozu die cronjobs, wenn doch mal eine Stunde lang kein User auf den Server zugreift?
Mit Zitat antworten
  #5  
Alt 29.10.2012, 18:08:37
Tsengo Tsengo ist offline
Anfänger
 
Registriert seit: Oct 2012
Alter: 34
Beiträge: 4
AW: automatisierte Datenaktualisierung

Die Frage ist berechtigt.

Nun ich möchte, dass sich diese Punkte der einzelnen Ränge aufladen, egal ob der Nutzer auf der Seite ist oder nicht.

Ich habe nunmla gedacht, dass es mit einem Automatismus funktionieren müsste der eben im entsprechenden Intervall aufgerufen wird, das würde ja für einen Cronjob sprechen.

Ich weiß leider gerade nicht wie ich es anders lösen sollte. Hast du denn einen Vorschlag für einen anderen Ansatz?
Mit Zitat antworten
  #6  
Alt 29.10.2012, 18:16:54
DokuLeseHemmung DokuLeseHemmung ist offline
SELFPHP Experte
 
Registriert seit: Jun 2008
Alter: 16
Beiträge: 2.269
AW: automatisierte Datenaktualisierung

Dann betrachte es doch mal von der Seite des Anfragenden. Dem ist egal ob der Server die ganze Zeit sinnlos pumpt. Der Anfragende möchte aktuelle Daten sehen. Was hält dich also davon ab, die Daten genau dann zu berechnen, wenn sie gebraucht werden?
Mit Zitat antworten
  #7  
Alt 29.10.2012, 18:23:29
Tsengo Tsengo ist offline
Anfänger
 
Registriert seit: Oct 2012
Alter: 34
Beiträge: 4
AW: automatisierte Datenaktualisierung

Achso,...hmm ok.

Das heißt solange die Personen offline sind nichts berechnen und erst wenn diese Online kommen dann zur Laufzeit ausrechnen und bei Bedarf mit Javascript oder ähnlichen Schleifen während der Onlinezeit weiterrechnen.

Das wäre eine Möglichkeit.

Danke für den guten Tipp :)
Mit Zitat antworten
  #8  
Alt 29.10.2012, 20:46:16
Ckaos Ckaos ist offline
Member
 
Registriert seit: Nov 2007
Beiträge: 843
AW: automatisierte Datenaktualisierung

Hi

Zitat:
Theorie ... Lösungsansatz ... zumal die Unterschiede teilweise nur wenige Sekunden betragen.
Und dann Cron's die jede minute laufen? Wohl falsches Konzept oder?
Glaub mir ich hab lange bei einem meiner Browserspiele getüftelt bis mir klar wurde
mit PHP+Cron läuft sowas nicht gut.

Zitat:
Dann mach es wie die großen
Glaub ich nicht das die das so machen ;)

Zitat:
Dann betrachte es doch mal von der Seite des Anfragenden. Dem ist egal ob der Server die ganze Zeit sinnlos pumpt.
Jo aber wir redeten doch von Rängen oder?
Was können die anderen dafür wenn manche nicht immer online sind?
Mein Rang ist ja nur dann was wert wenn ich ihn im vergleich sehe. Wenn jeder
nur seinen Rang sieht mag das ja aufgehen, aber ich würde an die Zukunft denken.

mfg

CKaos
__________________
"Wenn die Leute Häuser so bauen würden, wie wir Programme schreiben, würde der erstbeste Specht unsere Zivilisation zerhacken."
In den allermeisten Fällen sitzt der Bug etwa 40 cm vor dem Monitor!
Mit Zitat antworten
Antwort

Stichworte
aktualisierung, datenaktualisierung


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 10:33:13 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt