簡體   English   中英

使用NGinx作為圖像服務器,將mongodb作為數據庫,將節點作為應用程序服務器…?

[英]Using NGinx as an image server with mongodb as a DB and node as app server…?

我想托管一個社交類型的網站。 它將在節點(或vertx)上。 我的問題是........如果我的局域網上有一個單獨的圖像服務器..當用戶上傳文件時,應將文件保存到圖像-nginx服務器,然后數據庫告知它和給圖片的鏈接?

例如,它將是這樣的:

db.users.find('profilepicture':1)

資料圖片:neginxserver / imagefolder / imagename.jpg的本地地址

我在正確地思考問題嗎? 將圖片放在單獨的Nginx服務器上...讓數據庫不包含實際圖片而是圖片的鏈接...因此,當客戶端連接到應用服務器並要求提供特定圖片時,它將查詢數據庫,數據庫將鏈接發送到應用服務器...,然后應用服務器通知用戶計算機圖片位置?

那行得通嗎? 我對外部人員如何連接到應用程序服務器,然后即使他們有地址,也能夠連接到同一局域網中的圖像服務器感到有些困惑。 圖像服務器需要使用一些單獨的IP嗎?

我們有一個類似的用例,處理方式如下:

  • 圖像首先上載到應用程序服務器,並在其中存儲為臨時文件。
  • (可選)對圖像格式進行一些驗證,並根據需要調整其大小。
  • 將圖像從應用程序服務器傳輸/部署到圖像服務器(可以是nginx,CDN,Amazon S3等)。
  • 使用客戶端要加載的映像的位置更新數據庫記錄。
  • 從應用程序服務器中刪除臨時文件。

這樣,HTTP客戶端只會與保留所有業務邏輯/安全性/訪問控制等的應用服務器進行通信。它僅從映像服務器讀取。

實際上,讓用戶直接寫入圖像服務器可能會帶來安全風險,因為這種類型的服務器通常對上載的內容沒有太多控制權(與應用程序服務器不同)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM