收藏 / 列表

軟件求生 - 只有 6 小時停機窗口,我們如何完成原本要 48 小時的測試?

大家好,我是小米,一個 31 歲仍堅持相信技術能改變世界、但也深知需求能改變頭髮數量的程序員。 最近,我們公司搞了個“大動作”——支付主體切換。聽起來挺酷的,但做過支付同學都懂:這絕對不是簡單的“換個名字”或者“調個參數”這麼輕鬆。 它意味着從最核心的訂單到最角落的對賬,從你點外賣的“下單-支付-回調”,到商家第二天清晨的“營收到賬”,統統都要配合這一次遷移。

鏈路 , yyds乾貨盤點 , 優先級 , 辦公效率 , 用例

老污的貓 - 領域驅動設計(Domain-Driven Design)

DDD 全稱Domain-Driven Design,意為領域驅動設計,是一種軟件開發的方法論,強調通過領域模型來指導複雜系統的設計與開發,核心概念如下 限界上下文(Bounded Context) 實體(Entity)、值對象(Value Object) 聚合(Aggregate)、領域事件(Domain Event) 通用語言(Ubiquitous Language) DDD M

程序員

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

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

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

悲傷的鴨蛋 - Mybatis常見運行報錯(持續更新...)

報錯一: Caused by: org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input length = 1 解決辦法: setting - Editor - File Encodings,編碼方式都選擇UTF-8 報錯二: Cause: java.sql

MySQL , JAVA , Mybatis , Web

打盹的猴子 - 跨域請求(CORS)如何解決?

1. CORS 產生的原因 CORS 全稱為(Cross-Origin Resource Sharing:跨站資源共享),跨域請求是由於瀏覽器的同源策略(Same-Origin Policy)引起的,那麼 CORS 的產生和瀏覽器的同源策略有關係,我們先了解什麼是同源策略。 2. 什麼是同源策略 SOP 是所有的現代瀏覽器都具備的安全措施,它不允許從一個加載的js腳本和資源的 Origin 域與另

JAVA , 跨域 , Javascript

vivo互聯網技術 - vivo 低代碼平台【后羿】的探索與實踐

作者:vivo 互聯網前端團隊- Wang Ning 本文根據王寧老師在“2022 vivo開發者大會"現場演講內容整理而成。公眾號回覆【2022 VDC】獲取互聯網技術分會場議題相關資料。 本文主要從前後端分離的低代碼方案、自研高性能渲染引擎、高效的可視化配置方案、千億級內容投放、低代碼如何與傳統開發共存等五個維度vivo在低代碼平台方面的實踐經驗,其中也會涉及到動態交互如何運用低代碼來

渲染 , 低代碼 , 前後端分離

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

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

redis , 緩存 , JAVA , 一致性

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

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

中間件 , JAVA , 消息隊列

王中陽講編程 - 為什麼很多公司都開始使用Go語言了?為啥這個話題這麼炸裂?

大家好,我是王中陽,見字如面。 今天刷掘金時,一篇關於Go語言的舊文(《為什麼很多公司都開始使用Go語言了?》)意外被推到眼前,點開評論區瞬間被“炸裂”的討論震撼——數百條留言裏,有對語言特性的犀利吐槽,有對就業前景的焦慮傾訴,也有對技術選型的理性思辨。 這場兩年前的爭論,至今仍能戳中後端開發者的核心關切。 結合自己的從業經驗與評論區大神們的觀點,再對照2025年的市場行情,我想聊聊Go與Java

程序員 , go , 後端

字節幺零二四 - 算法典型例題:N皇后問題,五種解法,逐步優化(遞歸版)

本文將介紹N皇后問題的五種解法,包括樸素回溯法、對稱優化、標記優化、可用優化、位運算優化,對於每種解題思路,提供相應的遞歸版代碼實現,最後將對每種解法進行測試,橫向對比每種解法的求解時間。 題目描述 在 N×N 格的國際象棋上擺放 N 個皇后,使其不能互相攻擊,即任意兩個皇后都不能處於同一行、同一列或同一斜線上,問有多少種擺法? 回溯法 解題思路 回溯法採用深度有限的搜索策略遍歷問題的解空間樹,可

遞歸 , 算法 , 回溯法

Awbeci - SpringCloud-解決WebFlux異步線程無法獲取ThreadLocal中的用户信息

前言 之前閲讀《Spring微服務實戰》這本書時,裏面提供了微服務如何存儲用户的信息,但是最近升級到了Java17以及SpringCloud2022.0.0之後,異步編程是官方推薦的主流寫法,而之前的寫法是同步的,所以在存儲和解析用户信息時導致獲致不到用户信息情況,下面我們來解決這個問題。 操作 我們先看看之前的寫法: UserContext.java @Component public clas

webflux , springcloud , springboot , JAVA

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 - Linux服務器ARM架構安裝Mysql(aarch64)

一、卸載舊版本 查詢是否存在舊版本 rpm -qa | grep mysql rpm -qa | grep mariadb 如果存在,挨個刪除已有版本: yum -y remove 版本 查看etc/目錄下是否存在my.cnf文件 ls etc/my.cnf # 刪除 rm my.cnf 卸載MySQL後殘留數據保存路徑 find / -name mysql # 刪除 rm -rf 查找的路徑名

MySQL , arm64 , arm , centos7 , Linux

我不是碼農 - hibernate的@ManyToOne(fetch=FetchType.LAZY)無效原因

遇到了一個hibernate查詢問題,當查詢實體時,並沒有任何顯式調用@ManyToOne註解的屬性的情況下,依然會進行查詢,(開始使用idea進行debug的時候,發現在debug過程中,idea會觸發hibernate的加載操作,當然了這是另外一個問題),我在hibernate官網找到了答案: https://docs.jboss.org/hibernate/orm/6.4/usergu

hibernate , jpa , spring-data-jpa

江南一點雨 - 前綴索引,在性能和空間中尋找平衡

@[toc] 我們在項目的具體實踐中,有時候會遇到一些比較特殊的字段,例如身份證號碼。 鬆哥之前有一個小夥伴做黑龍江省的政務服務網,裏邊有一些涉及到用户身份證存儲的場景,由於存儲的數據大部分都是當地的,此時如果想給身份證號碼建立索引的話,小夥伴們知道,身份證前六位是地址碼,在這樣的場景下,給身份證字段建立索引的話,前六位的區分度是很低的,甚至前十位的區分度都很低(因為出生年份畢竟有限,一個省

MySQL , java-ee , JAVA , java-web

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

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

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

wx690f565d7bc78 - 從 BPMN 到 Flowable

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

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

呀哈哈kk - 【詳解】Kali安裝BCM43142802.11b/g/nLinux驅動

Kali安裝BCM43142802.11b/g/n Linux驅動 在使用Kali Linux時,有時會遇到無線網卡驅動不兼容的問題。本文將詳細介紹如何在Kali Linux上安裝Broadcom BCM43142 802.11b/g/n的Linux驅動。 環境準備 操作系統:Kali Linux 2023.1 硬件:帶有BCM43142無線網

驅動程序 , 加載 , 無線網卡 , 後端開發 , JAVA

清醒的人最荒唐 - SpringBoot實現自定義路由覆蓋

背景 公司最近有一個項目二期需要對一些功能進行改造,涉及部分框架內置業務接口個性化定製,兼容老接口功能並且增加一部分新的數據返回,由於前端調用這些接口分佈較多且較為零碎,修改測試成本較大,所以打算在框架層面提供路由覆蓋功能,加快項目進度減少無技術含量的修改帶來的系統風險 設計 提供自定義註解指定需要覆蓋的路由及新路由地址 系統啓動時掃描所有註解

系統啓動 , List , 自定義 , 後端開發 , JAVA

mb61c46a7ab1eee - 實用指南:基於單片機的圖書館智能座位管理平台

基於單片機的圖書館智能座位管理平台設計 1. 系統功能概述 本設計的“基於單片機的圖書館智能座位管理平台”旨在通過智能化手段提高圖書館座位利用效率,實現對座位使用情況的實時監控與可視化管理。系統以單片機為核心控制單元,結合紅外人體感應模塊、LED指示燈、數碼管顯示模塊等外圍電路,實現對座位佔用狀態的自動檢測與顯示控制。 當有人坐到座位上時,對應的紅外傳感

紅外 , 數碼管 , 單片機 , jquery , 前端開發

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

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

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

資深程序設計 - 基於android的個人健康管理系統

1、研究背景 在當今社會,隨着人們生活水平的提高和生活節奏的加快,健康問題逐漸成為社會關注的焦點。現代人對個人健康管理的需求日益增長,然而傳統的健康管理方式往往存在諸多不便,如信息記錄不完整、數據分散、健康諮詢不及時等。此外,傳統的健康管理方式通常依賴於紙質記錄或零散的電子數據,不僅效率低下,而且難以實現數據的全面整合與分析。在新冠疫情的背景下,人們對健康的關注度進一步提升

yyds乾貨盤點 , 管理系統 , 後端開發 , Android , JAVA

g天命風流 - 併發編程之常見線程安全類以及一些示例的詳細解析

常見線程安全類 String Integer StringBuffer Random Vector Hashtable java.util.concurrent 包下的類 這裏説它們是線程安全的是指,多個線程調用它們同一個實例的某個方法時,是線程安全的。也可以理解為 Hashtable table = new Hashtable()

項目代碼 , 線程安全 , JAVA , 前端開發 , Javascript

Turbo_K - 如何實現數據庫的不停服遷移?

數據庫不停服遷移 是指在不影響現有系統正常運行的情況下,進行數據庫的遷移操作。這對於保障系統的高可用性、減少停機時間以及提高業務連續性至關重要。以下是幾種常見的實現數據庫不停服遷移的方式和步驟。 1. 數據庫遷移的需求與挑戰 在進行數據庫遷移時,常見的挑戰包括: 業務不中斷:遷移過程中必須確保業務正常進行,避免影響客户或用户。 數據一致性:源數

數據同步 , 數據 , 數據庫 , 後端開發 , JAVA