收藏 / 列表

軟件求生 - 面試官笑了:我用這套方案搞定了“2000w vs 20w”的Redis難題!

那天我在一家互聯網大廠面試,被問了一個看似簡單、實則殺傷力極強的問題: “小米,假如MySQL裏有2000萬條數據,Redis裏只能存20萬條,你該怎麼保證Redis中的數據都是熱點數據?” 當場我笑出了聲,心想這題是“送命題”吧!但笑歸笑,能不能答好,真能看出你是不是一個“實戰派”的程序員。 今天這篇文章,就帶你把這道題拆開、揉碎、講

訪問量 , redis , yyds乾貨盤點 , 數據 , 數據庫

老污的貓 - Java 二分法查詢

public static void main(String[] args) { Integer target = 7; // 初始化數據 ListInteger data = Arrays.asList(0, 1, 3, 5, 7, 9, 2, 4, 6, 8, 10); // 排序 Collections.sort(data); // 輸出

JAVA

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

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

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

悲傷的鴨蛋 - dependencies、dependencyManagement區別

對比項 dependencyManagement dependencies 功能 聲明版本(不引入依賴) 實際引入依賴到項目 作用 統一管理版本,避免衝突 決定項目運行時依賴 生效範圍 當前項目及子項目 僅當前項目 版本控制 子項目默認繼承 可覆蓋父項目版本 總結: dependencyManagement:定規矩(版本),不幹活(不引入)。 dependenc

maven , dependencies , dependency-management

打盹的猴子 - Java 設計模式:裝飾者模式(Decorator Pattern)

一、模式定義 裝飾者模式屬於結構型設計模式,允許通過動態包裝對象的方式為對象添加新功能,提供比繼承更靈活的擴展方式。該模式通過組合替代繼承,遵循開閉原則(對擴展開放,對修改關閉)。 二、核心角色 Component(組件接口) 定義被裝飾對象的公共接口 ConcreteComponent(具體組件) 實現基礎功能的具體類 Dec

裝飾者模式 , 設計模式 , JAVA

vivo互聯網技術 - Sharding-JDBC源碼解析與vivo的定製開發

作者:vivo IT 平台團隊 - Xiong Huanxin Sharding-JDBC是在JDBC層提供服務的數據庫中間件,在分庫分表場景具有廣泛應用。本文對Sharding-JDBC的解析、路由、改寫、執行、歸併五大核心引擎進行了源碼解析,並結合業務實踐經驗,總結了使用Sharding-JDBC的一些痛點問題並分享了對應的定製開發與改造方案。 本文源碼基於Sharding-JDBC 4.1.

sharding-jdbc , 源碼分析

牛肉燒烤屋 - TCP 真的存在“粘包”問題嗎?

引言 許多開發者都曾面對過這樣一個的問題:明明分別調用兩次send()發送了"Hello"和"World",接收方卻可能在一個recv()調用中讀到完整的"HelloWorld";或是發送了一個完整的 JSON 對象,接收端卻需要多次讀取才能拼湊出完整數據。這種現象被中文技術社區廣泛稱為“TCP 粘包” 然而,若我們深入 TCP 協議的設計本質,會發現一個令人困惑的矛盾——RFC 文檔中從未定義過

tcp , 計算機網絡 , 後端

seazhan - 【手寫 RPC】手寫一個RPC框架 使用Netty + java虛擬線程

【手寫RPC框架】如何使用netty手寫一個RPC框架 結合新特性 虛擬線程 什麼是RPC框架 RPC(Remote Procedure Call)遠程過程調用,是一種通過網絡從遠程計算機程序上請求服務,而不需要了解底層網絡技術的協議。RPC框架是一種遠程調用的框架,它可以讓你像調用本地方法一樣調用遠程方法。 避免了開發人員自己去封裝網絡請求、連接管理、序列化、反序列化等操作,提高了開發效率。 N

框架學習 , 協程 , rpc , JAVA

王中陽講編程 - 為啥用GoZero快速實現AI應用開發後,我們又決定用字節的Eino重構優化項目呢?

大家好,我是王中陽,見字如面,感謝閲讀! 最近我們團隊在瘋狂的研究AI。期間不僅做了幾個還不錯的項目,也踩坑不少。下面我就分享一下,過去用GoZero開發了怎樣一個AI應用,以及為什麼現在要用字節的Eino重構和優化。 我們過去基於gozero實現AI面試官智能體項目,一方面搞定了從0到1開發AI智能體應用,各種造輪子;另一方面,模擬面試,也是我粉絲股東們很迫切的需求。 之所以使用GoZero,是

人工智能 , 程序員

字節幺零二四 - 併發編程:Java常用線程調度方法及實現原理

本文將介紹Java常用線程調度方法及實現原理,包括sleep、wait¬ify、join、parkunpark。 線程方法 方法 説明 start() 用於啓動線程,讓線程進入就緒狀態 ; RUNNABLE 多次調用拋 IllegalThreadStateException 異常 run() 線程運行

JAVA , 併發 , juc

Awbeci - Seaurl-分享一個雲上網址收藏網站

前言 最近網上發現一個強大的網址收藏網站,點擊這裏打開,分享給大家,希望大家會喜歡。 網址空間 "網址空間"是一個專業的在線平台,它允許用户分享他們在日常生活和工作中頻繁訪問的網站鏈接。此外,該平台還提供了社交功能,使用户能夠查看並探索他們的朋友們所添加的網站鏈接,從而增強信息共享和網絡資源的發現。 當你添加網址時候,它會自動帶出標題和描述,非常方便。 它還提供了快捷工具功能,上面列出

網址 , url

lindsay_bubble - Leetcode 85_maximal_rectangle_最大矩形

一、棧 承接Leetcode 84,柱狀圖算最大矩形面積,把該題入參改為柱狀圖高度即可 PS:這版本手搓int[]做棧和直接用ArrayDeque做棧,結果僅差2ms;但題84相差近15ms。 public int maximalRectangle(char[][] matrix) { if (matrix.length == 0) {

leetcode , , JAVA

wasdquiop - centos7 安裝 nginx

centos7 安裝 nginx 安裝包 鏈接: https://pan.baidu.com/s/1kpAYYX_yy-vXX-1vsCPhoA 提取碼: qrtb 上傳 新創建usr/local/nginx文件夾,放到文件夾下 解壓 tar -zxvf nginx-1.9.9.tar.gz 安裝編譯環境 安裝gcc,源碼編譯依賴 gcc 環境 yum -y install gcc-c+

centos7 , Linux , JAVA , Nginx

我不是碼農 - spring security oauth2.0 sso流程分析

現在我們系統使用的是spring security oauth2.0 sso單點登錄方案,偶爾出現會話失效,經過分析比對看了下日誌,出現會話失效時會出現一個警告, Could not fetch user details: class org.springframework.security.oauth2.client.resource.UserRedirectRequiredException,

oauth2.0 , spring , springsecurity , springboot , JAVA

江南一點雨 - 手把手教小夥伴們使用 Nginx 部署 TienChin 項目!

今天我就來手把手教小夥伴們部署 TienChin 項目,一起把這個項目跑起來,看看到底是個什麼樣的項目。 小夥伴們知道,對於這種前後端分離的項目,我們在實際部署的時候,可以按照前後端分離的方式來部署,也可以按照前後端不分的方式來部署。接下來兩種不同的部署方式我都和小夥伴們來分享一下。 1. 前後端分離部署 1.1 部署架構圖 前後端分離部署的話,我們一般是需要一個 Nginx 服務器,我先畫一個簡

前後端分離 , Nginx

Java架構師 - 騰訊架構師極力推薦:Java多線程與Socket實戰微服務框架

在這個技術不斷更新的年代,跟不上時代變化的速度就會被刷掉,特別是咱們程序員這一羣體,技術不斷更新的同時也要同時進步,不然長江後浪推前浪,前浪...... 一個程序員從一個什麼都不懂的小白在學到有一定的Java基礎的時候肯定是要學習更多的技術充實自己,甚至還要往架構師方向靠。但是一個優秀的架構師必須要有紮實的編程功底和豐富的理論知識,不光要能完成架構設計,更要有能力將設計轉換為實際的產品。不會寫代碼

socket , 微服務 , 多線程 , JAVA , 程序員

wx690f565d7bc78 - 從 BPMN 到 Flowable

BPMN 是業務流程建模與標註的標準,Flowable 是基於 BPMN 標準的開源流程引擎,核心是將 BPMN 設計的流程模型落地為可執行的業務流程。 核心關聯:BPMN 是標準,Flowable 是落地工具 BPMN 定義流程的可視化規範(如流程圖元素、網關、任務類型等),解決 “流程怎麼畫” 的問題。 Flowable 支持 BPMN 2.0

業務流程 , MySQL , 可執行 , 流程模型 , 數據庫

呀哈哈kk - 【詳解】HadoopMapReduce實現從海量數字信息中獲取最大值

Hadoop MapReduce實現從海量數字信息中獲取最大值 在大數據處理領域,Hadoop是一個非常重要的工具。它通過MapReduce編程模型來處理和生成大規模數據集。本文將介紹如何利用Hadoop的MapReduce框架從海量數字信息中找出最大值。 1. 環境準備 1.1 安裝Hadoop 確保你的環境中已經安裝了Hadoop。如果還沒有安裝,可以

hadoop , text , 後端開發 , JAVA , apache

清醒的人最荒唐 - ImportBeanDefinitionRegistrar與BeanDefinitionRegistryPostProcessor的區別

概述 如果想實現自定義註冊bean到spring容器中,常見的做法有兩種 @Import+ImportBeanDefinitionRegistrar BeanDefinitionRegistryPostProcessor BeanDefinitionRegistryPostProcessor與ImportBeanDefinitionRe

spring , 自定義 , 後端開發 , JAVA , ide

mb61c46a7ab1eee - 完整教程:[特殊字符] 只有更輕更快的模型還不夠:智能的真正突破在於「連接」

智能不是更強的算力,而是更廣的觸達。 一、從「算力崇拜」到「連接覺醒」 在過去七年裏,AI 世界幾乎被一種單一敍事主導:更大、更強、更聰明。 從 2017 年的 Transformer,到 GPT、PaLM、Claude、Gemini、DeepSeek——每一代模型都像一次“參數的暴力美學”,在規模、數據和算力上層層疊加。 訓練集羣越堆

真實世界 , 文件系統 , 語言模型 , 前端開發 , Javascript

鴿鴿程序猿 - 【項目】【抽獎系統】獎品創建

一、圖片上傳功能 1.1 配置 application.properties 配置上傳⽂件路徑 ## 圖⽚服務 ## pic: local-path: D:/PIC # spring boot3 升級配置名 spring: web: resources: static-locations: classpath:/static/,file:

spring , yyds乾貨盤點 , 後端開發 , JAVA , Css

資深程序設計 - 基於微信小程序的民宿預定系統

1、研究背景 隨着互聯網技術的飛速發展以及移動設備的普及,人們的生活方式和消費習慣發生了深刻變化。在旅遊出行領域,微信小程序作為一種新興的應用形式,憑藉其便捷性、無需下載安裝的特點,迅速成為用户獲取服務的重要渠道。民宿作為一種個性化、多樣化的住宿選擇,受到越來越多遊客的青睞。它不僅提供了一種不同於傳統酒店的住宿體驗,更能讓遊客深入當地生活,感受獨特文化氛圍。民宿預訂過程中仍

微信小程序 , yyds乾貨盤點 , MySQL , 管理系統 , 後端開發 , JAVA

g天命風流 - 併發編程之Java 對象頭的詳細解析

Java 對象頭 以 32 位虛擬機為例 普通對象 |--------------------------------------------------------------| | Object Header (64 bits) | |------------------------------------|-------------------------|

word , 項目代碼 , JAVA , 前端開發 , Javascript

Turbo_K - mysql的查詢優化器如何選擇執行計劃

MySQL 查詢優化器(Query Optimizer)負責決定如何執行一個查詢,它通過選擇最優的 執行計劃 來實現查詢的高效執行。查詢優化器的目標是根據查詢的複雜性、表的大小、索引的可用性等因素選擇最優的執行路徑。下面將詳細介紹 MySQL 查詢優化器是如何選擇執行計劃的。 1. 執行計劃概述 執行計劃 是 MySQL 查詢優化器選擇的一系列操作步驟,指明如何掃描表

MySQL , 執行計劃 , 查詢優化 , 後端開發 , JAVA