不建議頻繁執行檔案或資料庫壓縮,因為這些操作對效能有一定的影響
除非硬碟可用空間已經不足,這時先確認那個檔案的壓縮大小是最小的
我以前200GB的資料庫,tempdb 我只需使用18GB,500GB的資料庫也只需使用35GB,
當然這比例沒有一定,完全取決於你系統行為(寫TSQL和c#習慣要好)而定。
不建議頻繁執行檔案或資料庫壓縮,因為這些操作對效能有一定的影響
除非硬碟可用空間已經不足,這時先確認那個檔案的壓縮大小是最小的
我以前200GB的資料庫,tempdb 我只需使用18GB,500GB的資料庫也只需使用35GB,
當然這比例沒有一定,完全取決於你系統行為(寫TSQL和c#習慣要好)而定。
使用過EF應該都知道所產生的TSQL一大長串(尤其新增一些累贅條件是我最討厭的),
而且執行順序可能非預期(單一包交易中有insert、update、select同table,更容易產生deadlock),
同時EF並無法產生SQL Server所內建高效率陳述式(如Merge),
這時TinyORM主推所產生的TSQL絕對簡單並更貼近SQL Server,
且改善Dapper一些缺點和效能。
ps:目前無法支援.NET Core
真實世界,大部分企業無法接受Database停止服務太久時間,
一般的backup and restore雖然可以達到目的,但由於backup and restore過程中,
還是有資料的新增、修改或刪除持續發生,雖然資料庫restore完成,
可是無法避免人工進行補資料和確認資料一致性作業,
這時你才會知道Mirroring的好處
RP是告訴influxdb資料要保留多久,只要資料過期將自動刪除,完全自動化無須人工介入。
復原Recovery Pending or Suspect 資料庫其實很簡單
但你應該不想遇到這情況
快速輕鬆建立世界地圖視覺化的回應時間概況
SSMS2016開始提供佈景主題選項,以前的版本需要自行修改文字編輯器
但預設的dark theme更讓我眼睛不舒服
telegraf是一套用go寫的agent,主要是在收集system and server的資料,
相當於ELK的logstash,但我個人認為telegraf更容易設定且耗用較少記憶體。
由於我未來的日子極有可能會和influxdb相處一段時間,
所以我必須用最快速度來上手,這篇先記錄如何啟用https
SQL2016 AG開始支援MSDTC,MSDTC幫我們保證分散式交易的一致性,
交易期間如果某一SERVER發生問題,整包交易相關資料全部rollback,
這功能我相信對.NET應該不陌生(我個人幾乎很常使用)。
Always Encrypted功能將資料庫一些敏感資料永遠加密,
有效防止DBA或未經授權人員查看這些敏感資料,
因APP(需使用.NETFramework4.6以上版本)將資料送進DB時已經加密,且透過APP讀取也能自動解密。
NSSM全名為the Non-Sucking Service Manager
因為有些應用程式可能沒有包裝install service,
這時透過NSSM就可以輕鬆讓包裝應用程式使用Windows Service執行
上一篇設定使用Redis儲存監控資料,這篇介紹如何使用SQLite,這也是我比較推薦的儲存體。
RedisLive是一個輕量的儀表板應用程式,主要是利用redis的info和monitor命令並儲存資料進行分析,
可以快速讓我們了解Redis Server效能是否正常。
Memory table將所有資料都存放到記憶體,內部針對每一筆資料建立multiple versions避免blocking情況
(multi-version optimistic concurrency control多版本樂觀並行控制),同時也沒有任何的locks和latchs
Redis的List資料結構和c# 的LinkeList 很類似,對於Insert速度相當快(0(1)),
也可決定將item存放至左或右,但要注意搜尋一個很大的List效能相當不好(因為是循序),
由於Insert速度效能超好,所以實務上都會用來處理logs,因為logs絕對是寫入遠大於讀取。
Disk Base我們會切多個data file在不同Disk drives來提高I/O效能(也分散I/O),
而這樣的行為也和In-Memory table相似。
Redis Sentinel 幫dataset提供 high availability機制,可設定master node自動複寫至各slave,
且當master node failure時,可自動failover to slave,減少人工管理成本。
我從不排斥寫單元測試,因為單元測試確實對多人開發的專案或產品太重要了,
但我絕對不會為了寫單元測試而寫單元測試,也不會每一個功能都寫單元測試。