- 검색 정렬 옵션 추가 (최신순, 조회수순, 관련성순) - 기본 정렬을 최신순으로 변경 - 인피니티 스크롤 최적화 (첫 20개 빠르게 로드, 스크롤 시 추가) - extract_flat 파라미터 추가로 검색 성능 개선 - 서버 캐시로 중복 요청 방지 - UI 개선: 검색 결과 종료 메시지 추가 - 버전 업데이트: 0.1.2 → 0.2.0
84 lines
2.3 KiB
Bash
Executable File
84 lines
2.3 KiB
Bash
Executable File
#!/bin/bash
|
|
# FlaskFarm + Celery 전체 재시작 스크립트
|
|
# 사용법: ./restart_all.sh
|
|
|
|
cd /Volumes/WD/Users/Work/python/flaskfarm
|
|
|
|
# 색상 정의
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
NC='\033[0m' # No Color
|
|
|
|
echo -e "${YELLOW}========================================${NC}"
|
|
echo -e "${YELLOW} FlaskFarm + Celery 전체 재시작${NC}"
|
|
echo -e "${YELLOW}========================================${NC}"
|
|
|
|
# ---------------------------
|
|
# 1. 기존 프로세스 종료
|
|
# ---------------------------
|
|
echo -e "\n${RED}[1/4] 기존 프로세스 종료 중...${NC}"
|
|
|
|
# FlaskFarm 프로세스 종료
|
|
pkill -9 -f "python main.py" 2>/dev/null
|
|
lsof -ti :9099 | xargs kill -9 2>/dev/null
|
|
echo " ✓ FlaskFarm 프로세스 종료됨"
|
|
|
|
# Celery 워커 종료
|
|
pkill -9 -f "celery.*worker" 2>/dev/null
|
|
pkill -9 -f "celery -A flaskfarm" 2>/dev/null
|
|
echo " ✓ Celery 워커 종료됨"
|
|
|
|
# 잠시 대기 (포트 해제 등)
|
|
sleep 2
|
|
|
|
# ---------------------------
|
|
# 2. pyenv 초기화
|
|
# ---------------------------
|
|
echo -e "\n${GREEN}[2/4] Python 환경 초기화 중...${NC}"
|
|
export PYENV_ROOT="$HOME/.pyenv"
|
|
export PATH="$PYENV_ROOT/bin:$PATH"
|
|
if command -v pyenv &> /dev/null; then
|
|
eval "$(pyenv init -)"
|
|
eval "$(pyenv virtualenv-init -)" 2>/dev/null
|
|
fi
|
|
export GEVENT_NOWAITPID=1
|
|
export PYTHONWARNINGS="ignore::DeprecationWarning"
|
|
echo " ✓ Python 환경 준비됨"
|
|
|
|
# ---------------------------
|
|
# 3. Celery 워커 시작 (백그라운드)
|
|
# ---------------------------
|
|
echo -e "\n${GREEN}[3/4] Celery 워커 시작 중 (백그라운드)...${NC}"
|
|
|
|
# 로그 파일 경로
|
|
CELERY_LOG_DIR="data/log"
|
|
mkdir -p "$CELERY_LOG_DIR"
|
|
CELERY_LOG_FILE="$CELERY_LOG_DIR/celery_worker.log"
|
|
|
|
# Celery 워커 시작
|
|
nohup celery -A main.celery worker \
|
|
--loglevel=info \
|
|
--pool=gevent \
|
|
--concurrency=4 \
|
|
--config_filepath=data/config_mac.yaml \
|
|
--running_type=local \
|
|
> "$CELERY_LOG_FILE" 2>&1 &
|
|
|
|
CELERY_PID=$!
|
|
echo " ✓ Celery 워커 시작됨 (PID: $CELERY_PID)"
|
|
echo " ✓ 로그: $CELERY_LOG_FILE"
|
|
|
|
# Celery가 시작될 시간 확보
|
|
sleep 2
|
|
|
|
# ---------------------------
|
|
# 4. FlaskFarm 시작 (포어그라운드)
|
|
# ---------------------------
|
|
echo -e "\n${GREEN}[4/4] FlaskFarm 시작 중...${NC}"
|
|
echo -e "${YELLOW}========================================${NC}"
|
|
echo ""
|
|
|
|
# FlaskFarm 시작 (gommi_mac.sh 호출)
|
|
./gommi_mac.sh
|