php ajax response 시간

php ajax response 시간

QA

php ajax response 시간

본문

안녕하세요

 

제가 엑셀로된 물품목록을 업로드하고

 

ajax로 php db insert하고, insert 다 되면 ajax success로 마이페이지로 가게끔해놨는데,

 

물품을 만개씩 올리면 ajax success로 안가고 그냥 그화면에서 멈춰버리더라구요.(물품은 정상적으로 다 올라감)

 

짧으면 이런일 없이 마이페이지로 잘가지던데,

 

서버에서 설정같은게 되어있는건가요?

 

일정시간지나면 응답을 못 받는다던지

이 질문에 댓글 쓰기 :

답변 6

ajax호출페이지를 주소창에서 직접 호출 되도록 실행해보면 

mysql server has gone away 메세지가 마지막에 나올 것입니다

서버설정보다 큰 데이터를 insert할때 나오게 됩니다

mysql server has gone away<-- 이것을 구글 검색해보세요

 

트래픽 테러를 방지하기 위해서 짧은 시간에 같은 링크를 계속해서 방문하면 차단하는 것 아닐까요?

일단 하나 정도의 데이터를 올려 보세요

성공시 나오는 알러트나 동작 표기 등이 되는지

 

똑같이 안 된다면 

아작스가가 지정한 데이터 타입 ( json 또는 text 또는 html 등) 과 입력 실행하는 파일의 

리턴 되는 메세지가 서로 달라서입니다

json으로 지정 되어 있다면 어디에선가 에코문 등이 실행되어 json이외의 내용이 포함되어

리턴되어지는 타입과 맞지 않기에 데이터는 업로드 되었지만 그 이후 행동이 이뤄지지 않는겁니다

 

f12번 누르고 

개발자 모드에서 Network탭을 여신후 실행된 아작스로 저장되는 페이지가 있으면 해당 페이지명을 클릭하세요

Preview, Response등의 항목을 클릭해서 보면 대략 json외의 것이 있다면 어떤한 것이 더 적혀 있는지 알수 있습니다

그걸 참고해서 고치시면 됩니다 대부분은 쿼리상 문제가 있거나하면 원하지 않는 메세지가 추가가 될수 있습니다

 

업로드 용량 문제인듯 한데요 

굳이 대용량으로 전부 올리는 것 보다는 천건이면 천건 만건이면 만건씩 끊어서 올리는 것도 방법입니다

그런데 만건 가지고 타임아웃 걸리기엔 좀... 

혹 업로드 내용에 파일도 포함되나요 파일 처리도 뒤따른다면 그에 따른 문제일 수도 있습니다

 

 

제 생각에는 db insert 하는도중에 db 입력최대치가 걸려있는거 같아요

mysql 상태를 봐야하겠지만

외부서버인경우 문자열(db sql도 전부 string 입력 방식이라서)이기때문에 로그기록 도중에서 차단 혹은 방화벽운영중이라면 db injection으로 의심되는경우 임의적으로 차단 하는경우가 있을수 있구요

데이터중에 특수기호('혹은 , 의 가능성이 높음)때문에 입력하는 부분을 문자열 치환등의 방법으로 접근해보시는것도 좋을것 같습니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 123,503 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT