"Solicited output" means a user issues a command to a GUI and the GUI displays the corresponding output.
In this context, I include Web apps in the term "GUI".
However, often a GUI needs to display unsolicited output.
For example, the SE/SO websites often display an icon indicating the number of new email messages and the new score for a user's reputation. This wasn't solicited by the user.
I was trying to figure out how this is done:
1) Obviously, a DB maintains the relevant data about each user.
2) In this DB, the data rows pertaining to a specific user are updated by the App, in response to other users' actions (as well as the user's own actions).
3) Then, the output - completely unsolicited by the user in question - goes to the screen of the user in question.
But which concepts / technologies are involved in making step 3 above happen?
For instance, does an Event fire? If this is so, then what possible event could be raised in the frontend, due to a DB action?
Alternatively, does the frontend poll the DB at frequent intervals? This would be inefficient.