Data bound grid for quickly displaying web socket data

I have decades of experince with C and months with Go and have recently been tasked with creating a web page to display semi-realtime data (I know :). I am not experienced with web (know a litte HTML and have heard of CSS) and, to be honest, am overwhelmed with a ridiculous amount of options for creating a web page. I just need to display a 2-D grid of data but, importantly, it is crucial that fields are updated ASAP (ie we are talking milliseconds). I have a web socket server in GO and have a simple HTML5 test page which uses javascript to read the data from the ws. This is good and fast.

However, now I need to set up some sort of grid to read the data from the WS and update the display. (It is crucial to minimize delays when you are displaying temperatures in a nuclear reactor:) I just need some advice on a simple way to get this working - ie what technologies, frameworks and a grid/spreadsheet control (with data binding) to use. I guess the crucial points are:

HTML 5
data is pushed through a web socket
data needs to be bound to a grid for quick display
simple to get working for an idiot like me

If this is your real application, do not do it with a webbrowser! Use dedicated devices running on a real time operating system!

If this is only for training or demonstrational purpose though, you do not care for even seconds, as long as the student or management has a feeling of things moving around.

You will never have enough control over a webbrowser to be able to guarantee real time. If it decides to GC right when the temparature starts raising and you miss about a 100ms because of that, you are in really big trouble!

3 Likes

Besides what Norbert has said, if you still want to do this in a Web browser which I imagine won’t have a huge amount of traffic as it seems to be for intranet oriented use, you should just use CSS grid with AJAX calls to your GO web socket to refresh the data however often you’d like. That’d be my first approach and it sounds like you already have half of that with the simple test page and javascript that reads from the web socket.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.