일문자 발송건수 쿼리 성능개선
@759984f89de3d90fff0e30f0dc6fc29b29db51b9
--- src/main/java/itn/let/mjo/sttst/service/SttstMsgScheduling.java
+++ src/main/java/itn/let/mjo/sttst/service/SttstMsgScheduling.java
... | ... | @@ -40,7 +40,8 @@ |
| 40 | 40 |
private String GlobalsEnv; |
| 41 | 41 |
|
| 42 | 42 |
/** |
| 43 |
- * mj_sttst_msg 테이블 통계 데이터 생성 |
|
| 43 |
+ * mj_sttst_msg 테이블 통계 데이터 생성 (한시간 한번) |
|
| 44 |
+ * 매시간 43분 47초 실행 |
|
| 44 | 45 |
* insert or update 처리 |
| 45 | 46 |
* @param |
| 46 | 47 |
* @return |
... | ... | @@ -72,6 +73,7 @@ |
| 72 | 73 |
|
| 73 | 74 |
/** |
| 74 | 75 |
* mj_sttst_msg 테이블 통계 데이터 생성 (매일한번) |
| 76 |
+ * 새벽 3시 30분 47초 한번실행 |
|
| 75 | 77 |
* insert or update 처리 |
| 76 | 78 |
* @param |
| 77 | 79 |
* @return |
--- src/main/resources/egovframework/sqlmap/let/sttst/MjonSttstData_SQL_mysql.xml
+++ src/main/resources/egovframework/sqlmap/let/sttst/MjonSttstData_SQL_mysql.xml
... | ... | @@ -6,8 +6,10 @@ |
| 6 | 6 |
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-config-2.dtd"> |
| 7 | 7 |
<sqlMap namespace="MjonSttst"> |
| 8 | 8 |
<typeAlias alias="mjonMsgVO" type="itn.let.mjo.msg.service.MjonMsgVO"/> |
| 9 |
- |
|
| 9 |
+ |
|
| 10 |
+ <!-- 매시간 43분 47초 실행 --> |
|
| 10 | 11 |
<insert id="mjonSttst.insertMjSttstMsgBulk" parameterClass="mjonMsgVO"> |
| 12 |
+ <![CDATA[ |
|
| 11 | 13 |
INSERT INTO MJ_STTST_MSG |
| 12 | 14 |
( |
| 13 | 15 |
send_date |
... | ... | @@ -17,7 +19,6 @@ |
| 17 | 19 |
, API_SUCCESS_CNT |
| 18 | 20 |
, regist_pnttm |
| 19 | 21 |
) |
| 20 |
- |
|
| 21 | 22 |
SELECT |
| 22 | 23 |
aa.regDate |
| 23 | 24 |
, aa.hSendCount |
... | ... | @@ -118,7 +119,8 @@ |
| 118 | 119 |
WHERE 1=1 |
| 119 | 120 |
AND USER_ID NOT IN ('hftest', 'itntest', 'imotest', 'itntestBatch')
|
| 120 | 121 |
AND P.RESERVE_C_YN = 'N' |
| 121 |
- AND P.req_date > DATE_ADD(now(), interval -14 day) |
|
| 122 |
+ AND P.REQ_DATE >= DATE_FORMAT(NOW(),'%Y-%m-%d') |
|
| 123 |
+ AND P.REQ_DATE < DATE_ADD(DATE_FORMAT(NOW(),'%Y-%m-%d'), INTERVAL 1 DAY) |
|
| 122 | 124 |
GROUP BY |
| 123 | 125 |
P.MSG_GROUP_ID |
| 124 | 126 |
)M |
... | ... | @@ -131,9 +133,12 @@ |
| 131 | 133 |
, API_SEND_CNT =aa.aSendCount |
| 132 | 134 |
, API_SUCCESS_CNT =aa.aSuccessCount |
| 133 | 135 |
, regist_pnttm =now() |
| 136 |
+ ]]> |
|
| 134 | 137 |
</insert> |
| 135 | 138 |
|
| 139 |
+ <!-- 새벽 3시 30분 47초 한번실행 --> |
|
| 136 | 140 |
<insert id="mjonSttst.insertMjSttstMsgDayBulk" parameterClass="mjonMsgVO"> |
| 141 |
+ <![CDATA[ |
|
| 137 | 142 |
INSERT INTO MJ_STTST_MSG |
| 138 | 143 |
( |
| 139 | 144 |
send_date |
... | ... | @@ -143,7 +148,6 @@ |
| 143 | 148 |
, API_SUCCESS_CNT |
| 144 | 149 |
, regist_pnttm |
| 145 | 150 |
) |
| 146 |
- |
|
| 147 | 151 |
SELECT |
| 148 | 152 |
aa.regDate |
| 149 | 153 |
, aa.hSendCount |
... | ... | @@ -154,8 +158,10 @@ |
| 154 | 158 |
FROM( |
| 155 | 159 |
SELECT |
| 156 | 160 |
M2.regDate |
| 157 |
- , SUM(M2.sendCount) AS sendCount |
|
| 158 |
- , SUM(M2.successCount) AS successCount |
|
| 161 |
+ , SUM(M2.hSendCount) AS hSendCount |
|
| 162 |
+ , SUM(M2.hSuccessCount) AS hSuccessCount |
|
| 163 |
+ , SUM(M2.aSendCount) AS aSendCount |
|
| 164 |
+ , SUM(M2.aSuccessCount) AS aSuccessCount |
|
| 159 | 165 |
FROM( |
| 160 | 166 |
SELECT |
| 161 | 167 |
M.REQ_DATE AS regDate /*발송일*/ |
... | ... | @@ -241,6 +247,8 @@ |
| 241 | 247 |
WHERE 1=1 |
| 242 | 248 |
AND USER_ID NOT IN ('hftest','itntest','imotest','itntestBatch')
|
| 243 | 249 |
AND P.RESERVE_C_YN = 'N' |
| 250 |
+ AND P.REQ_DATE >= DATE_ADD(DATE_FORMAT(NOW(),'%Y-%m-%d'), INTERVAL -7 DAY) |
|
| 251 |
+ AND P.REQ_DATE < DATE_FORMAT(NOW(),'%Y-%m-%d') |
|
| 244 | 252 |
GROUP BY |
| 245 | 253 |
P.MSG_GROUP_ID |
| 246 | 254 |
)M |
... | ... | @@ -253,6 +261,7 @@ |
| 253 | 261 |
, API_SEND_CNT =aa.aSendCount |
| 254 | 262 |
, API_SUCCESS_CNT =aa.aSuccessCount |
| 255 | 263 |
, regist_pnttm =now() |
| 264 |
+ ]]> |
|
| 256 | 265 |
</insert> |
| 257 | 266 |
|
| 258 | 267 |
<insert id="mjonSttst.insertMjSttstMsgRankBulk" parameterClass="mjonMsgVO"> |
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?