# 文件處理引擎重構：效能提升與資源最佳化

Canonical: https://www.nsecsoft.com/hk/default/performance-enhancement.html

Language: zh-HK

Updated: 2026-11-04T08:08:35.421984Z

文件內文擷取是資料安全分析的基礎能力，其處理效率與資源占用直接影響相關任務的執行成本。面對持續成長的文件處理需 \[…\]

![adrien\-olichon\-RCAhiGJsUUE\-unsplash\.jpg](<https://www.nsecsoft.com/site-assets/bd479a7e2f6829c160217f5ef8075eb7317c364c4447adfeb14f5da8239c94ec/6bc397b733a438a51bc3bb1aa5ccd17036801761f2e5e9a1ab1ae8d42f722bb6/71096c8abaf324fd138c6884cf53aefc1007229c5a48f9dbbb4fb57355ce68d5/adrien-olichon-rcahigjsuue-unsplash.jpg>)

文件內文擷取是資料安全分析的基礎能力，其處理效率與資源占用直接影響相關任務的執行成本。面對持續成長的文件處理需求，引擎最佳化需要同時關注內容完整性、處理延遲與運算資源消耗，並透過統一條件下的測量驗證實際效益。

此次文件處理引擎重構以提升處理效率、降低 CPU 運算負擔與單一任務記憶體峰值為目標。效能評估採用相同文件集，對重構後方案、原有方案和 Apache Tika 進行三方對照，涵蓋 DOCX、XLSX、PPTX 和 PDF 四類格式。

在

**單一文件使用獨立處理程序、計入啟動與初始化成本**

的測試條件下，相較原有方案，重構後方案的累計耗時約降低

**93.0%**

，累計 CPU 時間約降低

**94.3%**

，每輪最大單一任務峰值工作集約降低

**67.7%**

。上述降幅限於本輪工作負載與測量方式，不代表整機資源消耗或所有部署情境的同等變化。

#### **效能效益概覽**

測試包含 12 份生成文件，每種格式設定三種規模。每個方案完成六輪正式測量，下表列出六輪中位數。

| 指標 | 重構後方案 | 原有方案 | Apache Tika 3.3.0 |
| --- | --- | --- | --- |
| 12 項任務累計耗時 | **0.724 秒** | 10.326 秒 | 14.528 秒 |
| 12 項任務累計 CPU 時間 | **0.570 秒** | 9.930 秒 | 46.250 秒 |
| 每輪最大單一任務峰值工作集 | **36.18 MiB** | 111.90 MiB | 320.15 MiB |

耗時與 CPU 時間分別對每輪的 12 個任務加總；記憶體指標取每輪最大的單一任務峰值，再計算六輪中位數，

**不累加不同任務的記憶體占用**

。累計耗時由輪換執行的獨立任務組成，不等同於常駐服務連續處理的吞吐量測量。

相較本輪設定下的 Apache Tika，重構後方案的三項指標分別約降低

**95.0%、98.8% 和 88.7%**

。Apache Tika 僅作為外部對照，本結果不評價其他版本或部署設定。

#### **文件處理耗時**

![Ping64,三方在四種格式、三種規模下的單一任務耗時曲線](<https://www.nsecsoft.com/site-assets/bd479a7e2f6829c160217f5ef8075eb7317c364c4447adfeb14f5da8239c94ec/d868bce8ca957386f2e715e4ce58083c120c69166290c21579a86d6588b25bd2/bbfba9c0e76aa11538d208965f58c09b991e813ddc6b5e67638474ce90137f8d/latency-curves.png>)

在全部 12 份測試輸入上，重構後方案的單一任務耗時中位數均低於兩個對照。結果表明，在本輪短生命週期任務模型下，文件處理的實際等待時間得到縮短。

不同格式的改善幅度存在差異。原有方案處理簡報的耗時相對較低，PDF 的耗時則隨本組頁數增加而成長得更明顯。因此，單一格式的最佳結果不足以代表全部文件。

本次測量包含初始化、內文擷取與結果輸出，未分別測量各階段的貢獻，不能將全部效益歸因於某一具體環節或技術選擇。

#### **CPU 運算負擔**

![Ping64,三方在四種格式、三種規模下的單一任務累計 CPU 時間曲線](<https://www.nsecsoft.com/site-assets/bd479a7e2f6829c160217f5ef8075eb7317c364c4447adfeb14f5da8239c94ec/08ced53912ee7f46d79149b1c14aa94c328a460f0e1a33775c6be6e0e1bf620d/5cec920a4768a62d151e09005697d0ffc27301e9090fb92f135e48e81601dbac/cpu-time-curves.png>)

處理延遲與運算負擔是不同指標。平行執行可能縮短實際經過時間，同時增加累計 CPU 時間，因此效能評估同時記錄兩者。

完成同一組 12 項任務時，重構後方案的累計 CPU 時間中位數由原有方案的

**9.930 秒**

降至

**0.570 秒**

。這一結果支持重構後方案在所測工作負載下降低了累計運算負擔。

**CPU 時間不等於整機 CPU 使用率**

，也不能直接換算為能耗或續航變化。本次測試未測量整機使用率、耗電量或電池續航，不據此作相關推論。

#### **單一任務記憶體峰值**

![Ping64,三方在四種格式、三種規模下的單一任務峰值工作集曲線](<https://www.nsecsoft.com/site-assets/bd479a7e2f6829c160217f5ef8075eb7317c364c4447adfeb14f5da8239c94ec/309b10449d38fb3f2497323c5802173506eb364b568ab58e78473564de3799db/d3a598abbf8cc00ac5a65912b7e524529c9a06453560eaff18cfdc9e026f6033/memory-curves.png>)

重構後方案每輪最大單一任務峰值工作集的中位數由原有方案的

**111.90 MiB**

降至

**36.18 MiB**

。該指標為作業系統記錄的處理程序最大駐留工作集，包含執行環境及共用駐留頁面，不等同於私有記憶體或整機記憶體占用。

各格式的記憶體成長趨勢並不相同。本組試算表文件的成長較簡報明顯，說明資源預算仍需結合格式與內容規模制定，不能由小型檔案結果直接外推大型檔案表現。

單一任務峰值的降低為控制文件處理資源需求提供了依據，但不意味著可以同比增加並行任務數。並行負載涉及峰值重疊、共用頁面和快取等因素，需獨立測量。

#### **測試條件與結果驗證**

測試於 2026 年 10 月 20 日在同一台 Windows 工作站完成，三方測試處理程序均驗證為 x64。

| 測試條件 | 設定 |
| --- | --- |
| 處理器 | Intel Core i7-12700，12 核心、20 邏輯處理器 |
| 系統與記憶體 | Windows 11 專業版，組建 26300；系統可見記憶體約 127.7 GiB |
| 執行設定 | 平衡電源計畫，不修改處理器親和性，保留背景應用程式 |
| 外部对照 | Apache Tika 3.3.0；Java 18.0.2，堆積大小上限 1 GiB；直接呼叫解析 API，不啟動 HTTP 服務 |
| 測量範圍 | 每份文件建立新處理程序，計入啟動、初始化、內文擷取、結果輸出與結束；不計測試控制器後續驗證及排程時間 |

樣本規模分別為：DOCX 100、1,000、5,000 段；XLSX 100、1,000、5,000 行，每行 6 欄；PPTX 5、50、200 頁，每頁 10 段；PDF 5、50、200 頁，每頁 35 行。三方讀取相同輸入，檔案摘要在測試前後保持一致。

每個「文件—方案」組合預熱一次後執行六次正式測量，均使用新處理程序。預先讀取輸入，但不清空系統檔案快取；六輪涵蓋三方全部六種執行順序，文件順序依固定種子重新排列。共完成

**216 次正式測量**

，另有 36 次預熱不計入統計，未剔除正式測量中的慢樣本。

每次執行均驗證成功狀態，並按順序比對內文中的全部英數詞元；工作表名稱的包含差異在測試前登記，不作為內文差異。

**216 次正式測量全部通過該驗證**

，未將失敗、空內文或內文缺失計為更快的結果。該檢查不比較空白排版，也不構成複雜文件行為一致性的證明。

CPU 時間採用使用者模式與核心模式累計時間之和，多執行緒時可能大於實際經過時間。本機計時呈約 15.6 毫秒的離散階梯，短任務零讀數不代表零運算。記憶體採用系統維護的峰值工作集計數，而非僅由定時取樣推測峰值。

曲線顯示六次測量的中位數及最小—最大值，誤差線不是信賴區間，連線不用於未測規模的外推。降幅使用未四捨五入的中位數，依「1 − 重構後數值 ÷ 對照數值」計算；不同指標的降幅不能相加或合併為綜合效能提升率。

#### **適用範圍**

本輪結果驗證了文件處理引擎重構在所測工作負載下的耗時、CPU 時間與單一任務記憶體效益。獨立處理程序測試計入初始化成本，而常駐服務可以分攤此類成本，因此上述降幅不適用於直接推斷常駐請求延遲、預熱後純解析速度或持續吞吐量。

樣本為僅含 ASCII 文字的生成文件，不含圖片、公式、巨集、外部資源和嵌入附件，不代表企業實際文件的分布。歷史格式、中文與複雜編碼、特殊字型、複雜修訂、加密或損壞文件，以及 PDF 浮水印效果均需另行驗證；本輪結果不構成全面行為一致性的聲明。

測試僅涵蓋一台工作站、每個組合六次正式測量，不構成跨硬體或跨平台的效能承諾。以上數據來自 NSecsoft 內部基準測試，不是獨立第三方認證。
