收藏 / 列表

程序員小富 - 令牌桶VS漏桶:誰才是流量控制的“最優解”?

大家好,我是小富~ 面試被問到限流算法,很多面試官會讓直接手寫令牌桶和漏桶的實現。雖然平時用過Redis、Guava等現成的限流工具,但真要手寫還是有點慌。今天就來聊聊這兩種經典限流算法的區別,並用Java手寫實現。 很多的限流工具底層都應用了它們 一、令牌桶 vs 漏桶:核心區別 令牌桶 令牌桶的核心思想:固定容量的桶,以固定速率往桶裏放令牌,請求來了就從桶拿令牌,沒令牌就拒絕。 有點像買票進站

面試 , JAVA , 後端

duokeli - 開源代練系統代打平台護航小程序:主播/工作室/網企批量入駐,多渠道訂單分發邏輯的實現!

一、技術底座:億級併發的全場景覆蓋引擎 1.全端互聯體系通過技術突破實現: 賬號系統:採用分佈式ID生成算法與多端Token同步機制,確保用户跨設備登錄時,賬號信息、訂單狀態、個性化設置極速完成同步 實時通信矩陣:內置IM系統支持文字、語音、位置共享,讓《英雄聯盟》玩家可與代練者實時討論戰術細節 服務連續性保障:通過WebSocket長連接與本地緩存策略,即使在網絡波動場景下,訂單狀態更新

thinkphp6 , uniapp , 前端框架 , 數據庫 , 後端

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

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

redis , 緩存 , JAVA , 一致性

秦懷雜貨店 - Redis【1】- 如何閲讀 Redis 源碼

1 Redis 的簡介 Redis 實際上是簡稱,全稱為 Remote Dictionary Server (遠程字典服務器),由 Salvatore Sanfilippo 寫的高性能 key-value 存儲系統,其完全開源免費,遵守 BSD 協議。Redis 與其他 key-value 緩存產品(如 memcache)有以下幾個特點。 數據持久化:可以將內存中的數據保存在磁盤中,重啓的時候

redis , 源碼

細心的紅酒 - 一張SSL證書可以用於多個域名嗎?

一證多能:SSL證書的“共享”藝術 在數字化時代,SSL證書已成為網站安全的標配。當企業擁有多個域名時,一個現實問題隨之而來:能否像萬能鑰匙一樣,用一張SSL證書保護多個域名?答案是肯定的,但其中大有學問。 證書類型:三種不同的“通行證” SSL證書根據覆蓋範圍的不同,主要分為三類: 單域名證書:如同專屬門禁卡,只能保護一個特定域名,是最基礎的選擇。 多域名證書(SAN證書) : 堪稱“證書家族中

後端 , 前端

god23bin - 在 IDEA 中創建 Java Web 項目的方式(詳細步驟教程)

開發環境 以下是我的開發環境 JDK 1.8 Maven 3.6.3 Tomcat 9.0 IDEA 2019(2019 無所畏懼,即使現在已經 2023 年了哈哈哈) 最原始的 Java Web 項目 下面的內容可能會因 IDEA 版本不同,而有些選項不同,但是大同小異。 1. 打開 IDEA 點擊 Create New Project 2. 點擊 Java Enterprise

java-ee , 教程 , intellij-idea , JAVA , java-web

筱倩 - 《Go 單元測試從入門到覆蓋率提升》(一)

一、靜態代碼分析   靜態代碼分析是一種在不執行和運行程序的情況下檢查源代碼的方法。通過這種方法,自動化工具會掃描代碼查找潛在的問題,如bug、安全漏洞或與編碼標準的偏離。靜態代碼分析可以在執行或合併到main分支之前檢查源代碼中的問題。   動態代碼分析是在代碼被執行時,識別運行時的問題,例如性能瓶頸、內存泄露和邏輯缺陷。它輸出的內容是程序的實際運行時行為,包括日誌、跟蹤和性能指標。它在實際或

go , 後端

vivo互聯網技術 - 一次基於AST的大規模代碼遷移實踐

作者:來自 vivo 互聯網大前端團隊- Wei Xing 在研發項目過程中,我們經常會遇到技術架構迭代更新的需求,通過技術的迭代更新,讓項目從新的技術特性中受益,但由於很多新的技術迭代版本並不能完全向下兼容,包含了很多非兼容性的改變(Breaking Changes),因此我們需要設計一款工具,幫助我們完成大規模代碼自動遷移問題。本文簡單闡述了基於 AST 的代碼遷移概念和大致流程,並通過代碼案

ast , 代碼遷移 , 抽象語法樹 , postcss , Javascript

雲棧開源日記 - 從功能測試到自動化測試開發:軟件測試工程師技能提升指南

軟件測試職業發展的關鍵差異 在軟件測試領域,手工測試與自動化測試的工作效率存在顯著差異。掌握自動化測試技能的工程師,可以通過腳本快速完成迴歸測試工作,而這正是測試開發工程師的核心能力之一。 本文分享一套完整的軟件測試學習課程,涵蓋從基礎理論到自動化測試的全棧技術內容。 課程簡介 本課程為軟件測試全棧實戰課程,內容包括: 測試基礎理論與流程

軟件測試

李棟 - 【zookeeper 第七篇章】集羣搭建 本文章不具體展示搭建過程 後期會單獨出一篇文章編寫集羣搭建

一、概述 1、集羣中的角色 Leader Zookeeper集羣工作的核心,事務請求(寫操作)唯一調度和處理者,保證集羣事務處理的順序性;集羣內部各個服務的調度者。對於 create、setData、delete等有些操作的請求,則需要統一轉發給Leader處理,Leader需要決定編號、執行操作,這個過程稱為一個事務。 Follower 處理客户端非事務(讀操作)請求,

zookeeper , JAVA , 後端

卷福同學 - 分佈式系統架構5:限流設計模式

分佈式系統架構5:限流設計模式 這是小卷對分佈式系統架構學習的第5篇文章,今天來學習限流器和限流設計模式 1.為什麼要限流? 任何一個系統的運算、存儲、網絡資源都不是無限的,當系統資源不足以支撐外部超過預期的突發流量時,就應該要有取捨,建立面對超額流量自我保護的機制,而這個機制就是微服務中常説的“限流” 2.四種限流設計模式 説到限流,大家直接的想法就是Sentinel,但是Sentinel限流的

限流 , 設計模式 , 分佈式系統 , JAVA , 分佈式

BlackQid - 操作符題目練習

1 單身狗 在一個整型數組中,只有一個數字出現一次,其他數組都是成對出現的,請找出那個只出現一次的數字。 例如:數組中有:1 2 3 4 5 1 2 3 4,只有5出現一次,其他數字都出現2次,找出5 需要用到的知識: 按位異或 ^ 將其第一操作數的每個位(補碼)與其第二操作數的相應位進行比較。如果其中一個操作數中的位為 0,而另一個操作數中的位為 1,則相應的結果位設置為 1(即標記不同)。

教程 , 知識 , c , 後端

霸氣的啞鈴 - 全面解析美股行情API

在美股數據服務中,行情 API 通常分為幾種類型,每種接口都有其特定的功能與應用場景: 1. 延遲行情接口 顧名思義,這類接口提供的行情數據會存在時間延遲,通常為 15 分鐘左右。也就是説,你看到的成交價格是 15 分鐘前的市場價格。延遲行情接口是最常見的類型,許多投資類應用(如雪球或部分證券交易 App)展示的價格數據,實際上都屬於延遲行情。 2. 實時行情接口 實時行情接口提供即時更新的市場數

教程 , 後端

文心快碼 - 雙十一將至,用Rules玩轉電商場景提效

雙十一將至,結合電商場景,來聊聊如何 “讓AI寫代碼更省心” ——使用Rules幫助解決 “AI寫代碼總跑偏” 的問題。 01 什麼是Rules如何使用Rules Rules是什麼呢—— 是⼀組規則/指令,⽤來教AI在特定項⽬或框架中應該遵守的模式、最佳實踐和約束,做好這個規則⽂件,可以顯著提升AI⽣成代碼的質量、⼀致性,減少之後⼈⼯修正的⼯作。 可以把Rules想象成 “行為説明書”或者“工作守

教程 , 知識 , 人工智能 , 程序員 , 前端

PoloAPI - Kimi K2 日調用量超100億 token,API 價格低於 Claude 系列模型

一、Kimi K2模型基本信息 Kimi K2是由北京月之暗面科技有限公司(Moonshot AI)於2025年7月11日發佈的開源大語言模型,具有以下核心特點: ‌架構創新‌:採用MoE(混合專家)架構,總參數規模達1萬億(1T),激活參數為320億(32B),包含384個專家模塊,每個token選擇8個專家進行計算 ‌性能表現‌:在SWE Bench Verified、Tau2、AceB

編程 , llm , 算法 , 人工智能 , 後端

註銷 - 對象存儲安全的最佳實踐和一些反面的案例

對象存儲安全:最佳實踐與反面例子 對象存儲(Object Storage)是一種現代數據存儲解決方案,它將數據存儲為對象,而不是傳統的塊存儲或文件存儲。對象存儲系統具有高度的擴展性和靈活性,被廣泛用於存儲海量非結構化數據,如文檔、圖片、音視頻文件等。然而,隨着對象存儲的普及,安全問題也變得愈發重要。大家如果關注科技新聞的話,就會發現,涉及到對象存儲的安全事故,不出則已,一出就是大事故,一般都能上熱

對象

小萬哥 - 深入理解 C# 編程:枚舉、文件處理、異常處理和數字相加

C# 枚舉 枚舉是一個特殊的“類”,表示一組常量(不可更改/只讀變量)。 要創建枚舉,請使用 enum 關鍵字(而不是 class 或 interface),並用逗號分隔枚舉項: enum Level { Low, Medium, High } 您可以使用點語法訪問枚舉項: Level myVar = Level.Medium; Console.WriteLine(myVar); E

服務器 , c# , 程序員 , 後端 , asp.net

TANKING - php編寫的緩存微信access_token到本地的腳本

access_token 的存儲與更新 access_token 的存儲至少要保留 512 個字符空間;access_token 的有效期目前為 2 個小時,需定時刷新,重複獲取將導致上次獲取的 access_token 失效,並且每天獲取的頻次有限,所以需要進行本地緩存或者緩存到數據庫進行使用,而不是每次調用接口都獲取access_token,以下是一個獲取access_token並緩存到本地a

access-token , 微信開發 , php , 緩存 , 微信公眾平台

伍華聰 - 使用PySide6/PyQt6實現自定義窗口布局,實現類似FluentWindow效果

現在在很多項目中,會比較喜歡FluentWindow效果,這種左側類似於圖標菜單或者樹形結構的,右側是是動態窗體或者組件的展示方式,一般不是多文檔佈局,每次只是打開當前的模塊頁面,類似於堆疊頁面卡片,每次展示最頂端的那個卡片界面。本篇隨筆綜合介紹一下FluentWindow效果界面的各種展示方式,然後分析頁面的內容組成方式,針對性的使用PySide6/PyQt6實現自定義窗口布局的效果。 1、Fl

後端 , Python

陳明勇 - 一文了解 Go time 包的時間常用操作

前言 在日常開發中,我們避免不了時間的使用,我們可能需要獲取當前時間,然後格式化保存,也可能需要在時間類型與字符串類型之間相互轉換等。本文將會對 Go time 包裏面的常用函數和方法進行介紹。 Now():獲取當前本地的時間 import ( "fmt" "time" ) func main() { now := time.Now() fmt.Println(n

challenge , go , 後端

KubeSphere - Fluid 正式入駐青雲 KubeSphere Marketplace,共建雲原生數據加速新生態

隨着企業數字化轉型的深入推進,雲原生架構 已成為現代應用構建的主流選擇。 在大數據處理、AI 大模型訓推等業務場景中,如何實現高效彈性數據資源管理與調度,已成為雲原生落地的關鍵挑戰之一。 近日,雲原生數據編排與加速平台 Fluid 正式入駐青雲 KubeSphere Marketplace,為企業用户提供統一、高效的數據訪問與緩存管理能力,共同打造面向未來的數據驅動新範式。 Fluid + Ku

人工智能

CodeSheep - 稚暉君官宣,全球首個0代碼機器人創作平台來了!

提到稚暉君,毫無疑問,在科技圈一直是頂流的存在。自從稚暉君從華為出來投身機器人創業以後,大佬的技術動向無時無刻不被業界所關注着。 這不,就在剛剛過去的 1024 程序員節,稚暉君動態迎來一波大更新,並且一出手又是一個王炸,相信不少同學也刷到了,那就是官宣: 全球首個 0 代碼機器人內容創作平台:「靈創」正式發佈了! 智元這次發佈的靈創平台,是一個面向大眾的機器人創作平台。 即便用户沒有專業的編程

人工智能 , JAVA , 後端 , 前端 , Javascript

float64 - ByteByteGo學習筆記:URL短鏈服務設計

引言 在互聯網技術日新月異的今天,URL短鏈服務已經成為日常網絡生活中不可或缺的一部分。每當想要分享一個冗長的網頁鏈接,或者需要在對字符數量敏感的平台(如社交媒體、短信等)發佈鏈接時,URL短鏈服務都能將長長的URL地址精簡成短小、易於傳播的鏈接。例如,將冗長的 https://www.systeminterview.com/q=chatsystemc=loggedinv=3i=long 縮短為

學習 , 設計原則 , 架構 , 後端

小碼編匠 - WPF 如何支撐一個靈活的流程圖編輯器?

前言 軟件開發領域,流程設計與可視化是提升系統可維護性、增強用户體驗的重要手段。無論是工作流管理、業務邏輯編排還是算法流程展示,一個靈活、易用的流程節點編輯框架都能極大地提高開發效率與系統靈活性。 本文將推薦一款基於 WPF 的開源流程節點編輯框架,通過對其核心設計與實現邏輯的解析,帶領大家從零開始手寫一個具備基礎功能的 WPF 流程圖編輯器,為實際項目中的可視化流程開發提供有價值的參考。 項目介

.net , 後端