로우쿼리 개선 방법 문의드립니다 naver.php
본문
영카트를 잘 사용하고 있습니다 벌써 쇼핑몰이
꾸준하게 늘어가고 있는데
문제는 바로 네이버페이와 연동 시키는 naver.php (/shop/price/naver.php)
이게 하루에 4번 정보를 가져가다 보니 트레픽이 장난이 아니여서
php 를 실행시키면 텍스트 파일로 출력하여 생성하게 만들었습니다
근대 문제는 php 파일을 실행시킬때 (호스팅 업체에 문의 결과 로우쿼리 때문에 안된다)
페이지가 작동하지 않습니다 라는 메시지가 호출 되면서 작동을 멈춤니다..
상품이 40만개 정도 되는데
이부분을 개선할 수 있는 방법이 있을까요?
호스팅 현재 월 3천원 정도 아주 저렴한 호스팅을 사용중입니다
다른건 속도건 뭐건 다 정말 마음에 드는데 단하나 php 파일 저거 작동이 됐다 안됐다 합니다
답변 3
상품이 40만개 정도 쿼리 돌리는데 로우쿼리로 멈추는 일은 없을 것 같습니다.
단 40만개를 for문으로 돌릴때 처리 되는 부분에 여러개의 쿼리 문이 작동합니다. 꼭 필요한 부분 빼곤 삭제 하시는게 어떨지...
필수가 아닌 권장 입력사항에서 보시고 필요 없는 부분은 기능삭제를 추천드립니다.
로우 쿼리라는게 무슨 말인가요??
"파일 저거 작동이 됐다 안됐다"는 아마 서버 response timeout 때문에 그런 것 같습니다.
정확히 무엇을 원하는건지 구체적으로 말씀해주시면 좋을 것 같습니다.
단순하게 작동만 하게 되는걸 원하면 그냥 timeout을 조금 더 늘려주시거나.
DB튜닝을 원하는거면 제작의뢰게시판 가셔서 튜닝해달라고 하시거나, 아니면 본인이 직접 하시거나.
그렇게 하시면 될 것 같습니다.
"텍스트 파일로 출력하여 생성하게 만들었습니다." 라는 말이 무슨말인가요?
php 파일이 텍스트 파일로부터 입력을 받아서, 출력을 받는다는 건가요.
아니면, php 파일로 DB를 이용해서 받은 내용을 파일에다가 출력한다는 건가요?
서버내부에서 루프 돌리면서 외부통신하는거 같은데 그럼 타임아웃내에서 처리되도록 구성해야되죠.
그게 안되면 서버내부에서 루프 돌리는 부분하고 외부 통신 부분을 분리해서 처리해야 합니다.
그것도 안되면 외부통신하는 부분을 비동기 적으로 구성해야 하는데 그거는 데이터 누락이 생길 수 있어서 비추...
아니면 타임아웃내에 처리되도록 쪼개서 돌리세요. 제가 자주 쓰는 방법임.