Ik heb niet zozeer een probleem met de code of het programmeren maar meer met de manier waarop mijn applicatie werkt.
Ik heb een webapplicatie waarin het mogelijk is om dingen te schakelen (in bijv. een huisinstallatie, dus domotica). Als de gebruiker iets 'aan' zet wordt in de database een veld op '1' gezet (en omgekeerd). De database draait op een Linux server, evenals Apache en PHP. Op dezelfde server draait een, zoals ik het zelf noem, driver (daemon of service zijn wellicht betere benamingen). De driver is geschreven in C en wordt opgestart als de server opstart. Het hoofddoel van de driver is door de database lopen en naar een bepaald veld kijken. Afhankelijk van de waarde van het veld wordt er een commando naar de seriële poort gestuurd (en wordt er dus iets aan of uit geschakeld). Op de seriële poort zit een convertor die seriële commando's omzet naar commando's voor het bussysteem, waarop de schakelende elementen zitten.
Hoewel de applicatie goed werkt vraag ik me af of een dergelijke constructie vaker voorkomt (en daarmee de 'juiste' werkwijze is) of dat deze zaken ook op een andere manier opgelost kunnen worden. Persoonlijk vind ik deze oplossing namelijk niet heel mooi. Ik kan niet precies zeggen waarom niet maar op een of andere manier voelt het niet solide aan.
Het 'probleem' zit hem voornamelijk in de communicatie tussen de high-level webapp en low-level seriële poort aansturing. Wat is jullie idee over dergelijke constructies?
(een ander voorbeeld van high-level naar low-level zijn de instelling-pagina's op routers e.d. Hierin is het vaak ook mogelijk om vanuit de webapp een router opnieuw op te starten, wat duidelijk een low-level bewerking is. Hoe wordt dit gedaan?)
Ik heb een webapplicatie waarin het mogelijk is om dingen te schakelen (in bijv. een huisinstallatie, dus domotica). Als de gebruiker iets 'aan' zet wordt in de database een veld op '1' gezet (en omgekeerd). De database draait op een Linux server, evenals Apache en PHP. Op dezelfde server draait een, zoals ik het zelf noem, driver (daemon of service zijn wellicht betere benamingen). De driver is geschreven in C en wordt opgestart als de server opstart. Het hoofddoel van de driver is door de database lopen en naar een bepaald veld kijken. Afhankelijk van de waarde van het veld wordt er een commando naar de seriële poort gestuurd (en wordt er dus iets aan of uit geschakeld). Op de seriële poort zit een convertor die seriële commando's omzet naar commando's voor het bussysteem, waarop de schakelende elementen zitten.
Hoewel de applicatie goed werkt vraag ik me af of een dergelijke constructie vaker voorkomt (en daarmee de 'juiste' werkwijze is) of dat deze zaken ook op een andere manier opgelost kunnen worden. Persoonlijk vind ik deze oplossing namelijk niet heel mooi. Ik kan niet precies zeggen waarom niet maar op een of andere manier voelt het niet solide aan.
Het 'probleem' zit hem voornamelijk in de communicatie tussen de high-level webapp en low-level seriële poort aansturing. Wat is jullie idee over dergelijke constructies?
(een ander voorbeeld van high-level naar low-level zijn de instelling-pagina's op routers e.d. Hierin is het vaak ook mogelijk om vanuit de webapp een router opnieuw op te starten, wat duidelijk een low-level bewerking is. Hoe wordt dit gedaan?)