--- src/main/java/com/munjaon/server/queue/pool/QueuePool.java
+++ src/main/java/com/munjaon/server/queue/pool/QueuePool.java
... | ... | @@ -64,9 +64,9 @@ |
| 64 | 64 |
public void pushQueue(BasicMessageDto data) throws Exception {
|
| 65 | 65 |
synchronized(lockMonitor) {
|
| 66 | 66 |
if (queuePool.isEmpty()) {
|
| 67 |
- try{
|
|
| 67 |
+ try {
|
|
| 68 | 68 |
lockMonitor.wait(); |
| 69 |
- }catch(InterruptedException e){
|
|
| 69 |
+ } catch (InterruptedException e) {
|
|
| 70 | 70 |
// 아무 처리도 하지 않는다. |
| 71 | 71 |
} |
| 72 | 72 |
} |
--- src/main/java/com/munjaon/server/queue/pool/ReadQueue.java
+++ src/main/java/com/munjaon/server/queue/pool/ReadQueue.java
... | ... | @@ -195,13 +195,16 @@ |
| 195 | 195 |
/* Pop Counter 증가 및 저장 */ |
| 196 | 196 |
this.popCounter = this.popCounter + 1; |
| 197 | 197 |
writePopCounter(); |
| 198 |
- |
|
| 199 |
- |
|
| 200 | 198 |
} |
| 201 | 199 |
|
| 202 | 200 |
return messageDto; |
| 203 | 201 |
} |
| 204 | 202 |
|
| 203 |
+ public void resetPopCounter(int resetCounter) throws IOException {
|
|
| 204 |
+ this.popCounter = this.popCounter - resetCounter; |
|
| 205 |
+ writePopCounter(); |
|
| 206 |
+ } |
|
| 207 |
+ |
|
| 205 | 208 |
abstract void popBuffer() throws Exception; |
| 206 | 209 |
abstract void getBytesForExtendMessage(BasicMessageDto messageDto) throws UnsupportedEncodingException; |
| 207 | 210 |
abstract void initDataBuffer(); |
--- src/main/java/com/munjaon/server/server/service/QueueServerService.java
+++ src/main/java/com/munjaon/server/server/service/QueueServerService.java
... | ... | @@ -213,8 +213,18 @@ |
| 213 | 213 |
|
| 214 | 214 |
// DB 처리한 카운트에 대한 처리 |
| 215 | 215 |
if (DB_PROC_COUNT > 0) {
|
| 216 |
- worker.saveMessageForList(list); |
|
| 217 |
- Thread.sleep(10); |
|
| 216 |
+ boolean isError = false; |
|
| 217 |
+ try {
|
|
| 218 |
+ worker.saveMessageForList(list); |
|
| 219 |
+ Thread.sleep(10); |
|
| 220 |
+ } catch (Exception e) {
|
|
| 221 |
+ saveLog(e); |
|
| 222 |
+ isError = true; |
|
| 223 |
+ } |
|
| 224 |
+ /* DB 적재 실패시 처리 */ |
|
| 225 |
+ if (isError) {
|
|
| 226 |
+ readQueue.resetPopCounter(DB_PROC_COUNT); |
|
| 227 |
+ } |
|
| 218 | 228 |
} else {
|
| 219 | 229 |
Thread.sleep(100); |
| 220 | 230 |
} |
--- src/main/java/com/munjaon/server/server/task/CollectServerTask.java
+++ src/main/java/com/munjaon/server/server/task/CollectServerTask.java
... | ... | @@ -756,10 +756,10 @@ |
| 756 | 756 |
saveLog(printTaskLog() + "[REMOTE IP : " + connectUserDto.getRemoteIP() + "]"); |
| 757 | 757 |
saveLog(printTaskLog() + "[ALLOW IP BASIC : " + memberDto.getAllowIpBasic() + "]"); |
| 758 | 758 |
saveLog(printTaskLog() + "[ALLOW IP EXTEND : " + memberDto.getAllowIpExtend() + "]"); |
| 759 |
- if (memberDto.getAllowIpBasic() != null && connectUserDto.getRemoteIP().equals(memberDto.getAllowIpBasic())) {
|
|
| 759 |
+ if (memberDto.getAllowIpBasic() != null && connectUserDto.getRemoteIP().indexOf(memberDto.getAllowIpBasic()) >= 0) {
|
|
| 760 | 760 |
isPermit = true; |
| 761 | 761 |
} |
| 762 |
- if (memberDto.getAllowIpExtend() != null && connectUserDto.getRemoteIP().equals(memberDto.getAllowIpExtend())) {
|
|
| 762 |
+ if (memberDto.getAllowIpExtend() != null && connectUserDto.getRemoteIP().indexOf(memberDto.getAllowIpExtend()) >= 0) {
|
|
| 763 | 763 |
isPermit = true; |
| 764 | 764 |
} |
| 765 | 765 |
} else {
|
Add a comment
Delete comment
Once you delete this comment, you won't be able to recover it. Are you sure you want to delete this comment?