2016-10-28 102 views
-1

我已經在MVC4中開發了一個Web應用程序,它是一個關於信用和融資的應用程序。一次有40到50個用戶使用應用程序。應用程序報告非常繁重,需要2到3分鐘的時間才能生成。我正在使用單個數據庫用戶'sa'。應用程序用戶和SQL登錄

現在我正在考慮在Server 2008中創建所有應用程序用戶。每個應用程序用戶都將使用自己的數據庫用戶而不是'sa'用戶。我的問題是,這是正確的決定?它會增加我的應用程序性能嗎?如果不對,那我該如何提高它的表現?因爲40個用戶使用單個'sa'用戶報告可能需要更多時間,而不是每個用戶使用自己的數據庫用戶。

+0

請注意,模型 - 視圖 - 控制器標記是關於模式的問題。 ASP.NET-MVC實現有一個特定的標籤。 –

+2

要回答您的報告爲什麼很慢的問題,我們需要了解它是如何工作的以及您的輸入數據是什麼。它基本上只是一個提取數據並呈現它的SQL查詢嗎?如果是這樣,那麼你的查詢可能需要調整我們不能沒有看到它 - 所以如果你可以將它添加到你的問題,向我們展示每個涉及表的行數,並向我們展示來自數據庫的解釋計劃,這將有很大幫助。也許你需要一些索引或查詢修改。 – halfer

回答

0

在我看來,雖然可能有幾個因素會影響性能,但使用差異。除非每個用戶的數據進入單獨的表或分區,否則每個應用程序用戶的登錄不應影響性能。

在真正說出具體的改變會提高性能之前,我們必須先看看影響性能的問題是什麼。例如。表格的大小是多少,報告中的數據是由多個連接導致的報告引起的,是在線事務正在運行,同時報告也被拉出,是否有任何死鎖事件發生等。

性能改進的起點之一是添加在分析查詢之後合適的索引但是,我們必須記住,爲報表優化添加索引可能會對其他應用領域產生負面影響,因爲現在插入/更新這些索引表需要花費更多時間。

問候

Nilesh製作