博客 / 列表

得物技術 - 深入剖析時序Prophet模型:工作原理與源碼解析|得物技術

隨着得物業務的快速發展,積累了大量的時序數據,這些數據對精細化運營,提升效率、降低成本有着重要作用。在得物的時序數據挖掘場景中,時序預測Prophet模型使用頻繁,本文對Prophet的原理和源碼進行深入分析,歡迎閲讀和交流。 一、引入 時間序列是指按照時間先後順序收集或觀測的一系列數據點,這類數據通常都具有一定時間相關性,基於這種順序性,我們可以對時間序列進行多種數據挖掘任務,包括分類、聚類、異

序列化 , 大數據 , 時序數據庫 , 源碼分析 , 模型

得物技術 - 線程池ThreadPoolExecutor源碼深度解析|得物技術

一、引 言 為什麼進行源碼角度的深度解析? 大家在項目中到處都在使用線程池做一些性能接口層次的優化,原先串行的多個遠程調用,因為rt過高,通過線程池批量異步優化,從而降低rt。還有像RocketMQ中broker啓動時,同時通過ScheduledThreadPoolExecutor線程池執行其他組件的定時任務,每隔一段時間處理相關的任務。線程池廣泛的應用在外面各種實際開發場景中,我們很多同學可能在

dns解析 , 緩存 , 存儲 , JAVA , 編譯器優化

得物技術 - 營銷會場預覽直通車實踐|得物技術

一、背景:活動會場的配置走查之痛 在電商營銷中,會場是承載活動流量的核心陣地。得物的營銷會場不僅覆蓋520、七夕等活動節點,也支撐日常的"天天領券"、"瘋狂週末"等高頻運營場景。數據顯示,會場的UV佔比、GMV貢獻、訂單量均佔平台重要比重。 然而,隨着業務複雜度提升,會場配置面臨三大挑戰。 1.1 三大挑戰 ※多目標耦合 同一會場需同時滿足不同運營GMV提升、拉新、促活等不同目標,導致配置策略疊

架構設計 , 架構 , 測試開發 , 測試用例管理工具

得物技術 - 得物靈犀搜索推薦詞分發平台演進 3.0

導購是指在購物過程中為消費者提供指引和幫助的人或系統,旨在協助用户做出更優的購買決策。在電商平台中,導購通過推薦熱賣商品、促銷活動或個性化內容,顯著提升用户的購物體驗,同時推動銷售額的增長。其核心目標是通過精準的引導,滿足用户需求並促進商業價值最大化。 詞分發:導購的重要組成部分 在電商導購體系中,詞分發作為關鍵環節,主要聚焦於與關鍵詞推薦相關的功能。這些功能包括但不限於下拉詞、底紋詞、熱搜榜單、

算法 , 架構 , 人工智能 , 後端

得物技術 - Redis 是單線程模型?|得物技術

一、背景 使用過Redis的同學肯定都瞭解過一個説法,説Redis是單線程模型,那麼實際情況是怎樣的呢? 其實,我們常説Redis是單線程模型,是指Redis採用單線程的事件驅動模型,只有並且只會在一個主線程中執行Redis命令操作,這意味着它在處理請求時不使用複雜的上下文切換或鎖機制。儘管只是單線程的架構,但Redis通過非阻塞的I/O操作和高效的事件循環來處理大量的併發連接,性能仍然非常高。

bootstrap , HTML

得物技術 - 前端日誌回撈系統的性能優化實踐|得物技術

一、前言 在現代前端應用中,日誌回撈系統是排查線上問題的重要工具。然而,傳統的日誌系統往往面臨着包體積過大、存儲無限膨脹、性能影響用户體驗等問題。本文將深入分析我們在@dw/log和@dw/log-upload兩個庫中實施的關鍵性能優化,以及改造過程中遇到的技術難點和解決方案。 核心優化策略概覽: 我們的優化策略主要圍繞三個核心問題: 存儲膨脹問題 - 通過智能清理策略控制本地存儲大小 包體

性能優化 , 大前端 , 前端工程化 , 前端架構 , 前端

得物技術 - RAG—Chunking策略實戰|得物技術

一、背 景 在 RAG 系統中,即便採用性能卓越的 LLM 並反覆打磨 Prompt,問答仍可能出現上下文缺失、事實性錯誤或拼接不連貫等問題。多數團隊會頻繁更換檢索算法與 Embedding模型,但收益常常有限。真正的瓶頸,往往潛伏在數據入庫之前的一個細節——文檔分塊(chunking)。不當的分塊會破壞語義邊界,拆散關鍵線索並與噪聲糾纏,使被檢索的片段呈現“順序錯亂、信息殘缺”的面貌。在這樣的

算法 , 數據庫 , 大模型 , 後端

得物技術 - 基於瀏覽器擴展 API Mock 工具開發探索|得物技術

一、前 言 在日常開發過程中,偶爾會遇到後端接口未完成或者某個環境出現問題需要根據接口返回來複現等等場景。剛好最近在學習瀏覽器插件的相關知識,並在此背景下開發了一款基於瀏覽器插件的 Mock 工具。該工具專注於 API請求攔截和數據模擬,旨在幫助開發者提升開發效率,能夠解決一些問題。 二、瀏覽器插件介紹 什麼是瀏覽器插件 瀏覽器插件(Extensions 或 Add-ons)是一類運行於瀏覽器進程

插件 , 瀏覽器 , API , 前端

得物技術 - R8疑難雜症分析實戰:外聯優化設計缺陷引起的崩潰|得物技術

一、背景 R8作為谷歌官方的編譯優化工具,在編譯階段會對字節碼進行大規模修改,以追求包體優化和性能提升。但是Android應用開發者數量太過龐大,無論測試流程多麼完善,終究難以避免在一些特定場景下出現問題。 近期我們在升級項目的AGP,遇到了一個指向系統SurfaceTexture類的native崩潰問題。經反編譯分析發現問題最終指向了smali字節碼中多餘的一行new-instance指令。

性能優化 , Android , 編譯器

得物技術 - 從 JSON 字符串到 Java 對象:Fastjson 1.2.83 全程解析|得物技術

一、概述 Fastjson 是阿里巴巴開源的高性能 JSON 序列化處理庫,其主要以處理小數據時速度最快而著稱,功能全面。Fastjson1.X版本目前已停止維護,被Fastjson2.X代替,但1.X版本國內被廣泛使用,通過學習其技術架構,剖析架構上優缺點,對技術人員提升軟件設計工程實踐能力很有價值。 首先我們對“序列化 / 反序列化”概念上建立直觀認識,把Java對象轉化為JSON格式的字符串

開源 , JAVA , 後端 , Json

得物技術 - 從一次啓動失敗深入剖析:Spring循環依賴的真相|得物技術

一、背 景 預發環境一個後台服務admin突然啓動失敗,異常如下: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name'timeoutNotifyController': Injection of resource dependencies failed;

spring , 編程語言 , JAVA , 後端

得物技術 - Valkey 單點性能比肩 Redis 集羣了?Valkey8.0 新特性分析|得物技術

一、 背景 Valkey 社區於 2024 年 09 月發佈了 Valkey8.0 正式版,在之前的文章《Redis 是單線程模型?》中,我們提到,Redis 社區在 Redis6.0 中引入了多線程 IO 特性,將 Redis 單節點訪問請求從 10W/s 提升到 20W/s,而在 Valkey8.0 版本中,通過引入異步 IO 線程、內存預取(Prefetch)、內存訪問分攤(MAA)等新特性

redis , 數據庫 , redis集羣

得物技術 - 得物研發自測 & 前端自動化測試體系建設

一、背景 現狀 在得物技術團隊雙週迭代模式下,前端自動化測試體系的建設已成為提升研發效能的關鍵突破口。當前技術部門推行研發自測的核心訴求,其核心訴求在於通過建立可信的質量保障機制釋放測試資源,以此承接更多的業務需求,提升需求吞吐率。 雙週迭代的機制對研發流程提出了雙重挑戰:既要保障兩週內完成需求開發、測試驗證到交付上線的完整閉環,又需保障研發交付的代碼質量穩定可靠且經過充分的測試驗證。 服務端已

自動化測試 , 前端

得物技術 - 從CPU冒煙到絲滑體驗:算法SRE性能優化實戰全揭秘|得物技術

一、引言 在算法工程中,大家一般關注四大核心維度:穩定、成本、效果、性能。 其中,性能尤為關鍵——它既能提升系統穩定性,又能降低成本、優化效果。因此,工程團隊將微秒級的性能優化作為核心攻堅方向。 本文將結合具體案例,分享算法SRE在日常性能優化中的寶貴經驗,助力更多同學在實踐中優化系統性能、實現業務價值最大化。 二、給浮點轉換降温 算法工程的核心是排序,而排序離不開特徵。特徵大多是浮點數,必然伴隨

cpu

得物技術 - 社區造數服務接入MCP|得物技術

一、背景 今年 MCP 的概念非常火,市面上也涌現出了一大批 MCP 相關工具。作為技術一線者,都會按捺不住地去實操一下,很早的時候就有個設想,如果把我們的測試工具都改造為符合 MCP 服務協議標準,然後全部接入AI Agent,打造一個集萬千工具於一體的智能管家來幫助我們提效,是不是一個很完美的設想。很多宏偉或者天馬行空的想法想要真正的落地,必然需要不斷向下,拆解成可落地的任務模塊,這裏我們先從

社區

得物技術 - 得物基於AIGC生成測試用例的探索與實踐

一、背景 隨着人工智能技術的快速發展,尤其是在自然語言處理(NLP)、計算機視覺和生成對抗網絡(GANs)等領域,AIGC(AI Generated Content)得到了廣泛應用,這一技術的進步使得內容創作變得更加高效與多樣化,推動了各個行業的創新與變革。對於測試而言,基於AI進行測試用例生成也逐漸從夢想變成現實。 傳統問題 目前我們在編寫測試用例時,大部分依賴人工編寫,在實際編寫過程中主要存在

效率 , 人工智能

得物技術 - 得物自建 Redis 無人值守資源均衡調度設計與實現

文 / Miro-得物技術 目錄: 一、為什麼要做資源均衡調度 二、為什麼要做自動化資源均衡調度 三、如何合理選擇遷移節點 四、如何保障遷移過程中可靠性 1. 添加從節點 2. 檢查同步數據正常 3. 執行主從切換 4. 檢查主從切換正常 5. 刪除待遷移節點 6. 消息通知 五、遷移任務管理展示 六、總結 一、為什麼要做資源均衡調度得物 Redis

redis , 數據庫 , redis集羣

得物技術 - 異常檢測算法在可觀測性平台的落地和實踐|得物技術

一、背景 在穩定性保證中,重要的一個環節就是故障管理體系建設,故障管理體系的四大核心功能——故障發現、故障觸達、故障定位和故障恢復,其中故障發現作為故障管理的第一步至關重要,包含了指標預測、異常檢測和故障預測等方面,主要目標是能及時、準確地發現故障。今天主要針對故障發現環節中的異常檢測介紹AI異常檢測算法在指標檢測上的應用。 傳統基於閾值的異常檢測方法的缺點: 比較依賴個人經驗,需要了解指標的

技術分享 , 人工智能 , 異常處理 , Python

得物技術 - 輕量級的灰度&配置平台|得物技術

一、前言 隨着近幾年得物的業務和技術的快速發展,我們不管是在面向C端場景還是B端供應鏈;業務版本的迭代更新,技術架構的不斷升級;不管是業務穩定性還是架構穩定性,業務灰度的能力對我們來説都是一項重要的技術保障,越來越受到我們業務研發的關注。然而,傳統的灰度發佈服務往往過於定製化,缺乏靈活性和通用性,無法滿足不斷變化的業務需求,往往灰度的場景可能通過代碼硬編碼或者簡單的配置中心配置。在這樣的背景下,本

配置 , 架構 , 灰度發佈

得物技術 - 探索BPMN—工作流技術的理論與實踐|得物技術

一、前言 19世紀70年代,流程管理思想萌芽階段。 怎樣提高工作效率? 泰勒:標準化個人操作流程 亨利·福特:規定標準時間定額 標準化、精簡化、通用化、專業化。 20世紀70年代,工作流技術起源於辦公自動化領域的研究。由於當時計算機尚未普及,網絡技術水平還很低以及理論基礎匱乏,這項新技術並未取得成功,許多公司採用紙張表單,手工傳遞的方式,一級一級審批簽字,工作效率非

bpmn , 效率 , JAVA , 工作流

得物技術 - 前端打包工具Mako架構解析|得物技術

一、Mako是什麼 Mako是一個新的Web打包工具,適用於Web應用、庫和框架。它被設計得快速、可靠且易於使用。Mako已被數百個生產項目中使用。如果你正在尋找一個現代的Web打包工具,Mako是正確的選擇。 二、特點 零配置 從一個JS/TS文件開始,Mako將處理其餘部分。開箱即支持TypeScript、Less、CSS、CSS Modules、React、圖像、字體、WASM

構建工具 , mako , rust , webassembly , 前端

得物技術 - 秒開率破90%!交易後台渲染性能優化 | 得物技術

一、前言 一直以來,體驗都是得物技術部的關鍵詞之一,對於前端開發而言,提高用户體驗更是一項至關重要的工作。本文從本次交易後台性能優化實踐出發,同時介紹應用整體架構和設計,希望可以給參與網站性能建設的同學提供一定的學習和參考價值。 二、系統簡介 交易後台是現有交易流程主要系統,包含商品、出價、商家、訂單等二級業務域,其承載了交易的核心任務,在交易平台的整體架構中佔據着非常重要的地位。業務背景:整體日

性能優化 , 後台運行 , 前端框架 , 後台 , 前端

得物技術 - 虛擬線程原理及性能分析

一、背景 JDK21 在 9 月 19 號正式發佈,帶來了較多亮點,其中虛擬線程備受矚目,毫不誇張的説,它改變了高吞吐代碼的編寫方式,只需要小小的變動就可以讓目前的 IO 密集型程序的吞吐量得到提升,寫出高吞吐量的代碼不再困難。 本文將詳細介紹虛擬線程的使用場景,實現原理以及在 IO 密集型服務下的性能壓測效果。 二、為了提升吞吐性能,我們所做的優化 在講虛擬線程之前,我們先聊聊為了提高吞吐性能,

性能優化 , JDK

得物技術 - 彩虹橋架構演進之路-性能篇

一、前言 一年前的《彩虹橋架構演進之路》側重探討了穩定性和功能性兩個方向。在過去一年中,儘管業務需求不斷增長且流量激增了數倍,彩虹橋仍保持着零故障的一個狀態,算是不錯的階段性成果。而這次的架構演進,主要分享一下近期針對性能層面做的一些架構調整和優化。其中最大的調整就是 Proxy-DB 層的線程模式從 BIO 改造成了性能更好的 NIO。下面會詳細介紹一下具體的改造細節以及做了哪些優化。 閲讀本文

中間件 , 高性能 , 數據庫 , nio