原创 EFcore的併發處理

1.併發定義: 多個線程同時執行一個操作,同時修改數據庫的數據,導致數據不一致的情況 2.併發處理 一般情況下,併發處理無非兩種,第一種就是加鎖:鎖的類型,按照思想方法來分,可以分爲兩種。1.悲觀鎖。2,樂觀鎖。第二種處理就是使用隊列,將

原创 Redis緩存一致性

1.前言 用過Redis的應該都清楚,redis作爲內存緩存,只是他查詢快的一大優勢,關係型數據庫只能用作存儲重要數據,或者備份緩存的數據,這個時候,不可避免,我們會遇到緩存中的數據與關係型數據庫中的數據不一致的情況。 2.爲什麼會不一致

原创 樹形結構的json格式封裝

話不多說,直接show me the code ,no bb 數據庫表結構如下: Organization表: Id 主鍵 Name 名稱 ParentId 父Id 數據庫的數據如下: 很明顯,這是一個多層級的結構,我們需要把他組裝成一個

原创 一文說清楚併發

併發在程序開發中是經常碰到的,怎麼解決併發一直是我們需要解決的難題。併發的定義是多個請求同時訪問一個接口,或者一個函數。併發可能帶來的危險: 大量讀請求會導致訪問變得緩慢,用戶操作不流暢 資源競爭,死鎖,程序崩潰 併發也分爲兩

原创 談談rabbitmq消息隊列

在程序開發中,有很多地方都需要用到消息隊列,rabbitmq是其中的一種消息隊列。rtmq有exchange,路由,隊列組成。當生產者產生了一個消息之後,會進到exchange,然後根據路由綁定特定的隊列,由消費者從隊列中取消息進

原创 數據庫索引漫談

索引: 索引一種數據庫存儲數據的物理結構,所以索引會佔據磁盤空間,創建越多的索引,就會佔據更多的空間。當你修改,增加,刪除數據的時候,都需要維護這種結構(索引),所以並不是創建越多的索引就越好,反而有時候索引越多,修改數據的時候越

原创 .net異步編程async與await

異步編程的好處: 異步編程並不能提速請求響應,它只能增加程序的吞吐量,最大限度的提升線程的利用率。 討論之前,我們需要了解一個概念:線程池。 線程池微軟官方定義: 線程池線程是後臺線程。 每個線程均使用默認的堆棧大小,以默認的優先

原创 自己搭建的.net core實用框架

技術棧:.net core 2.2 +EF core+ layui+swagger+ids4 abs是web api項目 abs.Web是web項目 代碼下載連接: https://download.csdn.net/download/

原创 單例模式的實現

public class Singleton { private static Singleton _singleton; //定義一個實例 private static readon

原创 docker部署mysql主從複製

1.部署環境: docker虛擬機,win10安裝docker虛擬機,具體配置就不介紹了,參考其他文章。 Linux虛擬機與本機設置共享目錄,以便掛載文件到docker容器,具體配置參考我其他文章。 2.下載mysql鏡像 1.我直接輸入