I built something like this for an EMS system using SVG as the user interface a few years ago. A similar approach would probably work in HTML.
In my case,
- the first request sent the whole page with current data.
- Scripting in the page performed a new request at the specified interval to retrieve data (not a whole new page).
- When new data was received, the script updated the interface accordingly.
With a careful design, you can send a very small amount of data with each update compared to what would be needed to replace the whole page.
In order to avoid restarting the simulation, you could run the simulation as a separate process and communicate with it through the CGI, instead of running the CGI process indefinitely.
Another possibility (that I haven't tried, so take with a grain of salt) would be to make a request to the simulation immediately after the page loads and process the data as an incoming stream. Take each line or record of the data stream and update the interface as I described above.
The key to both of these approaches is client-side intelligence to update the screen, rather than rewrite it all on the server side.
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.