2009-09-17 77 views
0

在我的Web應用程序中,我有一些表單並基於這些表單,用戶將生成一些Excel和圖表文件(.xls和.png)。每個用戶必須至少生成2個excel文件和5個png文件。當Web應用程序動態生成Excel和圖像文件

問題是,當要生成這些文件時,Excel文件需要2秒,圖表需要1秒。我正在使用PHPExcelpcharts庫。

你能給我一些關於如何優化這個任務的想法嗎?

+0

嘗試首先確定你的瓶頸在哪裏(慢數據庫,慢php代碼...) – Keeper 2009-09-17 07:54:08

+0

你可以嘗試配置你的代碼,以確定什麼部分是最耗時的... – RageZ 2009-09-17 07:54:42

回答

1

絕對的生成時間取決於您使用的記錄數。
讓我們假設這個數字是在很小的範圍內..

選項1

1秒圖表生成是確定。對於excel文件 - 不。
可能PHPExcel庫是一個你可能想用自己的函數來替代更快的xls文件生成。檢出here。我之前使用過這篇文章中的函數,他們像魅力一樣工作。當然,如果你需要很好地格式化你的數據,你就不得不使用PHPExcel,並且與此無關。

選項2

緩存文件服務器端。
例如,一旦您生成了chart/xls,您可以將它保存到適當的位置,並且當用戶稍後請求相同的圖表/ xls時,則不需要重新構建它。

+0

許多thx Andrejs。我喜歡你的兩個選擇。誰可以給我一些關於這個緩存過程的鏈接? – 2009-09-17 08:38:53

+0

我懷疑你會找到複製粘貼解決方案。你自己需要這個工具,因爲這是非常特定的項目。 – 2009-09-18 08:00:21