圖片存儲那些事數據庫
一、二進制列服務器
不少關係數據庫都支持二進制類型的列,能夠把圖片轉換成二進制,而後存放起來。分佈式
二、文件路徑網站
把圖片的相對路徑,通常是相對網站根目錄的路徑存在數據庫中,把文件存在在本地文件系統。spa
三、圖片服務器設計
單獨的服務器用來存放圖片,單獨的域名空間,使用某些特殊的文件系統。圖片
圖片有不少類型,小圖片,大圖片,有些圖片是有關聯繫,一般一塊兒使用,有的是產品圖,有的是系統圖片,有的是用戶上傳的,有的是平臺管理的。產品
針對不一樣類型的圖片,須要不一樣的文件系統,有些文件由於顯示的時候都是一塊兒顯示的,可能須要存放在一塊兒,減小尋道時間,加快IO速度,提升讀取效率。域名
四、分佈式,路徑無關效率
MongoDB GridFS
001001001
產品圖片
圖片愈來愈多,請求愈來愈多,提升可用性,提升並行執行,會須要分佈式文件系統,實現分佈式圖片服務,並且圖片服務對外應該是存儲無關的,路徑無關。
外界只是須要存儲圖片,圖片的類型,大小,圖片之間的關聯,使用頻率,是否須要生成縮略圖等等業務相關的需求。
圖片服務負責具體的存儲,存儲的類型,位置,路徑,返回外界一個惟一的編號就能夠了。
固然編號能夠設計成有含義的,3位一個含義,好比說:所屬子系統,所屬類型,相關性,權限,是否容許外鏈等等。