幸运24-雪花主键-mq-根据insertRow跳出
This commit is contained in:
@@ -28,6 +28,7 @@ import org.springframework.util.CollectionUtils;
|
|||||||
|
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
import java.util.Optional;
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@Service
|
@Service
|
||||||
@@ -96,7 +97,12 @@ public class Lucky24MessageService extends BaseService implements InitializingBe
|
|||||||
Gift gift = giftService.getGiftById(giftMessage.getGiftId());
|
Gift gift = giftService.getGiftById(giftMessage.getGiftId());
|
||||||
Date createTime = new Date(giftMessage.getCreateTime());
|
Date createTime = new Date(giftMessage.getCreateTime());
|
||||||
|
|
||||||
Lucky24Record record = insertRecordV2(giftMessage);
|
Optional<Lucky24Record> recordOptional = insertRecordIgnore(giftMessage);
|
||||||
|
if (recordOptional.isEmpty()){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
Lucky24Record record = recordOptional.get();
|
||||||
|
|
||||||
log.info("【处理lucky24 mq】 record 插入成功 messId:{} recordId:{} record:{}",
|
log.info("【处理lucky24 mq】 record 插入成功 messId:{} recordId:{} record:{}",
|
||||||
giftMessage.getMessId(), record.getId(), JSON.toJSONString(record));
|
giftMessage.getMessId(), record.getId(), JSON.toJSONString(record));
|
||||||
@@ -159,7 +165,12 @@ public class Lucky24MessageService extends BaseService implements InitializingBe
|
|||||||
return record;
|
return record;
|
||||||
}
|
}
|
||||||
|
|
||||||
private Lucky24Record insertRecordV2(Lucky24Message giftMessage) {
|
private Optional<Lucky24Record> insertRecordIgnore(Lucky24Message giftMessage) {
|
||||||
|
|
||||||
|
long startTime = System.currentTimeMillis();
|
||||||
|
long getPoolTime = 0;
|
||||||
|
long insertTime = 0;
|
||||||
|
|
||||||
Lucky24Record record = new Lucky24Record();
|
Lucky24Record record = new Lucky24Record();
|
||||||
|
|
||||||
if (null == giftMessage.getId()){
|
if (null == giftMessage.getId()){
|
||||||
@@ -183,6 +194,7 @@ public class Lucky24MessageService extends BaseService implements InitializingBe
|
|||||||
if (null != pool){
|
if (null != pool){
|
||||||
record.setPoolType(pool.getType());
|
record.setPoolType(pool.getType());
|
||||||
}
|
}
|
||||||
|
getPoolTime = System.currentTimeMillis();
|
||||||
}
|
}
|
||||||
|
|
||||||
record.setIsSupplement(giftMessage.getIsSupplement());
|
record.setIsSupplement(giftMessage.getIsSupplement());
|
||||||
@@ -192,9 +204,16 @@ public class Lucky24MessageService extends BaseService implements InitializingBe
|
|||||||
record.setCreateTime(new Date(giftMessage.getCreateTime()));
|
record.setCreateTime(new Date(giftMessage.getCreateTime()));
|
||||||
record.setStockResult(giftMessage.getStockResult());
|
record.setStockResult(giftMessage.getStockResult());
|
||||||
|
|
||||||
recordService.insertRecordIgnore(record);
|
int insertRow = recordService.insertRecordIgnore(record);
|
||||||
|
long endTime = System.currentTimeMillis();
|
||||||
|
|
||||||
return record;
|
log.info("insertLucky24RecordIgnore row {} performance - getPool: {}ms, insert: {}ms, total: {}ms",
|
||||||
|
insertRow,
|
||||||
|
getPoolTime - startTime,
|
||||||
|
insertTime - getPoolTime,
|
||||||
|
endTime - startTime);
|
||||||
|
|
||||||
|
return Optional.ofNullable(insertRow > 0 ? record : null);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@@ -65,16 +65,8 @@ public class Lucky24RecordService extends ServiceImpl<Lucky24RecordMapper, Lucky
|
|||||||
return record;
|
return record;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void insertRecordIgnore(Lucky24Record record) {
|
public int insertRecordIgnore(Lucky24Record record) {
|
||||||
long startTime = System.currentTimeMillis();
|
return baseMapper.insertIgnore(record);
|
||||||
|
|
||||||
int insertRow = baseMapper.insertIgnore(record);
|
|
||||||
|
|
||||||
long endTime = System.currentTimeMillis();
|
|
||||||
|
|
||||||
log.info("insertLucky242RecordIgnore row {} performance - insert: {}ms",
|
|
||||||
insertRow,
|
|
||||||
endTime - startTime);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void insertRecord(Lucky24Record record) {
|
public void insertRecord(Lucky24Record record) {
|
||||||
|
@@ -57,7 +57,7 @@ public class RocketMQService {
|
|||||||
List<Message<String>> messageList = lucky24Messages.stream()
|
List<Message<String>> messageList = lucky24Messages.stream()
|
||||||
.map(giftMessage -> MessageBuilder.withPayload(JSON.toJSONString(giftMessage)).build())
|
.map(giftMessage -> MessageBuilder.withPayload(JSON.toJSONString(giftMessage)).build())
|
||||||
.collect(Collectors.toList());
|
.collect(Collectors.toList());
|
||||||
mqMessageProducer.send(MqConstant.LUCKY_24_TOPIC, messageList,
|
mqMessageProducer.send(MqConstant.LUCKY_24_V2_TOPIC, messageList,
|
||||||
sendResult -> log.info("sendLucky24Message success result: {} message: {}", JSON.toJSONString(sendResult), messageList),
|
sendResult -> log.info("sendLucky24Message success result: {} message: {}", JSON.toJSONString(sendResult), messageList),
|
||||||
throwable -> log.error("sendLucky24Message fail message: {}", messageList, throwable));
|
throwable -> log.error("sendLucky24Message fail message: {}", messageList, throwable));
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user