轉(zhuǎn)帖|行業(yè)資訊|編輯:龔雪|2021-05-17 09:51:51.020|閱讀 168 次
概述:未來的十年是產(chǎn)業(yè)互聯(lián)網(wǎng)的時(shí)代,產(chǎn)業(yè)互聯(lián)網(wǎng)的特點(diǎn)是數(shù)字化、線上化、效率化。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
未來的十年是產(chǎn)業(yè)互聯(lián)網(wǎng)的時(shí)代,產(chǎn)業(yè)互聯(lián)網(wǎng)的特點(diǎn)是數(shù)字化、線上化、效率化。這意味著各行各業(yè)急需數(shù)字化轉(zhuǎn)型和效率轉(zhuǎn)型。而在這場轉(zhuǎn)型過程中,企業(yè) OA 系統(tǒng)扮演著至關(guān)重要的角色。
對(duì)企業(yè)而言,OA 系統(tǒng)不僅提高了企業(yè)的組織管理水平及辦公效率,更實(shí)現(xiàn)了提高決策效能的目的,使企業(yè)競爭力得到提升。但是,隨著 OA 系統(tǒng)功能模塊越來越齊全,越來越臃腫,也讓這一效率平臺(tái)逐漸“失效”。
OA 系統(tǒng)的管理最終還需要回歸至業(yè)務(wù)管理的道路上來,畢竟業(yè)務(wù)才是企業(yè)的運(yùn)作根本。OA 系統(tǒng)中常見的業(yè)務(wù)管理包括哪些呢?比如財(cái)務(wù)報(bào)表的制作,憑證的生成;采購部的供貨商的管理,采購單據(jù)的輸入與保管;業(yè)務(wù)部的合同管理,客戶維護(hù)等等。這些大部分都是在表格的形式中完成分析與決策的,需要要求 OA 系統(tǒng)將數(shù)據(jù)完好的保存與共享,并與其他系統(tǒng)進(jìn)行數(shù)據(jù)整合。
但目前企業(yè) OA 系統(tǒng)中的表格功能,大部分都肩負(fù)著非常復(fù)雜的業(yè)務(wù)需求。不僅需要具備著傳統(tǒng) Excel 中的大部分核心功能,包括函數(shù)計(jì)算、條件格式、圖表等等;還需要支持高效的多人協(xié)同編輯以及龐大的數(shù)據(jù)處理需求。
數(shù)據(jù)量以及表格功能的逐漸增加,隨之而來的就是計(jì)算速度的降低。這不僅會(huì)影響工作效率,打斷思路的連貫性,也會(huì)增加員工或者用戶的出錯(cuò)率和對(duì)工作的厭煩程度(尤其時(shí)在處理重復(fù)任務(wù)時(shí))。
此外,內(nèi)存占用的問題,也是 OA 系統(tǒng)中一項(xiàng)非常重要但容易被人忽略的性能指標(biāo),如果技術(shù)選型時(shí)未考慮內(nèi)存占用問題,往往會(huì)出現(xiàn)一個(gè) 3M 的文件消耗 100 多兆內(nèi)存空間的情況。如果同時(shí)進(jìn)行包含大數(shù)據(jù)量的 Excel 讀操作,很容易造成內(nèi)存溢出問題。傳統(tǒng)企業(yè)的技術(shù)決策層普遍都會(huì)忽視“內(nèi)存的價(jià)值”,但是:
所以除非企業(yè)真的有充足的預(yù)算去升級(jí)服務(wù)器,不然真的不能忽略內(nèi)存的優(yōu)化。這兩個(gè)問題的背后,也引出了我們今天討論的重點(diǎn) —— 如何提高 OA 系統(tǒng)表格模塊的數(shù)據(jù)處理性能 & 表格數(shù)據(jù)處理產(chǎn)品的技術(shù)選型。
大部分企業(yè)在項(xiàng)目的日常開發(fā)中遇到表格數(shù)據(jù)處理需求時(shí),往往會(huì)在業(yè)務(wù)代碼中直接引入如 Apache POI 這類的技術(shù)解決方案。
Apache POI 作為一款非常強(qiáng)大的 Office 軟件操作包,是 Apache 軟件基金會(huì)用 Java 編寫的免費(fèi)開源的跨平臺(tái) Java API,提供了對(duì) Microsoft Office 格式文件的讀寫功能,在項(xiàng)目中的應(yīng)用非常廣泛,作為一款開源軟件,為開發(fā)者提供了極大的便利。
然而,即便 POI 很強(qiáng)大,但仍存在一些不可忽視的問題。首先是代碼相對(duì)比較繁瑣,并且當(dāng) Excel 的數(shù)據(jù)量非常大的時(shí)候,POI 的操作邏輯是將整個(gè) Excel 的內(nèi)容全部讀出來放入到內(nèi)存中,這就導(dǎo)致內(nèi)存消耗非常嚴(yán)重,一個(gè) 3M 的文件甚至需要消耗 100 多兆的內(nèi)存空間。如果同時(shí)進(jìn)行包含大數(shù)據(jù)量的 Excel 讀操作,很容易造成內(nèi)存溢出問題。
除了耗內(nèi)存以外,還有版本兼容性不夠等缺點(diǎn),在進(jìn)行版本升級(jí)的過程中,需要對(duì)以前的代碼進(jìn)行修改,或者對(duì) jar 包進(jìn)行版本隔離,這些都對(duì)項(xiàng)目帶來了很多潛藏的風(fēng)險(xiǎn)。
為了幫助有相關(guān)需求的企業(yè)人員進(jìn)行技術(shù)選型,提供一些更直觀的數(shù)據(jù)對(duì)比,我們?yōu)榇蠹疫M(jìn)行了一次對(duì)比測試,下圖是測試的相關(guān)結(jié)果:
從測試數(shù)據(jù)來看,葡萄城提供的服務(wù)端高性能表格組件 (簡稱:GcExcel)無論從運(yùn)行速度、功能,還是內(nèi)存消耗等方面,都要比 Apache POI 表現(xiàn)的更為優(yōu)秀,如其平均處理速度可以達(dá)到 POI 的 7 倍,而內(nèi)存消耗卻不到七分之一。
為了進(jìn)一步測試 Excel 文件的讀取性能極限,我們使用了 StopWatch 函數(shù)來監(jiān)聽 Excel 的打開時(shí)間,測試對(duì)象為一個(gè)包含 30 列、1,000,000 行、30,000,000 個(gè)單元格數(shù)據(jù)的電子表格文件。經(jīng)過測試, Excel 打開這個(gè)文件需要等待 34 秒,而用 GcExcel 打開這樣一份文件,僅需 12 秒。
這 20 秒的時(shí)間,對(duì)于用戶體驗(yàn)以及業(yè)務(wù)流轉(zhuǎn)來說,重要性不言而喻。這個(gè)測試結(jié)果也為企業(yè)選型提供了一個(gè)思路 —— 你愿意投入多少成本,來為這 20 秒的業(yè)務(wù)優(yōu)化買單?
為了這短短的 20 秒,葡萄城嘗試了大量的優(yōu)化實(shí)踐,如減少垃圾回收、共享存儲(chǔ)、利用高速緩存、使用基于集合的操作運(yùn)算、利用 SIMD 計(jì)算數(shù)據(jù)等,基于這些實(shí)踐推出的表格組件 SpreadJS 和 GcExcel 已經(jīng)幫助許多企業(yè)減少了項(xiàng)目研發(fā)成本,實(shí)現(xiàn)了更高的處理性能。
以 GcExcel 為例,其在服務(wù)端實(shí)現(xiàn)批量導(dǎo)入導(dǎo)出電子表格數(shù)據(jù),有效規(guī)避了前端瀏覽器的內(nèi)存限制,配合 SpreadJS 使用,可讓系統(tǒng)達(dá)到真正的前后端負(fù)載均衡,幫助開發(fā)者輕松應(yīng)對(duì) OA 系統(tǒng)開發(fā)時(shí)經(jīng)常會(huì)面臨的在線文檔前后端數(shù)據(jù)同步、批量導(dǎo)出與打印,以及報(bào)表模板高性能處理等業(yè)務(wù)場景需要。
其實(shí),表格技術(shù)及其衍生工具的概念并不新穎,但隨著企業(yè)對(duì)于系統(tǒng)處理性能和易用性的要求逐步加深,在近幾年愈發(fā)受到開發(fā)人員和技術(shù)決策者的關(guān)注,葡萄城作為深耕表格技術(shù)領(lǐng)域的探索者,其推出的多款表格組件已成為表格技術(shù)領(lǐng)域的“必備解決方案”,幫助企業(yè)用極低的成本達(dá)到“降本增效”的目的。
在數(shù)字化轉(zhuǎn)型的浪潮下,大部分企業(yè)的業(yè)務(wù)運(yùn)轉(zhuǎn)中表格應(yīng)用場景已經(jīng)十分廣泛,隨著業(yè)務(wù)的發(fā)展,本地文檔管理或者傳統(tǒng)開源免費(fèi)的 POI,已經(jīng)無法滿足用戶對(duì)于表格產(chǎn)品的性能和系統(tǒng)兼容度的需求,這也迫使表格產(chǎn)品不斷的優(yōu)化迭代,優(yōu)勝劣汰。誰能找到最契合自身業(yè)務(wù)發(fā)展的技術(shù)選型或產(chǎn)品,誰便更有可能找到更多的發(fā)展契機(jī)。
純前端表格控件SpreadJS,兼容 450 種以上的 Excel 公式,具備“高性能、跨平臺(tái)、與 Excel 高度兼容”的產(chǎn)品特性,備受華為、蘇寧易購、天弘基金等行業(yè)龍頭企業(yè)的青睞,并被中國軟件行業(yè)協(xié)會(huì)認(rèn)定為“中國優(yōu)秀軟件產(chǎn)品”。SpreadJS 可為用戶提供類 Excel 的功能,滿足表格文檔協(xié)同編輯、 數(shù)據(jù)填報(bào)、 類 Excel 報(bào)表設(shè)計(jì)等業(yè)務(wù)場景需求,極大的降低企業(yè)研發(fā)成本和項(xiàng)目交付風(fēng)險(xiǎn)。
本文轉(zhuǎn)載自
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自: