-
- redis 分布式鎖有什么缺陷?
- Redis分布式鎖因原子性、單點(diǎn)故障和超時(shí)問題存在缺陷,如誤釋放、死鎖和數(shù)據(jù)不一致。SETNX非原子操作易致死鎖,需用SET命令的NX/EX選項(xiàng)解決;鎖超時(shí)導(dǎo)致客戶端誤刪他人鎖,須通過唯一標(biāo)識加Lua腳本保證釋放原子性;主從切換可能引發(fā)鎖失效或腦裂,RedLock試圖緩解但爭議大;建議在高一致性場景選用ZooKeeper或Etcd等專業(yè)協(xié)調(diào)服務(wù)。
- Java面試題 . Java 712 2025-09-06 08:03:02
-
- kafka 有幾種數(shù)據(jù)保留的策略?
- Kafka數(shù)據(jù)保留策略基于時(shí)間(log.retention.ms)和大小(log.retention.bytes),可單獨(dú)或組合使用,配合log.cleanup.policy設(shè)置delete或compact策略,實(shí)現(xiàn)過期數(shù)據(jù)清理。
- Java面試題 . Java 664 2025-09-05 08:41:02
-
- hibernate 有幾種查詢方式?
- Hibernate支持HQL、Criteria、NativeSQL和JPACriteriaAPI四種查詢方式。HQL面向?qū)ο?、?shù)據(jù)庫無關(guān),適合簡單到中等復(fù)雜度查詢;CriteriaAPI支持動態(tài)構(gòu)建查詢,類型安全但代碼量多;NativeSQL提供最大靈活性和性能,但依賴具體數(shù)據(jù)庫;JPACriteriaAPI標(biāo)準(zhǔn)化,可跨JPA實(shí)現(xiàn)使用。應(yīng)根據(jù)查詢復(fù)雜度、可移植性、安全性及性能需求選擇合適方式,必要時(shí)可組合使用多種方式以達(dá)到最佳效果。
- Java面試題 . Java 464 2025-09-05 08:24:02
-
- spring mvc 有哪些組件?
- DispatcherServlet是SpringMVC的核心,作為前端控制器接收所有HTTP請求,根據(jù)HandlerMapping找到對應(yīng)的Controller處理請求,Controller處理后返回ModelAndView,再由ViewResolver解析視圖并渲染響應(yīng)。
- Java面試題 . Java 771 2025-09-04 08:10:01
-
- z0okeeper 怎么保證主從節(jié)點(diǎn)的狀態(tài)同步?
- ZAB協(xié)議通過Leader選舉和數(shù)據(jù)同步兩階段實(shí)現(xiàn)狀態(tài)同步,首先基于ZXID選出Leader,再由Leader廣播事務(wù)Proposal并收集Follower的Ack,確保半數(shù)以上確認(rèn)后提交,利用ZXID的遞增特性保證事務(wù)順序性,從而實(shí)現(xiàn)集群數(shù)據(jù)一致性。
- Java面試題 . Java 297 2025-09-04 08:02:01
-
- redis 為什么是單線程的?
- Redis單線程高效因內(nèi)存存儲、I/O多路復(fù)用與高效數(shù)據(jù)結(jié)構(gòu),避免上下文切換;雖有阻塞風(fēng)險(xiǎn),但可通過命令優(yōu)化、集群部署和多線程I/O緩解,平衡了性能與實(shí)現(xiàn)復(fù)雜度。
- Java面試題 . Java 123 2025-09-03 08:09:01
-
- 為什么要使用 spring?
- 答案:Spring通過IoC和DI降低耦合,提升可測試性與模塊化,SpringBoot簡化配置,SpringCloud支持微服務(wù)治理,SpringData統(tǒng)一數(shù)據(jù)訪問,SpringSecurity保障安全,形成高效開發(fā)生態(tài),但需深入理解其機(jī)制以應(yīng)對配置復(fù)雜性和學(xué)習(xí)曲線挑戰(zhàn)。
- Java面試題 . Java 205 2025-09-03 08:08:01
-
- 什么是 CSRF攻擊,如何避免?
- CSRF攻擊通過偽造用戶請求執(zhí)行非授權(quán)操作,防御核心是驗(yàn)證請求來源。主要策略包括:同步令牌模式(STP),在表單中嵌入服務(wù)器生成的隨機(jī)令牌并驗(yàn)證;雙重提交Cookie,將令牌同時(shí)存于Cookie和請求參數(shù)并比對;SameSiteCookie,設(shè)置Cookie的SameSite屬性為Strict或Lax以限制跨站發(fā)送;Referer和Origin檢查,驗(yàn)證請求來源域名,但前者易被篡改或缺失,后者更可靠但兼容性有限。其中STP最常用且安全,適合高安全需求場景;雙重提交Cookie開發(fā)成本低但需防XS
- Java面試題 . Java 215 2025-09-02 08:15:01
-
- 使用kafka 集群需要注意什么?
- Kafka集群穩(wěn)定運(yùn)行需綜合規(guī)劃集群配置、ZooKeeper依賴、生產(chǎn)者與消費(fèi)者設(shè)置、監(jiān)控告警、分區(qū)副本策略、日志清理、版本升級及安全措施;分區(qū)數(shù)量應(yīng)基于吞吐量測試、消費(fèi)者和broker數(shù)量合理設(shè)定;消息丟失可通過配置acks=all、min.insync.replicas、手動提交offset等解決;性能優(yōu)化需從硬件、操作系統(tǒng)、Kafka參數(shù)、生產(chǎn)消費(fèi)端及代碼層面協(xié)同調(diào)優(yōu)。
- Java面試題 . Java 796 2025-09-02 08:10:01
-
- 簡述tcp 和 udp的區(qū)別?
- TCP通過三次握手、重傳機(jī)制和擁塞控制(慢啟動、擁塞避免、快速重傳、快速恢復(fù))保證可靠傳輸;2.UDP因無連接、低延遲,適用于在線游戲、視頻會議等實(shí)時(shí)場景;3.UDP可通過應(yīng)用層實(shí)現(xiàn)可靠傳輸,如QUIC協(xié)議;4.選擇依據(jù)是權(quán)衡可靠性與效率,文件傳輸用TCP,實(shí)時(shí)通信用UDP。
- Java面試題 . Java 789 2025-09-02 08:00:01
-
- mybatis 和 hibernate 的區(qū)別有哪些?
- MyBatis更靈活,需手動寫SQL,適合復(fù)雜查詢和性能調(diào)優(yōu);Hibernate自動化程度高,自動生成SQL,適合快速開發(fā)簡單CRUD;選擇取決于項(xiàng)目需求和團(tuán)隊(duì)偏好。
- Java面試題 . Java 667 2025-09-01 08:10:01
-
- 怎么保證緩存和數(shù)據(jù)庫數(shù)據(jù)的一致性?
- 旁路緩存模式下寫操作應(yīng)先更新數(shù)據(jù)庫再刪除緩存,以避免并發(fā)讀取時(shí)舊數(shù)據(jù)被重新加載至緩存導(dǎo)致長期不一致;該策略雖可能短暫讀到舊數(shù)據(jù),但能確保最終一致性,且結(jié)合TTL或重試機(jī)制可進(jìn)一步降低風(fēng)險(xiǎn)。其他常見策略包括讀寫穿透、寫回和消息隊(duì)列異步通知,各自在一致性、性能與復(fù)雜度間權(quán)衡,適用于不同場景。
- Java面試題 . Java 648 2025-09-01 08:01:01
-
- spring cloud 斷路器的作用是什么?
- 斷路器通過隔離故障服務(wù)防止雪崩效應(yīng),保障系統(tǒng)穩(wěn)定性;其核心機(jī)制包含閉合、開啟、半開三種狀態(tài),實(shí)現(xiàn)故障檢測與恢復(fù)試探;結(jié)合降級策略提升用戶體驗(yàn)、增強(qiáng)可觀測性、優(yōu)化資源利用,并支持混沌工程,是微服務(wù)架構(gòu)中不可或缺的彈性組件。
- Java面試題 . Java 377 2025-08-31 08:24:01
-
- rabbitmq 集群中唯一一個(gè)磁盤節(jié)點(diǎn)崩潰了會發(fā)生什么情況?
- 當(dāng)RabbitMQ集群中唯一的磁盤節(jié)點(diǎn)崩潰時(shí),集群將失去持久化能力與配置管理功能,無法創(chuàng)建或修改隊(duì)列、交換器、用戶權(quán)限等元數(shù)據(jù),僅內(nèi)存節(jié)點(diǎn)上的非持久化隊(duì)列可能短暫運(yùn)行但面臨數(shù)據(jù)丟失風(fēng)險(xiǎn);2.恢復(fù)方式包括重啟故障節(jié)點(diǎn)、從備份恢復(fù)元數(shù)據(jù)和消息、或清理數(shù)據(jù)后重建集群;3.預(yù)防策略包括部署多個(gè)磁盤節(jié)點(diǎn)以避免單點(diǎn)故障、使用QuorumQueues提升隊(duì)列高可用性、啟用消息持久化、實(shí)施監(jiān)控告警及定期備份,確保集群穩(wěn)定與數(shù)據(jù)安全。
- Java面試題 . Java 802 2025-08-31 08:17:01
-
- mybatis 如何編寫一個(gè)自定義插件?
- MyBatis自定義插件通過實(shí)現(xiàn)Interceptor接口,結(jié)合@Intercepts和@Signature注解攔截Executor、ParameterHandler、ResultSetHandler、StatementHandler四大接口,在不修改源碼的前提下,于SQL執(zhí)行關(guān)鍵節(jié)點(diǎn)插入邏輯,實(shí)現(xiàn)功能擴(kuò)展、性能監(jiān)控等;需注意調(diào)用invocation.proceed()、避免性能開銷、處理多插件順序及線程安全,并確保外部操作與事務(wù)一致性。
- Java面試題 . Java 273 2025-08-31 08:16:01

PHP討論組
組員:3305人話題:1500
PHP一種被廣泛應(yīng)用的開放源代碼的多用途腳本語言,和其他技術(shù)相比,php本身開源免費(fèi); 可以將程序嵌入于HTML中去執(zhí)行, 執(zhí)行效率比完全生成htmL標(biāo)記的CGI要高許多,它運(yùn)行在服務(wù)器端,消耗的系統(tǒng)資源相當(dāng)少,具有跨平臺強(qiáng)、效率高的特性,而且php支持幾乎所有流行的數(shù)據(jù)庫以及操作系統(tǒng),最重要的是
學(xué)習(xí)途徑
-
學(xué)習(xí)人數(shù): 12898
-
學(xué)習(xí)人數(shù): 234123
-
學(xué)習(xí)人數(shù): 234123
-
學(xué)習(xí)人數(shù): 123145
-
學(xué)習(xí)人數(shù): 235234
-
學(xué)習(xí)人數(shù): 654511
-
學(xué)習(xí)人數(shù): 215464
工具推薦

