收藏 / 列表

老污的貓 - Java 常用排序

示例數據結構 public class Item { private Integer id; private Integer sort; private Date createTime; } // 排序數組 ListItem list = new ArrayList(); 根據創建時間逆序 list.sort(Comparator.comparing(Item::get

JAVA

大廠碼農老A - 凌晨零點,一個TODO,差點把我們整個部門抬走

那晚杭州的悶熱,至今記憶猶新。 2021年,我剛來到杭州這座“卷城”,入職了一家夢想中的互聯網大廠。作為一名電商新人,我一頭扎進了促銷和會場的研發中。 那晚,我們正為一個S級的“會員閃促”活動做最後的護航,它將在零點準時生效。作戰室裏燈火通明,所有人都盯着大盤,期待着活動上線後,GMV曲線能像火箭一樣發射。 然而,我們等來的不是火箭,而是雪崩。 剛過0點,登登登登… 告警羣裏的消息開始瘋狂刷屏,聲

springboot , JAVA , 故障 , 後端 , 前端

悲傷的鴨蛋 - 會話技術、過濾器、攔截器

登錄校驗:判斷用户是否登錄,從而決定是否讓其執行相關操作。(已登錄則可執行,未登錄則不可,必須登錄後才能執行) 具體操作步驟: 1、記錄用户已經成功登錄的標記(會話技術)會話:指的就是瀏覽器與服務器之間的一次連接。在一次會話當中,是可以包含多次請求和響應的(瀏覽器不能關閉、服務器不能斷開)會話跟蹤:服務器識別多次請求是否來自於同一瀏覽器,以實現在同一次會話的多次請求間共享數據。此技術一

filter , JAVA , token , Jwt

打盹的猴子 - 策略模式(Strategy Pattern)深度解析教程

一、模式定義 策略模式屬於行為型設計模式,通過定義算法族並將其封裝為獨立的策略類,使得算法可以動態切換且與使用它的客户端解耦。該模式通過組合替代繼承,符合開閉原則(對擴展開放,對修改關閉)。 二、核心角色 Strategy(策略接口) 定義所有支持的算法的公共接口 ConcreteStrategy(具體策略) 實現策略接口的具體算法

設計模式 , JAVA , 策略模式

牛肉燒烤屋 - 詳解分佈式緩存不一致性的所有情況!除了分佈式緩存外,其它場景又是如何解決緩存一致性的呢?

[toc] 引言 持久化層和緩存層的一致性問題也通常被稱為「雙寫一致性問題」,“雙寫”意為數據既在數據庫中保存一份,也在緩存中保存一份。對於一致性來説,包含強一致性和弱一致性,強一致性保證寫入後立即可以讀取,弱一致性則不保證立即可以讀取寫入後的值,而是儘可能的保證在經過一定時間後可以讀取到,在弱一致性中應用最為廣泛的模型則是最終一致性模型,即保證在一定時間之後寫入和讀取達到一致的狀態。 我們一般會

redis , 緩存 , JAVA , 一致性

seazhan - 【RocketMQ 消息中間件】RocketMQ篇之-消息存儲 為什麼性能高 CommitLog 刷盤機制 同步 異步

RocketMQ篇之-消息存儲 RocketMQ作為一款分佈式消息中間件,高可靠性是其最重要的特性之一。 所以需要將消息進行持久化存儲,以保證消息不丟失。 RocketMQ的消息存儲是RocketMQ的核心組件之一,負責消息的存儲和傳輸。RocketMQ的消息存儲主要包括CommitLog、ConsumeQueue、IndexFile、Checkpoint等幾個部分。 (前置)消息存儲交互流

中間件 , JAVA , 消息隊列

王中陽講編程 - 訂單支付後庫存不扣減,如何用RabbitMQ來優化?

上週在Review學員代碼的時候,我們發現了一個很基礎但很重要的問題:支付回調流程中缺少了庫存扣減環節。這類問題雖然基礎,但如果直接進入生產環境,可能導致庫存的數據和實際銷售的情況不一致,出現超賣的情況。能夠及時發現這種問題,這就是Review代碼的重要性。 先看這段有問題的代碼: // 原來的支付回調邏輯(問題代碼) func PaymentCallback(ctx context.Contex

go , 後端

Awbeci - Next.js-Cookie鑑權+續期+退出登錄

前言 之前寫過關於next.js鑑權操作cookie的文章,Next.js-cookie鑑權+續期1和Next.js-cookie鑑權+續期2,最近chatgpt非常火,於是我問它next.js鑑權最佳實踐,下面是它的回答: 設置合理的 cookie 有效期:合理的 cookie 有效期應該根據網站的特點來確定,通常建議將其設置為一定時間內(如 30 分鐘)。 定時刷新 cookie

next.js , cookie

lindsay_bubble - Leetcode 84_柱狀圖中最大的矩形

給定 n 個非負整數,用來表示柱狀圖中各個柱子的高度。每個柱子彼此相鄰,且寬度為 1 。 求在該柱狀圖中,能夠勾勒出來的矩形的最大面積。 想法:感覺這個題考的是數學,是邏輯。 怎麼找矩形呢?就是當前位置的最高點,向左和向右畫矩形,找他比他矮的點left, right,就停止。 高度就是height[i] 寬度就是(right-left+1)-2,因為找到的那兩個點是不能算進

leetcode , , JAVA

wasdquiop - centos7 安裝 jdk

卸載舊版本 新環境虛擬機有自己自帶的openjdk,在安裝jdk前需要先把虛擬機的卸掉,防止多個jdk衝突 查看已安裝jdk rpm -qa | grep jdk rpm -qa | grep java 如果存在,挨個刪除已有版本: yum -y remove jdk版本 上傳 安裝包 鏈接: https://pan.baidu.com/s/1cOV10HZAZQPtRU1XyXG1tw

JDK , centos7 , Linux , JAVA , 程序員

witt - 優雅關閉maven-default-http-blocker?

關鍵詞:maven 、 maven-default-http-blocker 、 mvn block 當maven升級到3.8.1之後,會遇到一個報錯Could not validate integrity of download from,其中包含maven-default-http-blocker關鍵詞,核心原因是maven 3.8.1之後認為HTTP不安全,禁用了HTTP的maven倉庫訪問

maven3 , maven , JAVA

ximinghui - Java虛擬線程可能會取代響應式編程,響應式編程只是一種過渡技術?

分享一篇文章 《Virtual Threads: New Foundations for High-Scale Java Applications》@Brian Goetz https://www.infoq.com/articles/java-virtual-threads/ JDK25發佈了,最近了解新特性時發現一個新東西: 響應式編程可能只是一種過渡技術,還沒學就先不要急着學了。 響應式帶

JAVA

Java陳序員 - 輕量高效!一款輕量級的自託管服務器監控工具!

大家好,我是 Java陳序員。 在企業開發中,涉及眾多的服務器資源,一款好用的服務器監控工具能讓運維效率事半功倍。 今天,為大家推薦一款輕量級的自託管服務器監控工具,具備資源佔用低、部署簡單和功能實用的特點! 關注微信公眾號:【Java陳序員】,獲取開源項目分享、AI副業分享、超200本經典計算機電子書籍等。 項目介紹 Komari 是一款輕量級的自託管服務器監控工具,旨在提供簡單、高效的服

vue.js , github , Linux , Docker , go

半夏之沫 - Mybatis源碼-插件的使用和原理

大家好,我是半夏之沫 😁😁 一名金融科技領域的JAVA系統研發😊😊 我希望將自己工作和學習中的經驗以最樸實,最嚴謹的方式分享給大家,共同進步👉💓👈 👉👉👉👉👉👉👉👉💓寫作不易,期待大家的關注和點贊💓👈👈👈👈👈👈👈👈 👉👉👉👉👉👉👉👉💓關注微信公眾號【技術探界】 💓👈👈👈👈👈👈👈👈 前言

插件 , interceptor , plugin , 攔截器 , Mybatis

jacheut - 談談HashMap的一些問題

hashMap在多線程環境下的表現 在jdk1.7中多線程put時可能會導致get無限循環,具體表現為CPU使用率100%; 該方法實現的機制就是將每個鏈表轉化到新鏈表,並且鏈表中的位置發生反轉,而這在多線程情況下是很容易造成鏈表迴路,從而發生 get() 死循環。所以只要保證建新鏈時還是按照原來的順序的話就不會產生循環(JDK 8 的改進)。即在jdk1.7是採用的頭插法,在jdk1.8使

hashmap , JAVA

碼猿技術專欄 - SpringBoot大文件上傳卡死?分塊切割術搞定GB級傳輸,速度飆升!

在互聯網應用中,大文件上傳是一個常見而棘手的挑戰。傳統的單文件上傳方式在面對大文件時經常面臨超時、內存溢出等問題。本文將深入探討如何利用Spring Boot實現高效的分塊上傳方案,解決大文件傳輸痛點。 一、為什麼需要文件分塊上傳? 當文件上傳超過100MB時,傳統上傳方式存在三大痛點: 網絡傳輸不穩定: 單次請求時間長,容易中斷 服務器資源耗盡: 大文件一次性加載導致內存溢出 上傳失敗代

spring , springcloud , springboot , JAVA

福 - BlockingQueue - 基於TransferStack的SynchronousQueue

ThreadPoolExecutor以BlockingQueue存儲待執行任務,包括SynchronousQueue、LinkedBlockingQueue和ArrayBlockingQueue,今天的目的是源碼角度深入研究SynchronousQueue。 之後計劃是繼續研究LinkedBlockingQueue和ArrayBlockingQueue,搬開所有絆腳石之後再開始線程池。 基本概念#

多線程 , JAVA , 阻塞隊列 , 隊列

點墨 - Spring Boot 監控缺失 JVM 指標的根源解析與終極解決方案

Spring Boot 監控缺失 JVM 指標的根源解析與終極解決方案 在基於 Spring Boot 的微服務監控體系中,結合 spring-boot-starter-actuator 與 micrometer-registry-prometheus 實現指標暴露是標準方案。但當遇到 JVM 指標缺失 且控制枱出現 Bean 'XXX' is not eligible for getting p

jvm , prometheus , springboot

尼古拉斯舞王 - 文心 5.0 來了,百度大模型的破局之戰

2025 年 11 月 8 日,百度官方博客發佈消息,ERNIE 5.0 Preview 在 LMArena 文本排行榜中拿到了全球第二的成績。這個成績排在 Gemini 2.5 Pro 之後,和 GPT-5-High 並列,超過了 DeepSeek-R1 和 Qwen3-Max。 LMArena 是個什麼榜單?它不是實驗室裏跑出來的基準測試,而是真實用户投票選出來的。用户

後端開發 , JAVA , 開發者 , 模態 , 百度

清醒的人最荒唐 - iic屏幕驅動

#include "main.h" #include "i2c.h" #include "gpio.h" /* Private function prototypes -----------------------------------------------*/ void SystemClock_Config(void); /* Private user cod

data , include , 後端開發 , JAVA , Image

湯太鹹 - JAVA基礎知識String以及文件目錄讀取

String基礎 String s = "Hello World!"; s.chars().mapToObj(letter - (char)letter) .map(Character::toUpperCase) .forEach(System.out::print); //輸出 HELLO WORLD! StringBuffer是同

JAVA , string

華為雲開發者聯盟 - 對話機器人70年:科幻與現實的交融

摘要:本文將圍繞對話機器人相關技術及其在行業中應用實踐展開,同時介紹華為雲對話機器人在多模態、小樣本、預訓練方向上的最新進展。 從 1950 年圖靈測試的提出到現在,對話系統已經走過了將近 70 年的時間,在這期間對話系統技術得到了快速的發展。方法也從當初的規則演變成如今的深度學習方法,對話系統的魯棒性和準確性都得到了大幅提升。2020 年,自然語言處理頂級會議 ACL 被接收論文中,對話系

圖靈訪談 , 機器人 , 人工智能

cicadasmile - SpringBoot3安全管理

標籤:Security.登錄.權限; 一、簡介 SpringSecurity組件可以為服務提供安全管理的能力,比如身份驗證、授權和針對常見攻擊的保護,是保護基於spring應用程序的事實上的標準; 在實際開發中,最常用的是登錄驗證和權限體系兩大功能,在登錄時完成身份的驗證,加載相關信息和角色權限,在訪問其他系統資源時,進行權限的驗證,保護系統的安全; 二、工程搭建 1、工程結構 2、依賴管理 在

springsecurity , springboot

mob64ca13fe62db - Unity Shader學習:貼花(Decal)

Unity URP中的Decal(貼花)系統是一種用於將材質投射到場景幾何體表面的技術,主要用於實現血跡、彈孔、塗鴉等動態表面裝飾效果。以下是詳細解析: 核心功能與用途 動態投影:通過Decal 【從UnityURP開始探索遊戲渲染】專欄-直達 Unity URP中的Decal(貼花)系統是一種用於將材質投

性能優化 , 世界座標 , 貼圖 , 前端開發 , Javascript