Random order in a view
You can setup Views to cache the query. This will probably be globally, (meaning the every one will see the same list for X time). It's not bulletproof but it's an easy solution. Alternatively you need to do some cache per user, which could be quite tricky or some custom code.
Update
By default Views allow you to clear the cache every 5 min (and other predefined values), if you add the cache actions module, you get rules based clearing of cache. With the use of rules you are able to setup the clear cache event to fire at a specific time of day (triggered by cron) and other special conditions that you are able to build with the power of rules.