ForgeTotal.js 5
hu

Total.js 5

Lassú eredmények lemezre gyorsítótárazása FILECACHE-sel

Total.js 5 · total5@0.0.19 cacheperformancefiles Total.js 5-tel lefuttatva

A FILECACHE(id, expiration, callback, maker) gyorsítótár-fájlt keres az id-hoz. Ha létezik, és fiatalabb, mint az expiration (szöveg, például '1 minute'), a callback megkapja a tartalmát; különben meghívja a maker(done)-t az érték kiszámolásához, eltárolja és visszaadja. Az eredmény JSON-ként szerializálódik. A CACHE-sel ellentétben túléli az újraindítást, és nagy eredményekhez is jó.

controllers/report.js
exports.install = function() {
	ROUTE('GET /report/', report);
};

var computed = 0;

function report($) {

	FILECACHE('monthly-report', '1 minute', function(err, response) {
		$.json({ report: response, computed: computed });
	}, function(done) {
		// The expensive work goes here
		computed++;
		done(null, { total: 42, generated: computed });
	});
}