RedisKeyEnum.java 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381
  1. package com.webchat.common.enums;
  2. import com.webchat.common.constants.WebConstant;
  3. import lombok.Getter;
  4. import org.apache.commons.lang3.StringUtils;
  5. @Getter
  6. public enum RedisKeyEnum {
  7. /**
  8. * 统一登录授权码缓存
  9. */
  10. OAUTH_CODE_CACHE("OAUTH_CODE_CACHE", 2 * 60L),
  11. /**
  12. * 统一登录授权码兑换计数
  13. */
  14. OAUTH_CODE_GET_COUNT_CACHE("OAUTH_CODE_GET_COUNT_CACHE", 2 * 60L),
  15. /***
  16. * 注册限流,5S内一次
  17. */
  18. USER_REGISTRY_LIMIT("USER_REGISTRY_LIMIT", 5L),
  19. /**
  20. * 创建群聊限流,10S内一次
  21. */
  22. CREATE_GROUP_LIMIT("CREATE_GROUP_LIMIT", 10L),
  23. /**
  24. * 创建机器人防重复触发,10S内一次
  25. */
  26. CREATE_ROBOT_LIMIT("CREATE_ROBOT_LIMIT", 10L),
  27. /**
  28. * 创建公众号防重复触发,10S内一次
  29. */
  30. CREATE_ACCOUNT_LIMIT("CREATE_ACCOUNT_LIMIT", 10L),
  31. /**
  32. * 公众号列表缓存
  33. */
  34. PUBLIC_ACCOUNT_LIST_CACHE("PUBLIC_ACCOUNT_LIST_CACHE", 24 * 60 * 60L),
  35. /**
  36. * 用户信息缓存 缓存7天
  37. */
  38. USER_INFO_CACHE("USER_INFO_CACHE", 7 * 24 * 60 * 60L),
  39. /**
  40. * 用户信息缓存,BY 手机号
  41. */
  42. USER_INFO_BY_MOBILE_CACHE("USER_INFO_BY_MOBILE_CACHE", 3 * 24 * 60 * 60L),
  43. /***
  44. * 私信用户列表
  45. */
  46. MESS_USER_LIST_KEY("MESS_USER_LIST_KEY", -1L),
  47. /***
  48. * 用户私信消息
  49. */
  50. USER_CHAT_MESS_CACHE_KEY("USER_CHAT_MESS_CACHE_KEY", 7 * 24 * 60 * 60L),
  51. /**
  52. * 用户消息生产 消息队列
  53. */
  54. QUEUE_WEB_USER_MESSAGE("QUEUE_WEB_USER_MESSAGE", -1L),
  55. QUEUE_WEB_OPEN_RED_PACKET_MESSAGE("QUEUE_WEB_OPEN_RED_PACKET_MESSAGE", -1L),
  56. /**
  57. * 文章发布消息队列
  58. */
  59. QUEUE_ARTICLE_PUBLISH_MESSAGE("QUEUE_ARTICLE_PUBLISH_MESSAGE", -1L),
  60. /**
  61. * 文章延迟发布消息队列
  62. */
  63. QUEUE_ARTICLE_DELAY_PUBLISH_MESSAGE("QUEUE_ARTICLE_DELAY_PUBLISH_MESSAGE", -1L),
  64. /**
  65. * 消息模板
  66. */
  67. MESSAGE_CONTENT_TEMPLATE_CACHE("MESSAGE_CONTENT_TEMPLATE_CACHE", -1L),
  68. /**
  69. * 消息详情缓存
  70. */
  71. MESSAGE_DETAIL_CACHE("MESSAGE_DETAIL_CACHE", 30 * 24 * 60 * 60L),
  72. /**
  73. * 新消息数缓存
  74. */
  75. MESSAGE_UNREAD_COUNT_CACHE("MESSAGE_UNREAD_COUNT_CACHE", -1L),
  76. /**
  77. * 消息数量缓存
  78. */
  79. MESSAGE_USER_UN_READ_COUNT_CACHE("MESSAGE_USER_UN_READ_COUNT_CACHE", -1L),
  80. /**
  81. * 消息列表缓存
  82. */
  83. MESSAGE_LIST_CACHE("MESSAGE_LIST_CACHE", -1L),
  84. /***
  85. * 私信消息缓存
  86. */
  87. MESS_DETAIL_CACHE_KEY("MESS_DETAIL_CACHE_KEY", -1L),
  88. /**
  89. * 未读私信数量
  90. */
  91. UN_READ_MESS_COUNT_CACHE("UN_READ_MESS_COUNT_CACHE", -1L),
  92. /**
  93. * 未读私信人数量
  94. */
  95. UN_READ_MESS_USER_SET_CACHE("UN_READ_MESS_USER_SET_CACHE", -1L),
  96. /***
  97. * 用户登录Session PREFIX
  98. */
  99. USER_SESSION_PREFIX("USER_SESSION_PREFIX", 3 * 24 * 60 * 60L),
  100. /**
  101. * 群组下成员用户id列表缓存
  102. */
  103. GROUP_USER_ID_LIST_CACHE("GROUP_USER_ID_LIST_CACHE", 7 * 24 * 60 * 60L),
  104. /**
  105. * 用户加入的所有群组
  106. */
  107. USER_ATTEND_GROUP_ID_LIST_CACHE("USER_ATTEND_GROUP_ID_LIST_CACHE", 7 * 24 * 60 * 60L),
  108. /**
  109. * 资源操作的用户列表
  110. */
  111. RESOURCE_BEHAVIOR_USERS_CACHE("RESOURCE_BEHAVIOR_USERS_CACHE", -1L),
  112. /**
  113. * 资源行为计数缓存
  114. */
  115. RESOURCE_BEHAVIOR_COUNT_CACHE("RESOURCE_BEHAVIOR_COUNT_CACHE", -1L),
  116. /***
  117. * 用户点赞的资源列表
  118. */
  119. USER_BEHAVIOR_RESOURCE_CACHE("USER_BEHAVIOR_RESOURCE_CACHE", -1L),
  120. /**
  121. * 社区内容详情缓存
  122. */
  123. MOMENT_DETAIL_CACHE("MOMENT_DETAIL_CACHE", 7 * 25 * 60* 60L),
  124. /**
  125. * 朋友圈动态列表
  126. */
  127. MOMENT_TIME_LINE_CACHE("MOMENT_TIME_LINE_CACHE", 3 * 24 * 60 * 60L),
  128. /**
  129. * 外显评论
  130. */
  131. COMMENT_OUT_LIST_CACHE("COMMENT_OUT_LIST_CACHE", -1L),
  132. /**
  133. * 评论数缓存
  134. */
  135. COMMENT_COUNT_CACHE("COMMENT_COUNT_CACHE", -1L),
  136. /**
  137. * 红包详情
  138. */
  139. RED_PACKET_DETAIL_CACHE("RED_PACKET_DETAIL_CACHE", 2 * 24 * 60 * 60L),
  140. /**
  141. * 用户钱包余额
  142. */
  143. USER_WALLET_BALANCE_CACHE("USER_WALLET_BALANCE_CACHE", 7 * 24 * 60 * 60L),
  144. /**
  145. * 用户钱包余额刷新 加锁
  146. */
  147. REFRESH_USER_WALLET_BALANCE_CACHE_LOCK("USER_WALLET_BALANCE_CACHE_LOCK", -1L),
  148. /**
  149. * 红包累计被抢次数
  150. */
  151. RED_PACKET_GRAD_COUNT("RED_PACKET_GRAD_COUNT", -1L),
  152. /**
  153. * 红包剩余可拆分金额
  154. */
  155. RED_PACKET_BALANCE_COUNT("RED_PACKET_BALANCE_COUNT", -1L),
  156. /**
  157. * 红包领取的用户记录
  158. */
  159. RED_PACKET_OPEN_USERS("RED_PACKET_OPEN_USERS", 25 * 60 * 60L),
  160. /**
  161. * 红包拆分记录
  162. */
  163. RED_PACKET_RECEIVER_TIMELINE_COUNT("RED_PACKET_RECEIVER_TIMELINE_COUNT", -1L),
  164. /**
  165. * 公众号单篇文章详情缓存, 3天有效
  166. */
  167. ARTICLE_DETAIL_CACHE("ARTICLE_DETAIL_CACHE", 3 * 24 * 60 * 60L),
  168. /**
  169. * ES 数据增量同步,最近一次成功同步时间缓存
  170. */
  171. ES_SYNC_LAST_TIME("ES_SYNC_LAST_TIME", -1L),
  172. /**
  173. * 滑块验证码
  174. */
  175. SLIDE_VERIFICATION_CACHE("SLIDE_VERIFICATION_CACHE", 30 * 25 * 60* 60L),
  176. SLIDE_VERIFICATION_TOKEN_CACHE("SLIDE_VERIFICATION_TOKEN_CACHE", 60L),
  177. SLIDE_VERIFICATION_TOKEN_VALIDATE_RESULT_CACHE("SLIDE_VERIFICATION_TOKEN_VALIDATE_RESULT_CACHE", 60L),
  178. /**
  179. * 抽奖活动缓存
  180. */
  181. LOTTERY_ACTIVITY_DETAIL_CACHE("LOTTERY_ACTIVITY_DETAIL_CACHE", 30 * 24 * 60 * 60L),
  182. /**
  183. * 历史抽奖活动缓存
  184. */
  185. LOTTERY_ACTIVITY_HISTORY_CACHE("LOTTERY_ACTIVITY_HISTORY_CACHE", -1L),
  186. /**
  187. * 最近一期活动ID缓存
  188. */
  189. LOTTERY_ACTIVITY_LAST_ID_CACHE("LOTTERY_ACTIVITY_LAST_ID_CACHE", -1L),
  190. /**
  191. * 抽奖活动奖品余量缓存
  192. */
  193. LOTTERY_ACTIVITY_ITEM_STOCK_CACHE("LOTTERY_ACTIVITY_ITEM_STOCK_CACHE", -1L),
  194. /**
  195. * 抽奖商品详情缓存
  196. */
  197. LOTTERY_ACTIVITY_ITEM_DETAIL_CACHE("LOTTERY_ACTIVITY_ITEM_DETAIL_CACHE", 30 * 24 * 60 * 60L),
  198. /**
  199. * 中奖结果缓存
  200. */
  201. LOTTERY_ACTIVITY_ORDER_CACHE("LOTTERY_ACTIVITY_ORDER_CACHE", 30 * 24 * 60 * 60L),
  202. /**
  203. * 订单详情缓存
  204. */
  205. LOTTERY_ACTIVITY_ORDER_DETAIL_CACHE("LOTTERY_ACTIVITY_ORDER_DETAIL_CACHE", 30 * 24 * 60 * 60L),
  206. /**
  207. * 用户中奖结果缓存
  208. */
  209. LOTTERY_ACTIVITY_USER_ORDER_CACHE("LOTTERY_ACTIVITY_USER_ORDER_CACHE", 30 * 24 * 60 * 60L),
  210. /**
  211. * 抽奖结果订单
  212. */
  213. QUEUE_LOTTERY_ORDER_MESSAGE("QUEUE_LOTTERY_ORDER_MESSAGE", -1L),
  214. /**
  215. * 账号关系列表缓存
  216. * 基于sorted set实现
  217. */
  218. ACCOUNT_RELATION_LIST_CACHE("ACCOUNT_RELATION_LIST_CACHE", 2 * 24 * 60 * 60L),
  219. /**
  220. * 待审核的用户好友添加审核列表
  221. */
  222. WAIT_CONFIRM_USER_LIST_CACHE("WAIT_CONFIRM_USER_LIST_CACHE", -1L),
  223. /**
  224. * 最新对话账号列表,基于Sorted set实现
  225. */
  226. CHAT_ACCOUNT_LIST_CACHE("CHAT_ACCOUNT_LIST_CACHE", -1L),
  227. /**
  228. * Redis queue prefix name
  229. */
  230. WEB_CHAT_REDIS_QUEUE("WEB_CHAT_REDIS_QUEUE", -1L),
  231. /**
  232. * Redis 记录群聊房间在线用户
  233. *
  234. */
  235. GROUP_VIDEO_ONLINE_USER_ZSET("GROUP_VIDEO_ONLINE_USER_ZSET", 24 * 60 * 60L),
  236. PAYMENT_ACCESS_TOKEN_CACHE("PAYMENT_ACCESS_TOKEN_CACHE", 2 * 60 * 60L - 60L),
  237. /**
  238. * 支付平台注册应用信息缓存
  239. */
  240. PAYMENT_APP_INFO_CACHE("PAYMENT_APP_INFO_CACHE", 24 * 60 * 60L),
  241. /**
  242. * 支付平台注册应用信息访问凭证缓存
  243. */
  244. PAYMENT_APP_AK_SK_CACHE("PAYMENT_APP_AK_SK_CACHE", 3 * 24 * 60 * 60L),
  245. PAYMENT_DEFAULT_APP_INFO_CACHE("PAYMENT_DEFAULT_APP_INFO_CACHE", 5 * 60 * 60L),
  246. /**
  247. * 应用交易凭证缓存,2小时有效
  248. */
  249. PAYMENT_APP_ACCESS_TOKEN_CACHE("PAYMENT_APP_ACCESS_TOKEN_CACHE", 2 * 60 * 60L),
  250. /**
  251. * 交易分布式事务id缓存
  252. */
  253. PAYMENT_TRANS_ID_CACHE("PAYMENT_TRANS_ID_CACHE", 15 * 60L),
  254. /**
  255. * 消息卡片模版配详情置缓存
  256. */
  257. MESSAGE_CARD_TEMPLATE_CACHE("MESSAGE_CARD_TEMPLATE_CACHE", 24 * 60 * 60L),
  258. /**
  259. * 支付订单缓存
  260. */
  261. PAYMENT_ORDER_CACHE("PAYMENT_ORDER_CACHE", 60 * 60L),
  262. /**
  263. * 刷新红包详情缓存分布式锁
  264. */
  265. LOCK_REFRESH_RED_PACKET_CACHE("LOCK_REFRESH_RED_PACKET_CACHE", 60L),
  266. /**
  267. * 拆红包lock
  268. */
  269. LOCK_OPEN_RED_PACKET("LOCK_OPEN_RED_PACKET", 60L),
  270. /**
  271. * 红包金额预生成金额队列
  272. */
  273. QUEUE_RED_PACKET_AMOUNT("QUEUE_RED_PACKET_AMOUNT", 25 * 60 * 60L),
  274. /**
  275. * 朋友圈动态基础详情缓存
  276. */
  277. MOMENT_BASE_CACHE("MOMENT_BASE_CACHE", 3 * 24 * 60 * 60L),
  278. /**
  279. * 动态详情缓存刷新分布式锁
  280. */
  281. MOMENT_CACHE_REFRESH_LOCK("MOMENT_CACHE_REFRESH_LOCK", 10L),
  282. ;
  283. RedisKeyEnum(String key, Long expireTime) {
  284. this.key = key;
  285. this.expireTime = expireTime;
  286. }
  287. private String key;
  288. /**
  289. * 有效时间,单位秒
  290. */
  291. private long expireTime;
  292. public String getKey(String... suffix) {
  293. StringBuilder tmpSuffix = new StringBuilder();
  294. if (suffix != null && suffix.length > 0) {
  295. for (String str : suffix) {
  296. if (StringUtils.isNotBlank(str)) {
  297. tmpSuffix.append("_").append(str);
  298. }
  299. }
  300. }
  301. return WebConstant.REDIS_KEY_PREFIX + this.name() + tmpSuffix;
  302. }
  303. }