收藏 / 列表

素雨末 - 友好的 MinIO 文件上傳

核心設計:接口 + 實現分離 1. 定義業務接口 public interface CloudStorageService { /** * 上傳文件並返回可訪問 URL * @param bucket 存儲桶 * @param objectName 對象名(含路徑) * @param inputStream 文

生產環境 , 上傳 , 後端開發 , JAVA

智定義科技 - #智慧文旅整體解決方案:賦能景區智能升級,激活全域營銷勢能

一、背景      隨着科技的不斷髮展,旅遊業正逐步邁向智慧化、信息化。傳統的旅遊管理不足以滿足現代旅遊市場的多樣化需求,需通過建設現代化智慧文旅管理平台,提升旅遊服務質量和管理效率。 二、系統架構 三、軟件結構     本軟件採用的是 uniapp+JAVA 語言開發,編碼規範完全按照阿里巴巴編碼規範     移動端:採用 uni-app 方案,一份代碼多終端適配,同時支持 AP

uniapp , springboot , JAVA , element-ui , html5

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

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

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

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

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

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

自由的瘋 - 《分佈式 + 國產數據庫 + Docker:技術選型避坑指南》(十二)

一、為什麼要遷移到 K8s?Docker Compose 的 3 個不可逾越瓶頸 1. Docker Compose vs K8s:核心能力對比(遷移的本質原因) 能力維度 Docker Compose(單機

Deployment , Pod , yyds乾貨盤點 , 後端開發 , JAVA , Docker

小風箏 - 使用 Sa-Token 實現 [記住我] 模式登錄、七天免登錄

一、需求分析 如圖所示,一般網站的登錄界面都會有一個 [記住我] 按鈕,當你勾選它登錄後,即使你關閉瀏覽器再次打開網站,也依然會處於登錄狀態,無須重複驗證密碼: 本文將詳細介紹在 Sa-Token中,如何做到以下登錄模式: 記住我登錄:登錄後關閉瀏覽器,再次打開網站登錄狀態依然有效,無需重複登錄。 僅本次有效登錄:登錄後關閉瀏覽器,再次打開網站登錄狀態將失效,需要再次登錄。 七天免登錄:

sa-token , 權限控制 , spring , springboot , JAVA

wx661607c93692e - Java 圖片縮略圖工具類

一、核心需求分析 我們希望工具類支持兩種主流模式: 模式 1:等比縮放(Fit) 在不超過目標寬高的前提下,按原圖比例縮放,空白處留白或透明。 適用:商品圖、文章封面預覽。 模式 2:中心裁剪(Crop) 先等比縮放使圖像覆蓋整個目標區域,再從中心裁剪出指定尺寸。 適用:用户頭像

縮放 , 後端開發 , JAVA , Image

吳大同 - qData 數據中台開源版部署全攻略:三種方式任你選擇

作為一款專注於數據治理與數據資產管理的數據中台,qData 數據中台開源版(社區版本) 提供了靈活的部署方式,滿足不同階段用户的需求:從初學者的快速上手,到研發團隊的日常開發,再到生產環境的大規模部署。本文將詳細介紹三種部署方式的適用場景和特點,幫助你快速找到最適合的方案。 🚀 三種部署方式對比 部署方式 説明 適用場景 Docker C

大數據 , 開源軟件 , 數據中台 , JAVA , 數據治理平台

飛天鑄幣 - redis高頻面試題

緩存穿透 概念 緩存穿透是指查詢一個數據庫中不存在的數據,由於這個數據在緩存不存在,所以會直接跳過緩存,直接請求數據庫。 解決辦法 1. 緩存一個空對象 如果查詢的是一個不存在的數據時,可以設置一個短期過期時間的key的數據,然後將它存入緩存中。 2. 布隆過濾器 2.1 先把緩存中的數據的key值存入到布隆過濾器中 2.2 在查詢緩存前,先判斷當前的key值是否存在於布隆過濾器中,其中分為兩個結

redis , 面試 , JAVA

舒一笑不禿頭 - Saga分佈式事務框架執行邏輯

Saga分佈式事務框架執行邏輯 📋 目錄 框架概述 核心組件架構 數據庫表設計 完整執行流程 節點發現與調用機制 精簡補償策略設計 總結 框架概述 這是一個基於數據庫驅動的Saga分佈式事務框架,專門用於解決跨服務間數據同步的一致性問題。框架採用了混合編排模式,結合了集中式任務分解和分佈式執行的優勢。 核心設計理念 🎯 分層解耦: 任務分解與任務執行完全分離 🌐 節點

架構設計 , 分佈式事務 , 程序員 , 技術文檔 , 後端

Meng小羽 - Phoenix框架 從0到1設計業務併發框架 併發線程池的核心設計

背景 從 0 到 1 設計業務併發框架系列: Phoenix 框架 小米商城產品站革新之路 Phoenix 框架 怎麼組織設計一個框架 前兩篇文章已經講述了我設計框架的背景以及抽象設計的細節,今天講一下併發框架最為關鍵的併發線程池的核心設計,主要講一下在設計線程池劃分遇到的問題以及最終我採用了哪種方式實現的。 將存在依賴關係的 Task 進行劃分分組後,依次執行分組就可以拿到所有想要的結

框架 , 架構設計 , JAVA , 併發

軟件求生 - 別再手動 set 時間了,JPA 一行註解全幫你搞定!

大家好,我是小米,一個寫代碼也寫故事的31歲程序員。 上週五晚上,我在工位上加班修 Bug,手裏那杯咖啡都涼透了。原因嘛——老闆的一句話:“小米,你這表記錄誰創建的、什麼時候改的,怎麼都沒寫?”我一臉懵:“啊?這不是數據庫自帶的嗎?”老闆笑了笑,“你去查查 JPA Audit。” 就這樣,我打開電腦,走上了一條“審計字段自動填充”的覺醒之路。 那些年我們

字段 , yyds乾貨盤點 , 數據庫 , 後端開發 , jpa , JAVA

李通 - 使用 deploy 工具部署tio-boot

tio-boot官網 使用 deploy 工具部署 deploy 工具簡介 為了簡化部署流程,提高部署效率,我開發了一款名為 deploy 的工具,用於將 tio-boot 工程快速部署到自有服務器上。該工具分為客户端和服務端,用户需要先在服務器上安裝服務端,才能通過客户端進行部署操作。工具已開源,源碼地址如下: deploy 工具 deploy-server 工具 服務端安裝 關於如何安

deploy , JAVA , cd , ci

鹽焗代碼蝦 - 小程序開發實戰案例五 | 小程序如何嵌入H5頁面

在接入小程序過程中會遇到需要將 H5 頁面集成到小程序中情況,今天我們就來聊一聊怎麼把 H5 頁面塞到小程序中。 本篇文章將會從下面這幾個方面來介紹: 小程序承載頁面的前期準備 小程序如何承載 H5 小程序和 H5 頁面如何通訊 小程序和 H5 頁面的相互跳轉 小程序承載頁面的前期準備 首先介紹下我們在用小程序承載頁面之前需要做些什麼。 第一步當然就是 先有一個 H5 地址 啦,支付

小程序 , 支付寶 , webview

我不是碼農 - 由於鎖超時讓我發現了parallelStream並行流的關於線程上下文的一個坑

就我之前因為在處理jpa持久化對象上下文 (文:https://segmentfault.com/a/1190000043581830) 時,parallelStream並行流給我的印象就是會讀不到父線程的上下文的,所以應該在父線程裏的事務和在parallelStream裏的事務應該是區分的,而不是共用同一個事務的,然而今天因為一個鎖超時的問題,發現並沒有那麼簡單,下面我們一步一步來驗

spring , 多線程 , JAVA , stream , 事務

journey - Spring ThreadPoolTaskExecutor解説

1、ThreadPoolTaskExecutor @Async示例 @Async 註解的作用 異步執行方法: 被 @Async 註解標記的方法會在一個獨立的線程中執行,而不是在調用者的線程中。這意味着調用方法時,調用者線程會立即返回,並且方法的實際執行會在後台進行 提高併發性和性能: 通過異步執行耗時的操作,可以提高應用程序的響應速度和吞吐量。例如,在Web應用中,可以異

async , 線程池 , springboot , JAVA

宇文成都 - 駕馭Excel數據:使用C#將Excel導出為DataTable的實戰指南

在當今的數據驅動時代,Excel作為一種普遍的數據存儲和交換格式,幾乎無處不在。對於C#開發者而言,如何高效、便捷地將Excel文件中的數據整合到應用程序中進行處理,常常是一個需要面對的挑戰。傳統的文件解析方式可能繁瑣且容易出錯,而將Excel數據轉換為結構化的DataTable,無疑是實現數據綁定、查詢、處理和集成到業務邏輯中的最佳實踐。本文將介紹一種強大而易用的解決方案:利用Spire.XLS

excel , c# , datatable

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

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

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

wx690f565d7bc78 - java程序員自測標準

一、 Java 基礎 Java 語言特性: JVM 與內存模型: 理解 JVM 架構(堆、棧、方法區等)、垃圾回收機制(G1、ZGC)、Java 內存模型(JMM)以及 volatile、synchronized 的內存語義。 面向對象 (OOP): 熟練掌握類、對象、繼承、多態、封裝。理解抽象類與接口的區別,以及何時使用它們。

MySQL , API , 緩存 , 數據庫 , JAVA

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

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

zookeeper , JAVA , 後端

sangwu - 68. 文本左右對齊

68. 文本左右對齊 給定一個單詞數組words和一個長度maxWidth,重新排版單詞,使其成為每行恰好有maxWidth個字符,且左右兩端對齊的文本。 你應該使用 “貪心算法” 來放置給定的單詞;也就是説,儘可能多地往每行中放置單詞。必要時可用空格' '填充,使得每行恰好有maxWidth個字符。 要求儘可能均勻分配單詞間的空格數量。如果某一行單詞間的空格不

左對齊 , yyds乾貨盤點 , 字符串 , 後端開發 , 兩端對齊 , JAVA

Zeran - Mysql單表訪問方法

訪問方法的概念 設計MySQL的大叔把MySQL執行查詢語句的方式稱為訪問方法(access method)或者訪問類型。同一個查詢語句可以使用多種不同的訪問方法來執行,雖然最後的查詢結果都是一樣的,但是不同的執行方式話費的時間成本可能差距甚大。就像是從北京南鑼鼓巷到什剎海,你可以打車去,也可以坐地鐵去,坐公交去,還可以騎共享單車去,當然也可以走着去。 表結構 CREATE TABLE singl

MySQL , mysql索引 , mysql優化

博學谷狂野架構師 - 愛上源碼,重學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

小碼哥068 - 智慧家政系統核心技術解析

一、開發背景 上班族家庭:由於工作繁忙,無暇顧及家務,對日常保潔、家電清洗等便捷高效的家政服務需求強烈,希望能夠通過簡單的操作,在合適的時間預約到專業的家政人員上門服務,並且對服務質量和服務人員的專業性有較高要求 一些企業為員工提供福利,會定期採購家政服務,如辦公室清潔、企業食堂後勤服務等;同時,醫療機構、學校、酒店等也需要專業的家政服務來

數據 , 微服務 , 後端開發 , JAVA