開放性問題 如果後端DB服務訪問慢,如何最大程度的服務更多的使用者?

時間 2021-05-31 23:30:11

1樓:andy

資料庫的優化是乙個方面,分表分庫啦,讀寫分離啦,儲存過程啦,資料調優啦。

還有乙個是通過記憶體快取來提高效能,這可以用redis、memcache等

減少資料庫訪問,調整業務邏輯,在記憶體計算,延遲寫到資料庫

2樓:周丹

第乙個DB處理慢的問題:

查詢慢很大一部分都是從大表中查詢資料

a. 優化索引

b. 優化查詢語句

c. 避免查詢大表,不查詢大表處理方式就是在業務操作同時將未來需要查詢的資料格式化好儲存到另乙個表中(或者NoSQL資料庫),比如使用者登入時要查詢使用者發表的文章等資訊。

如果不大的表查詢也慢,是不是資料庫伺服器的硬體需要提公升了。

第二個網路問題:

如果是資料庫伺服器網路有問題,那麼優化網路環境如果網路環境優化難實現,那麼就免訪問資料庫。在伺服器或者使用專用的快取伺服器來快取熱點資料。

3樓:碼農豆豆

DB服務訪問過慢,看一下是什麼原因造成的,是連線池設定不合理,還是語句結構不合理,聯合過多,索引建立不合理等,如果這些都沒有問題,主要因為還是連線過多,同時訪問量過大,如果是查詢訪問,可以增加快取層進行處理,但是增加快取,要注意快取透傳的問題,常用的有memcache和Redis等,增加頁面快取等,如果是寫入過慢,則要看錶設計是否合理,可以增加佇列訊息(MQ),以優化前端的等待時間等,這個要具體問題具體分析,對於一些日誌類的資訊,可以存入到Mongodb中,通過增加伺服器,公升級硬體資源進行優先和處理

4樓:大雄

沒有統一答案,這就是答案。

不同的需求,不同的資料模型,不同的讀寫比,設計出來的方案是完全不同的,有無數種可能。

分析效能瓶頸,設計資料庫、sql、快取、架構等等本身就是服務端工程師的價值,如果有乙個手冊背下來拿來就能優化效能,人就不產生價值了。

5樓:CatCoder

這個問題過於開放了,可能性實在太多。

如果是資料庫訪問慢,那麼除了查詢表結構設定和索引設定是否合理,是否有超大表之外,加乙個快取能解決大部分問題。

如果是處理慢,那就只能一步一步的優化了,減少流程,必要的地方加快取。這個優化起來,有時候是有意外驚喜的。

還有就是檢視硬體使用情況了,該加記憶體加記憶體,該換固態硬碟換固態硬碟,這一步是最簡單粗暴並且效果顯著的。

慢這個事情,後期只能是見招拆招的事,前期的設計更重要,這就是為啥構架師很關鍵啊。

6樓:李黃河

這並不是什麼開放性問題,其實題主並不知道自己在問什麼。

回到本題:「後端DB服務訪問慢」

就字面意思,如果假設DB層以上的業務請求方式,負載方案,快取方案,都已經實施過了,並且都已經優化過無法再優化了,只是在DB執行sql時慢的話,我想答案只能是優化DB了。然而這樣的系統並不存在,題主顯然不了解高併發的系統架構是什麼樣子。

7樓:於Mr

現成經驗,弱化db使用依賴。其實和其他答案殊途同歸,加一層影子資料層,redis啊什麼滿足你併發用什麼。做好資料同步及資料災難恢復機制,直接將大面積不需要事務的業務遷移到影子層上。

8樓:minz

既然已經確定是資料庫問題,那麼對應如

1.減少資料庫訪問,方法加入記憶體快取資料,提高命中率,避免直接訪問資料庫。

2.優化資料庫,比如加入適當索引,修改儲存引擎。設定資料庫讀寫分離,負載均衡。表設計有一定資料冗餘,用空間換時間。

3.避免同時訪問資料庫。服務層將瞬時訪問資料庫均分為多時訪問。

4.更換資料庫版本可能也會提高查詢儲存效率。

9樓:

很多辦法,有淺入深,

db上加入快取層(比如memcache做mysql的快取),review sql,優化表結構的索引,加入一寫多讀,業務引入cache層,先讀cache後讀db,業務通過表為維度縱向拆分,分割為多個應用,業務用中介軟體方式引入分庫分表,最後用分布式db換掉mysql。

怎樣使用開放性問題提問

我相信每一位同學都經歷過無數次的考試,也無數次地試圖尋找問題的標準答案。可是,當你們走出校園進入到工作崗位後就會發現,在實際工作和生活中,我們面臨的往往是開放性問題。它們不是封閉的,沒有固定解,往往可能存在很多解或不存在最優解。那面對這樣的問題,我們應該怎麼去解決呢?首先,需要明確需求。我們要思考的...

交通銀行校招開放性問題怎麼回答 求大神指導!!你在基層工作長時間得不到晉公升時怎麼辦?

會問這個問題的原因就是要是進了交行就會碰到這種情況 就算你有能力,領導也賞識你還是有可能一直在基層,因為沒有後台崗位啊! 一方面可以表示自己認可基層的工作,真心熱愛銀行,願意在基層工作。二可以表示在基層可以做到 最優秀 成為專業型人才 三是表示自己會正視工作環境,適當轉變思路,在工作和生活中尋找新的...

有沒有測試思維開放性的量表?

大五人格了解一下?搜openness to experience。相關的構念還包括need for cognition,need for closure,都有相應的測量工具。我只管提,不管找。 詩人姚小樹 既然無論如何也沒有權威性,那何不如自己創造乙個思維開放性的量表或指數之類的呢?權當做個人的思維...