...
Als er een insert, update of delete op de MySQL database wordt uitgevoerd wordt dit in een binary log gezet. De Java applicatie luistert naar deze binary log met gebruik van de mysql-binlog-connector-java. Nadat de Java applicatie deze data heeft ontvangen wordt deze omgezet zodat alleen de relevante data door wordt gestuurd naar de "Pusher Channel". Vervolgens gebruikt Herrera een React app die verbonden is aan de pusher. De pusher zit als een soort API tussen de React app en de Java backend.
Welke technieken die veel gebruikt worden of ons bekend zijn maken geen gebruik van een MySQL database
...
?
Polling
Regterschot Racing gebruikt een API om de data van de Raspberry Pi in de database te zetten. De client, in dit geval onze Java web applicatie, kan een request sturen naar deze API. Als de API nieuwe data heeft zal hij deze teruggeven aan de applicatie. Als deze geen nieuwe data heeft krijgt de applicatie een bericht terug dat er geen nieuwe data is. Het is vergelijkbaar met het verversen van je email om te kijken of er nieuwe email is.
...
Een websocket lijkt veel op SSE. Een websocket is te vergelijken met bijvoorbeeld WhatsApp. Bij SSE wordt er een connectie geopend en kan de server ten alle tijde data sturen naar de client. Bij een websocket kan dit ook, echter kan ook de client nieuwe data sturen naar de server, wat niet mogelijk is bij SSE.
Welke technieken worden bij autoraces gebruikt om de data van de auto naar een pit te krijgen?
Data via radiosignalen
De sensoren die in een f1 raceauto zitten zijn veelal met elkaar verbonden. Elke auto heeft zijn eigen netwerk en de data wordt van punt 1 naar punt 2 verzonden. Uiteindelijk komt alle data binnen op een server die nog in de auto zelf zit. De data wordt op dat moment geëncrypt en verzonden naar de pit met gebruik van radio signalen. Op een race circuit staan meerdere palen die de radiosignalen op kunnen pikken en weer kunnen versturen. De palen staan op zo'n manier ingedeeld dat als een coureur niet meer in het bereik is van paal A, hij wel in het bereik is van paal B.
Ook Bij NASCAR wordt er gebruik gemaakt van data. Ook deze data wordt opgeslagen en wordt via een transducer door radiosignalen verstuurd naar een centrale computer. Data bij NASCAR wordt echter veelal gebruikt om bijvoorbeeld de afstand tussen auto's aan te geven of hoe snel een auto momenteel rijdt. De data die tijdens een race binnenkomt wordt alleen naar NASCAR medewerkers verstuurd.
Conclusie
Bronnenlijst
Herrera, E. (2018, 4 mei). Getting data in realtime from MySQL with Java. Pusher. https://pusher.com/tutorials/realtime-mysql-java/
Pure Storage. (2021, 20 december). How Formula 1 Car Sensors Create Data at Every Turn. https://blog.purestorage.com/perspectives/how-formula-1-car-sensors-create-data-at-every-turn/
Veen, T. [Tieme] Van. (2012, 12 oktober). What are Long-Polling, Websockets, Server-Sent Events (SSE) and Comet? Stack Overflow. https://stackoverflow.com/questions/11077857/what-are-long-polling-websockets-server-sent-events-sse-and-comet