簡體   English   中英

最佳實踐:何時從遠程數據庫加載數據

[英]Best practice : when to load data from remote DB

當我制作一個應用程序時,我總是想知道何時是從遠程數據庫加載數據的最佳時機。
如果應用要求登錄屏幕,則:

  1. 更好的方法是在他的時間從遠程數據庫啟動所有數據,然后在應用程序中使用它們嗎? 這樣,登錄屏幕后,該應用程序的運行速度大大提高(無需檢索更多數據即可獲取更多查詢)
  2. 僅在需要使用數據時才加載數據是否更好(例如,將一些數據從數據庫顯示到應用程序中)。 這樣,登錄速度更快,但應用程序的速度可能比第一種情況慢。

你們有什么感想?

這取決於場景,但是我會選擇選項2:首先,授予用戶訪問權限,然后在需要時從后端檢索數據。

想象一下一個非常簡單的場景,用戶登錄以查看他可以使用的產品列表(添加和刪除)。 該解決方案將包含2個屏幕:

  • 登錄屏幕以管理用戶訪問
  • 產品列表屏幕以使用產品

對我來說,在一個好的設計中,每個屏幕都有其自己的可重復性,並且每個屏幕應僅查詢將要管理的數據。

  • 登錄屏幕的職責僅是執行登錄,然后導航到產品屏幕。
  • 產品屏幕的職責是在用戶結束編輯后檢索產品,顯示產品並將其存儲。

如果您的登錄屏幕查詢產品數據以將其傳遞到產品屏幕,那么您正在將登錄屏幕和產品數據耦合在一起。

無論如何,如果您擁有一組可由多個屏幕使用的靜態數據(例如,產品類別),則可以在首次需要它們時對其進行查詢,並將其存儲在緩存中以供進一步訪問。

如果存在連通性問題,則可能是另一種情況。 在這種情況下,最好的解決方案可能是下載用戶可以使用的一組數據,進行編輯,然后將它們上傳到后端(考慮到可能的並發問題)。

如果要登錄用戶,則必須調用遠程數據庫以驗證用戶身份。 如果沒有遠程數據庫,我看不到在哪里可以做到這一點。 否則,您是正確的,僅在要顯示所獲得的數據時才應查詢數據庫。

暫無
暫無

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

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