簡體   English   中英

使用linq時具有多個數據庫連接的最簡單方法是什么

[英]what is the easiest way to have multiple db connections when using linq

理想情況下,我希望linq使用X數據庫連接而不是1以加快處理速度。

現在唯一的方法是打開X個連接,創建X個數據庫上下文,並將它們關聯。 如果我能以某種方式告訴linq使用X連接會更容易。

這可能嗎? 還是有另一種方法來加快數據庫查詢?

謝謝

編輯:更改標題,因為它具有誤導性(根據答復者之一,我同意)

我認為標題有誤導性。 連接池:您不需要這樣做。 Linq2SQL在默認情況下已連接池的內部使用ADO.NET SqlConnection

在我看來,您想要完成的工作就像在嘗試並行查詢數據庫。 僅當您嘗試執行不同的查詢或可以很好並行化的查詢時,這才有用。 這樣的查詢也不應過分依賴鎖/事務。 緩慢的查詢通常不屬於這種類型。

使用一個連接加載同一查詢的前50%,而使用另一連接加載后50%不會給您帶來任何好處,數據庫服務器是其中的瓶頸。

LinqToSql SQL查詢執行錯誤的原因還有很多。 其中之一被稱為“選擇N + 1”問題。 Ayende在NHibernate中有一篇出色的文章 ,它在L2S中使用了等效的原理。

如果以上所有內容均無濟於事,您可能想看看SQL Server MARS ,它使您可以在一個連接上並行查詢數據庫。

暫無
暫無

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

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