數(shù)據(jù)庫查詢:
數(shù)據(jù)庫查詢對并發(fā)處理和事務(wù)處理都有很大影響;
查詢性能越好,隨并發(fā)量上升導(dǎo)致的性能下降的影響越小;
查詢性能越好,受其他事務(wù)排他鎖的影響越小;
總之,要解決超時、死鎖等問題,優(yōu)化查詢性能,縮短事務(wù)時間(最好不用事務(wù))是最根本辦法
(非原創(chuàng),引用自網(wǎng)絡(luò))用兩個例子看清楚分布式和集群的區(qū)別:
例子1:
如果一個任務(wù)由10個子任務(wù)組成,每個子任務(wù)單獨執(zhí)行需1小時,則在一臺服務(wù)器上執(zhí)行改任務(wù)需10小時。 采用分布式方案,提供10臺服務(wù)器,每臺服務(wù)器只負責(zé)處理一個子任務(wù),不考慮子任務(wù)間的依賴關(guān)系,執(zhí)行完這個任務(wù)只需一個小時。(這種工作模式的一個典型代表就是Hadoop的Map/Reduce分布式計算模型) 而采用集群方案,同樣提供10臺服務(wù)器,每臺服務(wù)器都能獨立處理這個任務(wù)。假設(shè)有10個任務(wù)同時到達,10個服務(wù)器將同時工作,10小后,10個任務(wù)同時完成,這樣,整身來看,還是1小時內(nèi)完成一個任務(wù)!
例子2:
一堆機器堆在這兒,具備一定的相同的功能屬性,就可以叫集群 分布式的話,應(yīng)該是具備分布式特性的一類系統(tǒng)
集群的作用:負載均衡,錯誤恢復(fù)
集群式資源整合,分布式是計算能力整合
集群=聚合,分布式=組合
減少線程切換:
幾乎所有IO操作(包括磁盤和網(wǎng)絡(luò))都產(chǎn)生線程切換Mutex, AutoResetEvent, Sleep等方法會產(chǎn)生線程切換在應(yīng)用服務(wù)化的時代,網(wǎng)絡(luò)服務(wù)接口常常被當(dāng)成本地方法使用,當(dāng)這樣的接口被放入循環(huán),遞歸中時,線程切換的時間消耗往往會超過要執(zhí)行的邏輯本身+網(wǎng)絡(luò)傳輸?shù)拈_銷如何避免:所有的IO操作用異步模式(這個比較難)對會產(chǎn)生IO的接口使用特別小心封裝IO接口,適當(dāng)引入緩存設(shè)計時提供批量和單個接口,減少IO次數(shù)……降低嵌套循環(huán):用hash表,字典,分組等手段優(yōu)化嵌套,把多層循環(huán)變成多次循環(huán)(復(fù)雜度由高次方變成一次方)防暴力破解:md5(x+MD5(y));y.length>=8
|
新聞熱點
疑難解答