巴扎黑2017-04-18 10:38:51
적어도 두 가지 방법이 있습니다:
은 말씀하신 대로 데이터베이스에 저장되지만 没听过也没见过谁真这么干过
입니다.
이렇게 하지 않는 데에는 최소한 두 가지 이유가 있습니다.
예를 들어 사진 한 장이 1M 정도일 경우, 너무 많으면 데이터베이스 파일의 크기가 급격히 늘어납니다
데이터 용량이 커서 쿼리 시 로딩 속도가 매우 느립니다
파일은 일반 파일과 마찬가지로 磁盘
에 배치되며, 데이터베이스는 해당 파일의 路径
을 파일 시스템에 기록합니다.
파일을 읽을 때 먼저 데이터베이스에서 디스크의 파일 위치를 읽은 다음 서버(nginx
또는 tomcat
등)가 파일을 클라이언트로 다시 보냅니다.
방법 2의 경우 파일이 전용 정적 파일 서버에 배치되는 경우가 많습니다. 动静分离
을 수행하려면 nginx反向代理
이라는 키워드를 검색하세요.
예를 들어 nginx
또는 apache
을 사용하여 정적 파일(사진, 동영상 등)을 구체적으로 처리할 수 있습니다.
실제로 수행할 수 없는 요청의 경우 静态化
tomcat
에 의해 동적으로 처리되어 클라이언트로 다시 전송됩니다.
大家讲道理2017-04-18 10:38:51
자체 서버에 저장하고 파일 분산 저장, 고가용성 등을 직접 수행하세요
직접 운영하고 유지 관리할 필요 없이 Zaipaiyun 또는 Alibaba Cloud OSS와 같은 타사 인터페이스를 호출하세요