部署 Prisma ORM
使用 Prisma Client 的專案可以部署到許多不同的雲端平台。 鑑於雲端平台的多樣性與不同的名稱,值得一提的是不同的部署範例,因為它們會影響您使用 Prisma Client 部署應用程式的方式。
部署範例
每種範例都有不同的權衡,會影響您應用程式的效能、可擴展性和營運成本。
此外,您應用程式的使用者流量模式也是需要考量的重要因素。 例如,任何具有穩定使用者流量的應用程式可能更適合持續運行的範例,而具有突發高峰的應用程式可能更適合無伺服器。
傳統伺服器
如果 Node.js 處理程序持續運行並同時處理多個請求,您的應用程式就是以傳統方式部署。 您的應用程式可以部署到平台即服務 (PaaS),例如 Heroku、Koyeb 或 Render;作為 Docker 容器部署到 Kubernetes;或作為虛擬機器或裸機伺服器上的 Node.js 處理程序。
另請參閱:長時間運行的處理程序中的連線管理
無伺服器函式
如果您的應用程式的 Node.js 處理程序(或其分解為函式的子集)在收到請求時啟動,並且每個函式一次只處理一個請求,則您的應用程式是無伺服器。 您的應用程式最有可能部署到函式即服務 (FaaS) 產品,例如 AWS Lambda 或 Azure Functions
無伺服器環境具有暖啟動的概念,這表示對於同一函式的後續調用,它可能會使用已存在的容器,該容器具有已分配的處理程序、記憶體、檔案系統(/tmp
在 AWS Lambda 上是可寫入的),甚至資料庫連線仍然可用。
通常,任何處理程序外部的程式碼 保持初始化狀態。
另請參閱:無伺服器環境中的連線管理
邊緣函式
如果您的應用程式是無伺服器,並且函式分佈在一個或多個靠近使用者的區域,則您的應用程式是邊緣部署。
通常,邊緣環境也具有與傳統或無伺服器環境不同的運行時環境,導致常見的 API 無法使用。