<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      數(shù)據(jù)庫開發(fā)筆記

      MYSQL數(shù)據(jù)庫的連接庫有兩種:
      Mysql.Data:官方的庫。
      MySqlConnector:社區(qū)開源庫
      有不少人推薦使用MySqlConnector,說是可能性能更好,更快一點。
      MYSQL數(shù)據(jù)庫使用過程中發(fā)現(xiàn)一個問題,如果長期不操作數(shù)據(jù)庫,比方說幾個小時不操作,后面再去操作的時候,經(jīng)常有時候會連接失敗,或者卡在那里卡半天,才會有反應。
      因為是內(nèi)部的連接池已經(jīng)斷開了。
      這個問題之前被困擾了很久,嘗試了不少的庫,發(fā)現(xiàn)都有這個問題。
      Data Source=xxx.xxx.xxx.xxx;Port=3306;User ID=username;Password=password;Initial Catalog=databaseName;Charset=utf8mb4;SslMode=none;Pooling=true;ConnectionIdleTimeout=180;ConnectionLifeTime=600;Keepalive=30;MaxPoolSize=100;MinPoolSize=1;
      其實是MYSQL服務器對長期沒有操作的連接對象,會去主動斷開釋放。
      MYSQL客戶端這邊不知道連接已經(jīng)被斷開了,再去連的時候,會發(fā)現(xiàn)一直連不上,一直等到超時,才會去新鏈接去連接。這段時間可能前臺就一直等著數(shù)據(jù)。
      上面的連接串的主要作用是主動設置一個空置超時時間,就是客戶端這邊自己發(fā)現(xiàn)某個連接閑置多少時間了以后,自己主動去釋放回收。這樣下次要用的時候,就不會用到已經(jīng)斷開的連接。
      這個時間要設置成一個比較合理的時候,不斷頻繁地去斷開重連,其實也會影響整體的性能。
      ConnectionLifeTime設置的是連接對象的整體生命周期。到了這個時間以后,不管有沒有在用,都去釋放掉,起個新的連接。說是生命周期太長,長時間使用,也可能會有性能的問題。
      MinPoolSize和MaxPoolSize是最小和最大連接池數(shù)量。MinPoolSize=1的話,就是相當于保證連接池里最少有一個連接是隨時可用的。根據(jù)實際情況來設置,保證性能的情況下,設置小的一點的數(shù)量,不然占用服務器資源。
      對應的FreeSQL也有兩種類庫:FreeSql.Provider.MySql和FreeSql.Provider.MySqlConnector,相當于一個使用官方的庫,一個是使用MySqlConnector。
      前面說的閑置超時的設置,貌似只有在MySqlConnector里面有,官方的庫設置這個參數(shù)會報錯。
      所以現(xiàn)在很多的MYSQL庫,我都改用MySqlConnector了。
      這段時間部分項目我也有在用微軟的Microsoft.EntityFrameworkCore。
      官方支持的SQLite和SQL Server。MYSQL屬于社區(qū)支持,沒前兩者好。
      所以部分用SQLite的項目,我也使用Microsoft.EntityFrameworkCore.Sqlite。
      這個庫的優(yōu)點是,接口更簡潔、方便。
      也能自動創(chuàng)建庫表,但是和FreeSQL的區(qū)別是,EFCore只會在庫表不存在的時候才會去創(chuàng)建,不會去主動更新。如果需要更新的話,需要自己用工具和命令手動去更新。
      優(yōu)點是,不容易誤操作,不會引發(fā)毀滅性的數(shù)據(jù)誤操作。缺點是更新稍微麻煩一點。
      但是FreeSQL的自動同步表功能其實也是比較危險的功能。在實際業(yè)務場景里面用非常的危險,最好也是不要啟用。
      另一個Dapper也在使用。更靈活,也是這三種里面速度最快的。
      FreeSQL前面在使用的時候,發(fā)現(xiàn)一個表里,我只加載部分字段,弄起來稍微麻煩。Dapper因為是直接使用SQL來進行查詢和操作的,反而有時候顯得更加靈活,更加可控。
      這三種里面,目前使用最多的還是FreeSQL。
      Dapper會在一些比較需要用到復雜和細致操作的時候使用。
      EFCore一般是在一些只用到SQLite的項目里面使用。

      posted @ 2025-10-17 10:17  wzwyc  閱讀(11)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 亚洲国产色一区二区三区| 秋霞A级毛片在线看| 黑人猛精品一区二区三区| 免费观看一级欧美大| 伊伊人成亚洲综合人网7777| 亚洲欧美综合精品成| 亚洲欧洲日产国产av无码| 太保市| 宫西光有码视频中文字幕| 亚洲国产精品一二三区| 亚洲精品一区二区天堂| 乱色欧美激惰| 亚洲午夜理论片在线观看| 搡老熟女老女人一区二区| 国产成人无码精品久久久露脸| 粉嫩国产av一区二区三区| 少妇熟女久久综合网色欲| 天堂V亚洲国产V第一次| 久久99精品国产99久久6尤物| 国产白袜脚足j棉袜在线观看| 亚洲人午夜精品射精日韩| 高清国产精品人妻一区二区| 国内久久人妻风流av免费| 中文字幕久久国产精品| 亚洲精品无码久久一线| 中文字幕一区有码视三区| 久久精品国产亚洲av忘忧草18| 国产成人高清精品免费软件| 久色伊人激情文学你懂的| 精品国产免费人成在线观看| 国内精品亚洲成av人片| 亚洲成av人片无码迅雷下载| 妺妺窝人体色www聚色窝仙踪| 国产精品亚洲а∨无码播放| 久久精品不卡一区二区| 久久精品免视看国产成人| www国产精品内射熟女| 四虎永久免费精品视频| 中文字幕国产精品二区| 亚洲码与欧洲码区别入口| 免费观看全黄做爰大片|