Dag allen,
Op dit moment ben ik bezig met het ontwikkelen van een online p2000 monitor.
Wat ik wil doen is een realtime monitor maken, hiervoor gebruik ik ook wel een chatbox script.
Als allereerste zal ik voor de vorming even uitleggen hoe het in zijn geheel werkt.
- Melding komt binnen via een pieper, aangesloten op een PC
- .exe file ontvangt de melding en stuurt de melding via de API door naar de webserver
- Vervolgens wordt de melding opgeslagen in de database en volgt de rest
In de huidige situatie wordt er via ajax/javascript gekeken of ik data terug krijg van het PHP script, wanneer ik dat krijg dan krijgt de gebruiker de input direct terug. Het PHP bestand in continue aan het kijken of er een nieuwe melding in de database is gekomen. Wanneer er dus 20 gebruikers de pagina open hebben zijn het nogal wat requesten naar de database terwijl de database een 1.552550 records aan meldingen heeft. Dit gaat dus niet super snel en belast de database ontzettend. Zie -> http://112pers.nl/meldingennew/.
Aangezien ik weet wanneer er een nieuwe melding binnenkomt denk ik dat ik dit beter anders op kan lossen.
Als ik cache (APC) ga gebruiken en de cache elke keer update wanneer er een nieuwe melding komt hoef ik in het PHP script alleen te kijken of er nieuwe data in de cache file staat wanneer er nieuwe data in de cache staat krijgt de gebruiker de output te zien.
Ik zou dit dan bijvoorbeeld door aparte services kunnen laten doen, aangezien er meerdere monitors zijn en je toch alle monitors zo actueel mogelijk wil houden. Ik weet welke meldingen op welke monitor te zien moeten zijn dus hoef de cache alleen geupdate te worden wanneer er voor die bepaalde monitor een nieuwe melding binnen is gekomen.
Een aantal vragen:
- Is dit een goede oplossing, of zijn er betere?
- Hoe ga ik om met bijvoorbeeld een pagina navigatie, de volgende opties zat ik aan te denken
> Gewoon alle records in de cache file en daar gaan filter?
> Als de pagina navigatie gebruikt word de cache file pas aanmaken?
> Hiervoor geen cache gebruiken?
Op dit moment ben ik bezig met het ontwikkelen van een online p2000 monitor.
Wat ik wil doen is een realtime monitor maken, hiervoor gebruik ik ook wel een chatbox script.
Als allereerste zal ik voor de vorming even uitleggen hoe het in zijn geheel werkt.
- Melding komt binnen via een pieper, aangesloten op een PC
- .exe file ontvangt de melding en stuurt de melding via de API door naar de webserver
- Vervolgens wordt de melding opgeslagen in de database en volgt de rest
In de huidige situatie wordt er via ajax/javascript gekeken of ik data terug krijg van het PHP script, wanneer ik dat krijg dan krijgt de gebruiker de input direct terug. Het PHP bestand in continue aan het kijken of er een nieuwe melding in de database is gekomen. Wanneer er dus 20 gebruikers de pagina open hebben zijn het nogal wat requesten naar de database terwijl de database een 1.552550 records aan meldingen heeft. Dit gaat dus niet super snel en belast de database ontzettend. Zie -> http://112pers.nl/meldingennew/.
Aangezien ik weet wanneer er een nieuwe melding binnenkomt denk ik dat ik dit beter anders op kan lossen.
Als ik cache (APC) ga gebruiken en de cache elke keer update wanneer er een nieuwe melding komt hoef ik in het PHP script alleen te kijken of er nieuwe data in de cache file staat wanneer er nieuwe data in de cache staat krijgt de gebruiker de output te zien.
Ik zou dit dan bijvoorbeeld door aparte services kunnen laten doen, aangezien er meerdere monitors zijn en je toch alle monitors zo actueel mogelijk wil houden. Ik weet welke meldingen op welke monitor te zien moeten zijn dus hoef de cache alleen geupdate te worden wanneer er voor die bepaalde monitor een nieuwe melding binnen is gekomen.
Een aantal vragen:
- Is dit een goede oplossing, of zijn er betere?
- Hoe ga ik om met bijvoorbeeld een pagina navigatie, de volgende opties zat ik aan te denken
> Gewoon alle records in de cache file en daar gaan filter?
> Als de pagina navigatie gebruikt word de cache file pas aanmaken?
> Hiervoor geen cache gebruiken?