分頁邏輯設計

2021-07-31 18:03:42 字數 742 閱讀 8010

分頁,是每乙個開發者必然會面臨的乙個問題。由於資料量大,不可能全部載入出來放置記憶體中,然後在頁面展示。

這種方式的優點:

1、簡單明瞭,邏輯清晰。

2、實時查詢,資料準確。

缺點:io次數太多,每次查詢都要請求兩次sql。增加db壓力(db資源很稀缺,而且每次查詢總記錄數是一次全表掃瞄,進行的是表級鎖)

優點:

1、可以減少一定的db壓力。除了第一次外,其他請求只進行了一次io操作。
缺點:

1、資料不及時。totalcount在查詢過程期間可能會有變更。

優點:

1、減少了db的壓力,每次只進行一次io操作。

2、資料實時更新,可以獲取最新資料。

缺點:

1、不知道總記錄數,不知道共多少頁,管理系統平台一般都會要求顯示總記錄數、總頁數不滿足。
關於上面的缺點2,有另一種優化方式。

優點:

1、改進了方案二中的最後一次db無用請求。
缺點:

1、優化方案二中的缺點一依然存在。
好了,我所接觸到的分頁的基本原理,就以上這些方案。可根據具體場景以及系統容錯讀(cap理論)選擇合適的處理方案。

當然,大型系統中的分頁遠比我上文中介紹的要負責很多。在資料分庫分表,以及伺服器集群的情況下,以上的方案就會有一些問題了。至於這些情況,明天再述!

介面邏輯設計

之前寫dds那部分時,對於spi介面琢磨了好久,當然了,首先想得到的狀態機,控制dds輸出的資料送至後端da。將整個資料傳輸過程分解成四個狀態 idle wr start wr data stop,根據事件猝發每個狀態的跳轉,例如idle wr start的跳轉條件是out en 1,這種設計思想是...

業務邏輯設計

1.action設計 shfwpgdzlbdmanager.copy mannager裡面的相應方法 shfwpgdzlbd.getbdtpid 傳入的引數從哪獲取,型別應和mannager的方法需要的引數型別相同 2.manager設計 設計之前宣告物件 private shfwpgdzlbdda...

德州撲克邏輯設計

德州撲克基本玩法 每個牌手發2張底牌,然後再依次發5張公共牌,每個牌手從手裡的2張和5張公共牌中,選出5張組合成最大的牌組,與 其他人進行輸贏比較。牌組大小規則 同花順 四條 葫蘆 同花 順子 三條 兩對 一對 單牌。德州撲克一共押四輪注 每人發2張牌後進行第一輪押注 發 3張公共牌後押第二輪注 發...