NFS의 심볼릭 링크가 로컬 디스크를 가리키는 경우 로컬 디스크의 이점이 손실됩니까?

NFS의 심볼릭 링크가 로컬 디스크를 가리키는 경우 로컬 디스크의 이점이 손실됩니까?

저는 NFS를 사용하는 개발 네트워크에서 작업 중이므로 모든 컴퓨터에서 홈 디렉터리 등에 액세스할 수 있습니다. 그러나 NFS는 때때로 불안정해져서 시스템 속도가 느려지거나 정지될 수 있습니다.

내 컴퓨터에서 실행되는 개발 복사본을 사용하여 서버 측 코드를 작업하고 있습니다. 많은 파일 시스템과 데이터베이스 액세스를 수행하므로 응답성이 향상됩니다. 파일을 로컬 디스크로 이동하고 심볼릭 링크를 NFS의 원래 디렉터리에 넣었습니다.

그러나 NFS가 제대로 응답하지 않으면 심볼릭 링크가 병목 현상을 일으켜 로컬 파일에 대한 빠른 액세스를 방해할 수 있습니까? 아니면 이 문제를 피하기 위해 캐시됩니까?

답변1

NFS의 대역폭이 낮은 경우 기호 링크는 병목 현상이 발생하지 않을 수 있습니다. 지연이 있으면 느낄 수 있습니다. NFS 서버가 다운되면 문제가 발생합니다. 따라서 어쨌든 NFS가 필요한 경우 심볼릭 링크는 눈에 띄는 차이를 만들지 않지만 해당 심볼릭 링크를 제외하고 NFS에서 완전히 벗어난 경우 해당 심볼릭 링크를 사용하지 않도록 조치하는 것이 좋습니다.

로컬 컴퓨터는 디렉터리 항목이 서버나 다른 NFS 클라이언트에 의해 언제 수정될 수 있는지 알 수 없기 때문에 디렉터리 항목의 캐시를 유지할 수 없습니다. NFS 클라이언트는 파일 내용의 캐시를 유지하며 캐시된 복사본이 생성된 이후 파일의 ctime이 변경되지 않았음을 서버가 클라이언트에 알리는 경우에만 해당 캐시를 사용합니다.

답변2

링크는 캐시되어야 하며 너무 작아서 네트워크를 통해 읽을 수 없지만 NFS 서버의 사용량에 따라 다릅니다. 최대 속도를 위해 모든 로컬 파일 시스템을 사용하려면 애플리케이션을 다시 시작하는 것이 좋습니다. 특히 링크를 통과해야 하는 전체 경로 이름을 사용하는 요청으로 많은 수의 파일을 제공하는 경우 더욱 그렇습니다. 모든 경로 이름이 루트에 상대적인 경우 서버가 시작된 후에는 아무런 영향을 미치지 않을 수 있습니다.

궁극적으로는 직접 시험해 봐야겠지만 충분히 빠를 수도 있을 것 같습니다.

관련 정보