- Rp2κΈ°
- aligoapi
- SSL
- merge sort
- spring μμ λ‘κ·ΈμΈ
- ν¨μ€νΈμΊ νΌμ€XμΌλμ
- MethodArgumentNotValidException
- java error
- 리λ μ€ λͺ λ Ήμ΄
- GIT
- Unity
- springμΌλ‘ https μ μ©
- κ΅¬κΈ μμ λ‘κ·ΈμΈ
- RP 2κΈ°
- SQL
- datagrip
- C++
- node js
- Quick Sort
- MAKE US
- docker
- OpenAPI
- Spring
- mysql
- spring κ΅¬κΈ μμ λ‘κ·ΈμΈ
- @CreatedDate
- Java
- Data Structure
- DATABASE
- μμ€ν μννΈμ¨μ΄
YS's develop story
NodeJS Node-Scheduleλ‘ νΉμ μκ°μ μ€ν ν μμ μμ½νκΈ° π€ λ³Έλ¬Έ
NodeJS Node-Scheduleλ‘ νΉμ μκ°μ μ€ν ν μμ μμ½νκΈ° π€
Yusang 2021. 7. 20. 07:56π€ NodeJS Node Scheduleλ‘ νΉμ μκ°μ μ€νν μμ μμ½νκΈ°
β Problem
μμ½μκ° 1μκ° μ μ μ¬μ©μμκ² μμ½ νμΈ νΈμ μλ¦Όμ μ μ‘νλ €κ³ λ‘μ§μ μ§λ μ€μΈλ°
μ΄λ»κ² νλ©΄ 1μκ° μ μ μλ¦Όμ 보λΌμ§ κ³ λ―Όμ νκ² λμμ΅λλ€. π
FCMμ νμ©νλ©΄ μ¬μ©μκ° μμ½μ ν λ νΉμ μκ°μ μλ¦Όμ 보λ΄λλ‘ μ€μ ν μ μμ§λ§
μ¬μ©μκ° μμ½μ μ·¨μνκ² λλλΌλ κ·Έ μλ¦Όμ μ μ‘λλ€λ λ¬Έμ μ μ΄ μμ΅λλ€.
μ¬μ©μκ° μμ½μ ν ν μμ½μ μ·¨μνμ§ μμμ κ²½μ°μλ§ μμ½ μκ° ν μκ° μ μ
λ± μλ¦Όμ λ³΄λΌ μ μλ λ°©λ²μ μμκΉμ?
π Solution
Node Schedule λͺ¨λμ νμ©ν΄μ νΉμ μκ°μ λ΄κ° μνλ μ½λκ° μλλλλ‘ ν μ μμ΅λλ€.
μ΄ λͺ¨λμ νμ©ν΄μ μμ½μκ° ν μκ° μ μ μ¬μ©μμ μμ½μνλ₯Ό νμΈνκ³
μ¬μ©μμ μμ½μ΄ μ·¨μλμ§ μμλ€λ©΄ νΈμ μλ¦Όμ 보λ΄λλ‘ λ‘μ§μ ꡬμ±νλ©΄ λ©λλ€. π
npm install node-schedule
μμ κ°μ λͺ λ Ήμ΄λ‘ node-scheduleλ₯Ό μ€μΉν΄ μ€λλ€.
const schedule = require('node-schedule');
node-scheduleλ₯Ό μ¬μ©ν κ²μμ λͺ μν΄ μ€λλ€.
let date = new Date(reservationTime);
date.setHours(data.getHours() - 1);
μ¬μ©μμκ² μ λ ₯λ°μ μκ°μΌλ‘λΆν° 1μκ° μ μ μλ¦Όμ΄ κ°λλ‘ λ‘μ§μ ꡬμ±νμ΅λλ€.
μ°Έκ³ λ‘...
NodeJSμ new Date()λ OSμ 무κ΄νκ² UTC μκ°μ λ°νν©λλ€.
κ·Έλμ KSTλ₯Ό μ»κ³ μΆμΌλ©΄ 9μκ°μ λν΄μ£Όμ΄μΌ ν©λλ€.
κ·Έλμ μ²μμ console.logλ‘ μκ°μ 체ν¬νμ λ μ κ° μνλ μκ°μ΄ λμ€μ§ μμμ λ§μ΄ ν€λ§Έλλ°
console.logλ‘ μΆλ ₯λλ μκ°μ μ ν μκ΄νμ§ μμλ λ©λλ€.
schedule.scheduleJob(date, function () {
console.log("μ
λ ₯ν dateμκ°μ μ΄λ₯Ό μΆλ ₯ν΄ μ€λλ€!.")
});
μ°μ μ€μΌμ€λ¬λ₯Ό ν μ€νΈνκΈ° μν΄ μμ κ°μ΄ νΉμ μκ°μ console.logκ° μΆλ ₯λλμ§ νμΈν΄ 보μμ΅λλ€.
κ²°κ³Όλ μμ²λΌ μ λμμ΅λλ€.
.....
.....
schedule.scheduleJob(date, async function () {
try {
console.log("μ€μΌμ€λ¬ μ€ν");
const checkReservationRows = await reservationDao.checkReservation(
connection,
reservationIdx
);
if (checkReservationRows[0].CNT == 1) {
await reservationProvider.postFcm(
estimateIdx,
reservationTime,
userIdx);
} else {
console.log(userIdx+"λ² μ μ μ μμ½μ μ μνμ§ μμ νΈμμλ¦Όμ΄ μ μ‘λμ§ μμ.")
}
} catch (e) {
console.log(e);
}
});
μ΄λ₯Ό νμ©νμ¬ μμ½ ν μκ° μ μ μ¬μ©μμ μμ½μ΄ μ ν¨νμ§ νμΈμ νκ³ ,
μ ν¨νλ€λ©΄ κ·Έ μ¬μ©μμκ² νΈμ μλ¦Όμ μ μ‘νλ λ‘μ§μ ꡬμ±νμμ΅λλ€.
μ μ¬μ΄νΈμμ node-scheduleκ³Ό κ΄λ ¨λ μμΈν κΈ°λ₯λ€μ νμΈν μ μμ΅λλ€.
νΉμ μκ°μ μ€νλλλ‘ ν μ μμ λΏλ§ μλλΌ, 맀주 μμμΌμ μ€νλλλ‘ ν μλ μκ³
λ°λ³΅λλλ‘ μ€μ ν μ λ μμ΅λλ€.
'κΈ°ν' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
μλ¦¬κ³ μΉ΄μΉ΄μ€ μλ¦Όν‘ API μ°λνκΈ° (with Node js) (0) | 2021.08.04 |
---|---|
Open API νμ©νμ¬ κ³΅ν΄μΌ μ 보 DBμ μ μ₯ λ° λΆλ¬μ€κΈ° with request module π (0) | 2021.07.21 |
IntelliJ μ½λ μλ μ λ ¬ κ΄λ ¨ π (0) | 2021.07.15 |
Node Js, OpenAPIλ₯Ό νμ©νμ¬ λ°μ΄ν°λ₯Ό DBμ μ μ₯νκΈ° (Request.js) (1) | 2021.06.25 |
C# REST API νΈμΆνκΈ° (RestSharp μ΄μ©) (1) | 2021.03.25 |