2017-02-19 138 views
0

我一直無法找到任何有關將.NET CORE解決方案部署到Linux環境所需的信息。我被要求詳細說明生產要求。.NET CORE項目的基礎架構

我們正在開發一個.NET CORE Web API,它將命中一個SQL Server數據庫,客戶端將是一個Angular 2應用程序。我讀到.NET CORE是跨平臺的,所以除了Windows之外,可以部署到Linux和OS X.我猜Kestrel是這裏的主要部分,但我不確定部署的正確基礎架構是什麼。

我需要多個服務器嗎?,一個用於API,一個用於數據庫,因爲SQL Server不是跨平臺的,一個用於客戶端應用程序?另外,服務器是否需要任何特殊配置?

不久之後:我需要向我們公司的基礎架構團隊詢問什麼,以避免在執行產品時出現任何錯誤配置?

在此先感謝。

+0

SQL Server現在是跨平臺的:https://www.microsoft.com/en-us/sql-server/sql-server-vnext-including-Linux – Alexan

+0

,你可以使用Kestrel進行生產,您需要反向代理服務器:https://docs.microsoft.com/en-us/aspnet/core/publishing/linuxproduction#configure-a-reverse-proxy-server – Alexan

+0

您可以使用一個服務器,但最好使用幾個獨立的數據庫,服務器和客戶端或負載平衡器。 – Alexan

回答

2

我是否需要多個服務器?,一個用於API,一個用於數據庫,因爲SQL Server不是跨平臺的,一個用於客戶端應用程序?

如果你在Windows上運行MSSQL服務器 - 是的,你至少需要2臺機器。鑑於您必須在Linux上託管您的API,因此需要使用Windows和Linux。對於客戶端應用程序,您不需要單獨的服務器,並且可以將其託管在與API相同的服務器上。 此外,您可以承載Windows上的所有內容(MSSQL Server,API,Angular應用程序)。 你可以看看Linux的MSSQL Server預覽版。 MSSQL Server on linux

此外,服務器是否需要任何特殊配置?不,你可以建立你的.net核心api for linux,並將它複製到linux服務器,它會工作。對於Web服務器,您需要任何反向代理,如NGinx或HAProxy。這裏是一個很好的教程來自微軟Linux environment + nginx