Cache or content representation for more efficient, continual page queries

the laspe plugin can devalidate a cache every 30 minutes just fine. just provide a custom key as well as the objects to be tracked.

$key30Minutes = date('YmdH') . ( (date('i') > 30 ) ? '30' : '00' ) ;
$data = Lapse::io(
    [$key30Minutes, $page,  $collection], // will create key from array of objects
    function () use ($page, $collection) {
        // ... generate data based on current time... 3pm, 4pm whatever
    }
);