-
灰度發(fā)布是怎么做的?
-
SpringBoot的組件的加載機制?
-
SpringBoot starter的加載?有沒有自己實現(xiàn)過Starter
-
有沒有了解過SPI
-
Java鎖有沒有了解過?
-
樂觀鎖與悲觀鎖有沒有在項目中使用過?
-
分布式鎖 redis zk 具體實現(xiàn)機制?
-
Redission如何解決redis分布式鎖的缺陷?
-
可用性系統(tǒng)的實時性?
-
報警是怎樣實現(xiàn)的?
-
MySQL索引的數(shù)據(jù)結(jié)構(gòu)?
-
Hash索引和B樹索引有什么區(qū)別?
-
hash索引是否可以進行范圍查詢?
-
MySQL 行級鎖,表級鎖?
innodb 行級鎖分為兩種(共享鎖(shared lock)讀鎖)和(排他鎖(exclusive lock)寫鎖)
讀鎖是共享的,或者說是互相不阻塞的。多個客戶在同一時刻可以同時讀取同一個資源,而互不干擾。
寫鎖是排他的,也就是說一個寫鎖會阻塞其他的寫鎖和讀鎖,這是出于安全模式的考慮,只有這樣,才能確保在給定時間內(nèi),只有一個用戶能執(zhí)行寫入,并防止其他用戶讀取正在寫入的同一資源。
在一個事務(wù)中無論開啟了排它鎖還是共享鎖,對于另一個事務(wù)中的普通查詢(非鎖查詢)都是不影響的(可以查詢出來的),因為普通查詢沒有任何鎖機制
如果事務(wù)A開啟了排他鎖
事務(wù)B在執(zhí)行的時候無論使用共享鎖還是排他鎖,都查詢不出來
如果事務(wù)A開啟了共享鎖
事務(wù)B如果開啟了共享鎖,可以查詢
如果開啟了排他鎖,無法查詢 因為排他鎖與共享鎖不能存在同一數(shù)據(jù)上。
mysql InnoDb引擎中update,delete,insert語句自動加排他鎖
-
限流是怎么做的?限制的QPS還是限制的數(shù)
-
SpringCloud Alibaba有沒有了解 dubbo gateway zuul
-
Kafka的限流是怎么做的?
可以通過bin/kafka-configs.sh腳本來實現(xiàn)限流
可以針對 user client-id (user,client-id)三個維度來配置限額。
//配置user+clientid。例如,user為”user1”,clientid為”clientA”。
bin/kafka-configs.sh --zookeeper localhost:2181 --alter --add-config 'producer_byte_rate=1024,consumer_byte_rate=2048' --entity-type users --entity-name user1 --entity-type clients --entity-name clientA
//配置user。例如,user為”user1”
bin/kafka-configs.sh --zookeeper localhost:2181 --alter --add-config 'producer_byte_rate=1024,consumer_byte_rate=2048' --entity-type users --entity-name user1
//配置client-id。例如,client-id為”clientA”
bin/kafka-configs.sh --zookeeper localhost:2181 --alter --add-config 'producer_byte_rate=1024,consumer_byte_rate=2048' --entity-type clients --entity-name clientA