일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- sequelize
- 스프링 배치
- 웹해킹
- 포너블
- 사이버보안
- 네트워크
- hackctf
- Batch
- gcp cloud build
- 백준
- gcp ci/cd
- 파이썬
- cloud run
- 웹보안
- Baekjoon
- 회고
- docker
- Python
- gcp
- 리버싱
- node.js
- spring Batch
- programmers
- 보안
- webhacking.kr
- 프로그래머스
- nodejs
- kotest
- pwnable.xyz
- 시스템 해킹
목록스프링 배치 (4)
uju's Tech
먼저 Batch의 사전적 의미는 무엇일까? => 일괄처리 단점을 생각해봐도 잘 모르겠어서 서칭해보았는데 서칭 결과 데이터를 얻는데 오랜 시간이 걸린다? 였었다. 음... 개인적으로는 잘 동감이 안된다. 수 많은 데이터를 사람이 하기에는 너무 비효율적이니 Batch 프로그램을 하는 것이라고 생각하는데 사람이 하는것보다는 훨씬 적게걸리니 단점이라고 말할 수 있을까? (개인적인 생각..) 좀 더 쉽게 이해해보자! 우리가 흔히 듣는 뮤직 앱의 구독 서비스를 예로 들 수 있을 것 같다. 매일매일 수 많은 사람들을 하나하나 구독 갱신을 해줘야 한다고 생각을 해보면 그 만큼 노가다인 일도 없을 것 같다 .. 이러한 경우 매일 Batch를 실행해서 그 날 갱신해야할 사람들을 찾아서 자동으로 구독 갱신을 해주고 있다. ..
개발 중에 기존에 static final로 선언해두었던 JobName과 StepName 변수를 동적으로 할당하고 싶은 경우가 발생하였다. 다른 서비스에서도 해당 클래스를 활용할 수 있도록 확장성을 높이기 위해 static final로 지정되어있던 것을 들어오는 파라미터에 따라서 동적으로 사용해 줄 수 있도록 개발하고 싶었다. 일단 개발하고 있는 것이 Batch라는 것을 생각해본다면 우리는 Job을 가지고있고 그에 따른 JobExecution 또한 가지고있다. JobExecution은 많은 정보를 담고있다. JobInstance, 배치 실행 상태, 시작 시간등 다양한 정보등을 담고있습니다. JobInstance를 보면 jobname 정보를 담고있음을 확인할 수 있다. 그렇다면 StepName은 어떻게 알 ..
개발 중에 서비스에 따라서 Path가 변하도록 확장해주어야 하는 상황이 발생했다. 본론을 말씀드리기 전에 말씀드리면 이 방법은 채택하지 않았으나 이러한 방법도 있다는 것을 공유하기 위해 작성하였습니다. 선택한 방법은 다음 주에 포스팅을 진행하도록 하겠습니다! 간략하게 enum에 대해 소개해보자면 enumeration의 약자로 프로그래밍 언어에서 상수의 그룹을 나타낼 때 사용합니다. Java에서의 enum은 변수, 메소드, 생성자를 추가할 수 있습니다. enum의 첫 번재 라인은 상수 리스트가 되어야하고 메소드, 변수나 생성자가 올 수 있습니다, 모든 enum은 내부적으로 public static final로 정의 됩니다. Step1 . 먼저 enum을 생성해 주자! public class Services..
개발 중에 들어오는 서비스에 따라서 method를 다르게 불러주어야 하는 상황이 발생하였다. 조건 1이면 method1을 실행시켜주는 flow로 작업을 하고 싶었다. 두 가지 방법을 소개해보도록 하겠다! 첫 번째: reflection을 사용하는 방법이다. Map methodMap = new HashMap(); methodMap.put("조건1", 클래스명.class.getMethod("method1")); methodMap.get(key).invoke(null); 위와 같이 put(키 이름, method명) 을 넣어주면 된다. 하지만 reflection의 경우 compile error로 잡하지 않아 중요한 서비스에서 치명적일 수 있다. reflection의 경우 중요한 서비스에서는 지양하는 것이 좋다고 ..