From be7cbe2d6fbf839d8595af28e5a5517928eb744c Mon Sep 17 00:00:00 2001
From: xxy <773861846@qq.com>
Date: Tue, 26 May 2020 00:04:00 +0800
Subject: [PATCH] =?UTF-8?q?=E6=AC=B2=E5=BC=95=E5=85=A5Redisson=E6=A1=86?=
 =?UTF-8?q?=E6=9E=B6=E5=AE=9E=E7=8E=B0=E5=88=86=E5=B8=83=E5=BC=8F=E9=94=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../com/java2nb/novel/core/listener/BookVisitAddListener.java   | 2 ++
 .../java/com/java2nb/novel/core/schedule/BookToEsSchedule.java  | 2 ++
 2 files changed, 4 insertions(+)

diff --git a/novel-front/src/main/java/com/java2nb/novel/core/listener/BookVisitAddListener.java b/novel-front/src/main/java/com/java2nb/novel/core/listener/BookVisitAddListener.java
index fa23abb..350b8a2 100644
--- a/novel-front/src/main/java/com/java2nb/novel/core/listener/BookVisitAddListener.java
+++ b/novel-front/src/main/java/com/java2nb/novel/core/listener/BookVisitAddListener.java
@@ -50,6 +50,8 @@ public class BookVisitAddListener {
 
         log.debug("收到更新数据库消息:" + bookId);
         Thread.sleep(1000 * 2);
+        //TODO 操作共享资源visitCount,集群环境下有线程安全问题,引入Redisson框架实现分布式锁
+        //目前visitCount不重要,数据可丢失,暂不实现分布式锁
         Integer visitCount = (Integer) cacheService.getObject(CacheKey.BOOK_ADD_VISIT_COUNT+bookId);
         if(visitCount == null){
             visitCount = 0 ;
diff --git a/novel-front/src/main/java/com/java2nb/novel/core/schedule/BookToEsSchedule.java b/novel-front/src/main/java/com/java2nb/novel/core/schedule/BookToEsSchedule.java
index 1da9ca7..a179255 100644
--- a/novel-front/src/main/java/com/java2nb/novel/core/schedule/BookToEsSchedule.java
+++ b/novel-front/src/main/java/com/java2nb/novel/core/schedule/BookToEsSchedule.java
@@ -48,6 +48,8 @@ public class BookToEsSchedule {
      */
     @Scheduled(fixedRate = 1000 * 60)
     public void saveToEs() {
+        //TODO 引入Redisson框架实现分布式锁
+        //可以重复更新,只是效率可能略有降低,所以暂不实现分布式锁
         if (cacheService.get(CacheKey.ES_TRANS_LOCK) == null) {
             cacheService.set(CacheKey.ES_TRANS_LOCK, "1", 60 * 20);
             try {