Bug:Fix file validation issue
[vnfsdk/refrepo.git] / vnfmarket / src / main / webapp / vnfmarket / node_modules / redis / benches / stress / rpushblpop / pub.js
1 'use strict';
2
3 var freemem = require('os').freemem;
4 //var profiler = require('v8-profiler');
5 var codec = require('../codec');
6
7 var sent = 0;
8
9 var pub = require('redis').createClient(null, null, {
10         //command_queue_high_water: 5,
11         //command_queue_low_water: 1
12 })
13 .on('ready', function() {
14         this.del('timeline');
15         this.emit('drain');
16 })
17 .on('drain', function() {
18         process.nextTick(exec);
19 });
20
21 var payload = '1'; for (var i = 0; i < 12; ++i) payload += payload;
22 console.log('Message payload length', payload.length);
23
24 function exec() {
25         pub.rpush('timeline', codec.encode({ foo: payload }));
26         ++sent;
27         if (!pub.should_buffer) {
28                 process.nextTick(exec);
29         }
30 }
31
32 //profiler.takeSnapshot('s_0');
33
34 exec();
35
36 setInterval(function() {
37         //var ss = profiler.takeSnapshot('s_' + sent);
38         //console.error(ss.stringify());
39         pub.llen('timeline', function(err, result) {
40                 console.error('sent', sent, 'free', freemem(),
41                         'cmdqlen', pub.command_queue.length, 'offqlen', pub.offline_queue.length,
42                         'llen', result
43                 );
44         });
45 }, 2000);
46
47 /*setTimeout(function() {
48         process.exit();
49 }, 30000);*/