收藏 / 列表

vivo互聯網技術 - 慢SQL優化實戰:從一例線上慢SQL探究執行引擎工作過程

作者: vivo 互聯網服務器團隊- Li Xin 本文通過一個線上慢SQL案例,介紹了Join的兩種算法和Order by的工作原理,並通過Explain和Optimizer_trace工具完整推演了慢SQL的執行過程。基於對原理和執行過程的分析,本文給出一種“引導執行引擎選擇效率更高的算法”的方案,從而使查詢性能得到大幅提升。 1、線上慢 SQL 背景 慢 SQL 會影響用户使用體驗,

索引 , 算法 , join , 數據庫 , mysql優化

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

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

zookeeper , JAVA , 後端

素雨末 - 從 LinkedList 到 SynchronousQueue

一、Java 隊列體系概覽 Q1:Java 中 Queue 相關的接口和類有哪些?它們的關係是什麼? 核心接口: QueueE:基礎 FIFO 隊列(offer/add,poll/remove,peek/element) DequeE:雙端隊列(支持頭尾插入/刪除),繼承Queue BlockingQueueE:阻塞隊

後端開發 , 線程安全 , JAVA , 阻塞隊列

CodePulse代碼脈搏 - AI低代碼平台增強版:企業級功能與AI增強

基於現有低代碼平台,添加企業級功能、AI增強和高級集成能力。 1. 企業級工作流引擎 # workflow_engine.py from typing import Dict, List, Any from enum import Enum from datetime import datetime import asyncio class NodeTyp

List , 數據 , 後端開發 , JAVA , Json

我不是碼農 - 用户組用户角色應用關係綁定批量插入應用用户和應用角色關聯關係數據(後續)

用户組用户角色應用關係綁定,先取最終用户需要綁定角色的交併集,然後再求用户組用户角色的笛卡爾積,最多可產生(用户數應用數角色數)條數據,多線程操作,從幾小時到幾十分鐘,增加一個查詢(open_role_user表的user_id)索引,變成6分鐘,改成批處理插入,變成秒級處理,之前是因為jpa在多線程環境下有問題(使用threadlocal維護本身context,默認使用open-view-int

性能優化 , jdbc , jdbctemplate , 線程 , mysql優化

Zeran - 為什麼不直接@Autowired注入交由spring容器管理的Bean,而是選擇構造注入?

autowire注入方式,在spring4.0後不推薦,原因是可能會造成循環依賴的問題推薦採用構造器或者setter方法注入,示例: private final Init init; @Autowired public DepositServiceImpl(Init init) { this.init = init; } @Autowired和構造方法執行的順序解析 先看一段

spring , autowired , JAVA , bean , get

倔強的鉛筆 - @ApiModel和@ApiModelProperty註解的最佳實踐

在現代軟件開發中,提供清晰全面的 API 文檔 至關重要。@ApiModel 和 @ApiModelProperty 這樣的代碼註解在此方面表現出色,通過增強模型及其屬性的元數據來豐富文檔內容。它們的主要功能是為這些元素命名和描述,使生成的 API 文檔更加明確。 @ApiModel 和 @ApiModelProperty 的實際用例 這些註解不僅僅是為了展示;它們在各種情景中都發揮着實際的作用

JAVA , 接口文檔 , 程序員 , swagger , 後端

博學谷狂野架構師 - 愛上源碼,重學Spring MVC深入

1.1 gradle搭建源碼調試環境 1)搭建gradle環境 4個步驟 1、File-New-Module 選擇java和web 2、填寫包信息 3、存儲路徑 2)增加起步依賴 依賴的項目,直接複製粘貼上去 1、對spring的依賴 2、對MVC的依賴 3、對Tomcat插件的依賴 build.gradle group 'com.spring.test' version '5.0.2

spring , spring-mvc , JAVA , mvc

虎斑嘟嘟 - 零知識證明與深度學習:打造可驗證的AI推理新時代

零知識證明與深度學習:打造可驗證的AI推理新時代 在醫療、金融和自動駕駛等關鍵領域,人工智能系統正日益成為決策的核心。然而,這些“黑箱”模型如何讓人信任?當AI告訴你不應該批准貸款或患有癌症時,你如何知道這個決策是基於正確的推理,而不是被惡意篡改或包含了偏見? 傳統方法要求完全透明公開模型參數和輸入數據,但這在保護知識產權和用户隱私方面面臨巨大挑戰。 零知識證明

yyds乾貨盤點 , 數據 , 後端開發 , JAVA , ci , 零知識證明

架構師專欄 - Spring創建的單例對象,存在線程安全問題嗎?

這個問題涉及到Spring框架中的Bean的作用域、單例模式的線程安全性以及如何判斷和處理線程安全問題。讓我們一步步深入探討這些概念。 本文已收錄於,我的技術網站 ddkk.com,有大廠完整面經,工作技術,架構師成長之路,等經驗分享 Spring Bean的作用域 Spring提供了幾種不同的Bean作用域,包括: 1、Singleton(單例):默認作用域,保證每個Spring容器中只有一個

spring , 單例 , 單例多線程 , 線程安全 , 線程

xiongood - Vue 中生命週期鈎子的使用

Vue 中生命週期鈎子的使用 在 Vue 組件從創建到銷燬的整個過程中,會經歷一系列特定的階段,就像人從出生到成長再到衰老的過程。生命週期鈎子就是在這些階段中自動觸發的函數,讓我們能在合適的時機執行特定操作,比如初始化數據、發送請求、操作 DOM 等,是掌控組件行為的重要工具。 最常用的生命週期鈎子之一是onMounted,它會在組件掛載到 DOM 後立即執行。這時候組件的 DO

生命週期 , 初始化 , 後端開發 , JAVA , 數據請求

卷福同學 - 如何設計一個分佈式配置中心?

這是小卷對分佈式系統架構學習的第7篇文章,前面已經講了很多理論知識,今天結合具體的中間件來講分佈式配置中心 1.面試官提問 面試官:假設你是公司的基礎架構部門,現在需要設計內部的配置中心中間件,你要怎麼設計? 我:設計客户端和服務端,客户端集成到業務項目中,項目啓動時從服務端pull配置加載到本地,並且定時check服務端和本地配置是否一致,服務端如有更新,再pull到本地 面試官:那如果

分佈式系統 , JAVA , 後端

小傅哥 - 從MVC到DDD,該如何下手重構?

作者:付政委 博客:bugstack.cn 沉澱、分享、成長,讓自己和他人都能有所收穫!😄 大家好,我是技術UP主小傅哥。MVC講解了,DDD講解了。接下來這個章節,我們講講從MVC到DDD的重構! MVC 舊工程腐化嚴重,迭代成本太高。DDD 新工程全部重構,步子扯的太大。 這是現階段在工程體系化治理中,我們所面臨的最大問題;既想運用 DDD 的思想循序漸進重構現有工程,又想不破壞原有的

架構設計 , 重構和設計模式 , 系統架構 , ddd , mvc

wx661607c93692e - Java遞歸詳解:從入門到精通

什麼是遞歸? 在計算機科學中,遞歸(Recursion) 是指一個函數在其定義中調用自身的過程。遞歸是一種強大的編程技巧,特別適用於解決具有“自相似”結構的問題,比如樹的遍歷、階乘計算、斐波那契數列等。 在 Java 中,遞歸函數必須滿足兩個基本條件: 基準條件(Base Case):遞歸必須有一個明確的終止條件,否則會導致無限遞歸,最終引發S

尾遞歸 , 遞歸 , 後端開發 , JAVA

lenglingx - Guava之Strings和Joiner、Splitter

一、Strings工具類 1.Strings.padEnd方法 //padEnd普全右 String a="12345"; String b=Strings.padEnd(a, 10, 'x'); System.out.println(b); 結果為:12345xxxxx 2.Strings.padStart方法 //

List , System , 字符串 , 後端開發 , JAVA

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

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

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

journey - Centos7安裝hadoop3.x集羣

1、環境準備 ip hostname 備註 172.16.153.10 node1 NameNode DataNode JobHistoryServer NodeManager 172.16.153.11 node2 ResourceManager SecondeNameNode DataNode

hadoop

資深程序設計 - 基於springboot的圖書館座位預約系統

1、研究背景 當前高校圖書館作為學生學習的重要場所,座位資源緊張與管理效率低下之間的矛盾日益突出。傳統的人工管理方式存在諸多弊端:學生需提前到館排隊佔座,造成時間浪費和秩序混亂;座位使用情況無法實時監控,導致資源分配不均;管理人員難以及時掌握座位使用數據,影響決策科學性。隨着高校擴招政策的實施,圖書館座位供需矛盾愈發顯著,特別是在考試周等高峯期,座位爭奪現象嚴重影響了學生的

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

sangwu - 70. 爬樓梯

70. 爬樓梯 假設你正在爬樓梯。需要n階你才能到達樓頂。 每次你可以爬1或2個台階。你有多少種不同的方法可以爬到樓頂呢? 示例 1: 輸入:n = 2 輸出:2 解釋:有兩種方法可以爬到樓頂。 1. 1 階 + 1 階 2. 2 階 示例 2: 輸入:n = 3 輸出:3 解釋:有三種方法可以爬到樓頂。 1

狀態轉移 , 數組 , yyds乾貨盤點 , i++ , 後端開發 , JAVA

codecraft - 聊聊redisson的lockWatchdogTimeout

序 本文主要研究一下redisson的lockWatchdogTimeout lockWatchdogTimeout redisson/src/main/java/org/redisson/config/Config.java private long lockWatchdogTimeout = 30 * 1000; /** * This parameter is o

緩存