Laravel - command 만들기
조회수: 31
요즘 생각하면서 글을 쓰면 진행이 되지 않아서 대충 쓰려고 하고 있다.
이번에도 그렇게 해보겠다.
라라벨에 코맨드(코만드)를 만들어서 사용할 때가 많을 수 있다.
보통 정해진 시간에 스케줄에 맞게 실행이 되도록 할 때 사용하면 된다.
예전에 주식 RSI 계산을 매일 하라고 세팅을 해두었었다.
최근까지 귀찮아서 방치하고 있다가 방금 하나 만들었다.
각 도시에 해당하는 장소를 카운트하는 게 시간이 꽤 걸리는 걸 파악했다.
해당 페이지에서 약 360ms 나왔다. 이걸 72ms 줄였다. 더 줄일 수 있는데 나중에 하자. 귀찮다.
아무래도 장소랑 도시가 점점 늘어지면서 점점 그렇게 되었다.
이제 매일 또는 일주일 x번 정해진 x시간에 count 시키게 적용을 할 수 있다.
우선 command를 만들기 위해서는 터미널에서 실행해야 한다.
이건 command 명령 실행할 때 이름용이다.
이건 해당 코맨드에 대한 설명이다.
이번에도 그렇게 해보겠다.
라라벨에 코맨드(코만드)를 만들어서 사용할 때가 많을 수 있다.
보통 정해진 시간에 스케줄에 맞게 실행이 되도록 할 때 사용하면 된다.
예전에 주식 RSI 계산을 매일 하라고 세팅을 해두었었다.
최근까지 귀찮아서 방치하고 있다가 방금 하나 만들었다.
각 도시에 해당하는 장소를 카운트하는 게 시간이 꽤 걸리는 걸 파악했다.
해당 페이지에서 약 360ms 나왔다. 이걸 72ms 줄였다. 더 줄일 수 있는데 나중에 하자. 귀찮다.
아무래도 장소랑 도시가 점점 늘어지면서 점점 그렇게 되었다.
이제 매일 또는 일주일 x번 정해진 x시간에 count 시키게 적용을 할 수 있다.
우선 command를 만들기 위해서는 터미널에서 실행해야 한다.
php artisan make:command CountPlacesEachCity
protected $signature = 'count:places';
이건 command 명령 실행할 때 이름용이다.
protected $description = 'Count places each city';
이건 해당 코맨드에 대한 설명이다.
php artisan list
실행하면 이름이랑 설명이 나온다.
실행은 php artisan count:places
이렇게 하면 실행이 된다.
실행 코드는 handle()
에 넣으면 된다.
public function handle() {
// 여기에 본인이 원하는 기능 삽입
}
완성이다.handle()
안에 모든 걸 한 곳에 넣기 싫으면 따로 로직을 빼면 된다.
예전에 Services로 따로 빼서 관리를 했다.
스케줄 적용은 따로 글 적어보겠다 다음에.
대충 글 쓰면 진도가 잘 나간다.