-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtestRedis.js
More file actions
110 lines (101 loc) · 3.54 KB
/
testRedis.js
File metadata and controls
110 lines (101 loc) · 3.54 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
var BitMap = require('redis-bitmap')
, redis = require('redis')
, db = redis.createClient(6379
, 'ec2-52-78-76-64.ap-northeast-2.compute.amazonaws.com'
// , '127.0.0.1'
// , {detect_buffers: true}
, {return_buffers: true})
, bmap = new BitMap(db);
//bmap.setbit('meow', 0, 1, redis.print) // 1
//bmap.setbit('meow', 2, 1, redis.print) // 1
//bmap.setbit('meow', 4, 1, redis.print) // 1
//
//bmap.setbit('bark', 1, 1, redis.print) // 1
//bmap.setbit('bark', 2, 1, redis.print) // 1
//bmap.setbit('bark', 7, 1, redis.print) // 1
//bmap.setbit('bark', 5002, 0, redis.print) // 1
//bmap.setbit('bark', 8, 0, redis.print) // 1
//bmap.get('meow', redis.print) // 00010101
//bmap.get('bark', redis.print) // 10000110
//console.time('Time');
//bmap.get('bark', function(err, bitarray){
// var bits = bitarray.toJSON() //
// var binary = bitarray.toString() //
// var count = bitarray.cardinality() //
//// console.log(bits);
//// console.log(binary);
// console.log("count", count);
// console.log("test", bits[0]);
// console.log("test", bits[1]);
// console.log("test", bits[2]);
// console.timeEnd('Time');
//
//}) // 10000110
////bmap.xor('meow', 'bark', redis.print) // 10010011
////bmap.or('meow', 'bark', redis.print) // 10010111
//bmap.and('meow', 'bark', redis.print) // 00000100
////bmap.not('meow', redis.print) // 11101010
////bmap.not('bark', redis.print) // 01111001
//=========================
var express = require('express'),
router = express.Router();
var redis = require('redis');
//var JSON = require('JSON');
var client = redis.createClient(6379,'ec2-52-78-76-64.ap-northeast-2.compute.amazonaws.com');
//app.use(function(req, res, next){
// req.cache = client;
// next();
//})
//var mUtil = require('./middleware/utilities');
router.get('/bitmap', function(req,res,next){
console.time('bitmap');
bmap.setbit('bark1', 1, 1, redis.print) // 1
bmap.setbit('bark1', 2, 1, redis.print) // 1
bmap.setbit('bark1', 7, 1, redis.print) // 1
bmap.setbit('bark1', 6, 1, redis.print) // 1
bmap.setbit('bark1', 8, 1, redis.print) // 1
// bmap.setbit('bark1', 150002, 1, redis.print) // 1
bmap.get('bark1', function(err, bitarray){
var bits = bitarray.toJSON() //
var binary = bitarray.toString() //
var count = bitarray.cardinality() //
// console.log(bits); //like an array
// console.log(binary);
// console.log(count);
console.log("test", bits[0]);
console.log("test", bits[1]);
console.log("test", bits[2]);
console.timeEnd('bitmap');
res.send({error: false, message:count});
});
});
router.post('/profile',function(req,res,next){
// req.accepts('application/json');
console.time("profile");
var key = req.body.name;
var value = JSON.stringify(req.body);
req.cache.set(key, value, function(err,data){
if(err){
console.log(err);
res.send("error "+err);
return;
}
req.cache.expire(key, 30); //30초 뒤 삭제
res.send(value);
console.log(value);
console.timeEnd("profile");
});
});
router.get('/profile/:name',function(req,res,next){
var key = req.params.name;
req.cache.get(key,function(err,data){
if(err){
console.log(err);
res.send("error "+err);
return;
}
var value = JSON.parse(data);
res.send(value);
});
});
module.exports = router;