redis.client.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. /**
  2. * 控制器辅助函数。
  3. *
  4. * author: linzhuo
  5. * since: 2016/11/22
  6. */
  7. "use strict";
  8. let configFile = require('../../include/commons').CONFIG_FILE;
  9. let config = require('../../resources/config/' + configFile);
  10. let redis = require('redis');
  11. var log = require("../../util/log.js");
  12. let redisClient = null;
  13. class RedisClient {
  14. constructor() {
  15. this._connection = redis.createClient(
  16. config.redisConfig
  17. );
  18. this._connection.on('ready', function (res) {
  19. log.info('Redis is ready.');
  20. });
  21. this._connection.on('connect', function (res) {
  22. log.info('Redis connected.');
  23. });
  24. }
  25. get connection() {
  26. return this._connection;
  27. }
  28. static redisClient() {
  29. if (redisClient == null) {
  30. redisClient = new RedisClient();
  31. }
  32. return redisClient;
  33. }
  34. //--------------------Redis快捷操作简易封装--------------------------//
  35. /**
  36. * 字符串。
  37. *
  38. * @param key
  39. * @param value
  40. * @param handler
  41. */
  42. setString(key, value, handler) {
  43. this._connection.set(key, value, function (err, res) {
  44. handler(err, res);
  45. })
  46. }
  47. getString(key, handler) {
  48. this._connection.get(key, function (err, res) {
  49. handler(err, res);
  50. })
  51. }
  52. }
  53. module.exports = RedisClient;