형님, 현재 프로젝트에서 재현할 수 없는 버그가 발생했습니다
구체적인 성능은 다음과 같습니다.
노드 명령줄에 요청을 받을 수 있다고 표시됩니다
프런트 데스크가 서버로부터 어떤 반환도 받을 수 없습니다
프런트 데스크에서 데이터를 백그라운드에 게시했는데 데이터베이스가 작성되지 않았습니다
노드 프로그램을 다시 시작하면 정상적으로 작동합니다
데이터베이스 충돌이 동반되며 데이터가 손실되지 않으며 인과관계를 확인할 수 없으며 발생합니다. 동시에 일어나지 않습니다
현재 해결책이 없으며 문제를 재현할 수 없습니다. 단지 몇 가지 추측만 있을 뿐입니다.
노드 예외 프로그램의 특정 부분을 실행할 때 노드가 차단되는 것 같은데, 프로그램이 모두 비동기식으로 작성되었습니다. 노드의 기본 레이어에 익숙하지 않습니다. , 그리고 이런 상황이 존재하는지 모르겠습니다
데이터베이스 예외 명령줄이 인쇄되어 프로그램이 종료되어서는 안 된다는 내용이 인쇄되고 데이터베이스에 대한 요청이 반환되지 않고 프로그램이 일시 중지된 것처럼 보이지만 뭔가 이상한 점이 있기 때문에 이것이 더 합리적으로 보입니다. 그렇다면 왜 노드 프로그램을 다시 시작하면 정상적으로 작동하나요?
데이터베이스 드라이버 예외 이 경우 프로그램을 다시 시작하면 정상적인 것으로 보이며 드라이버 설정에 문제가 없을 것입니다
노드 버전: 6.10.* LTS 프레임워크: express
서버: win server 2012
데이터베이스: arangodb 드라이버: arangojs
모든 사람에게 물어봐야 할 질문:
노드가 각 기능의 실행 시간을 계산하는 방법에 대한 기사를 인터넷에서 봤는데...녹음하는 걸 깜빡했네요(당황).. 검색해도 안나오네요.
비슷한 문제를 겪은 사람이 있나요? 이유와 디버깅 및 해결 방법은 무엇인가요?
응답 시간이 특정 값을 초과하는 경우 응답을 처리하지 않는 것을 node.js 또는 표현에서 만드는 방법
어떤 제안이라도
즐거운 휴일
비슷한 상황이 발생했습니다. 데이터베이스는 동시성이 높기 때문에 한편으로는 연결 수에 제한이 있습니다. 작업이 완료된 후 데이터베이스 연결을 끊지 않습니다. 또는 풀 연결 풀이 해제되지 않았습니다. 참고용입니다.