2010-12-08 72 views
0

我已經安裝了Mediawiki Collection Extension和mwlib以將文章(或文章集合)呈現爲PDF。這適用於最多20篇文章的單篇文章和收藏。將大量文章呈現爲PDF失敗,MediaWiki與mwlib

當我渲染較大的集合時,解析頁面中的百分比計數器(渲染成功時計數爲100%)會停留在1%。

看着mwrender.log我看到一個錯誤32 - 管道損壞的錯誤。搜索互聯網顯示,錯誤32可能是由接收過程(管道後部分)崩潰或無響應引起的。

從這裏很難繼續。我應該在哪裏尋找更多的線索?它可能是連接到MySQL服務器死亡?

整個應用程序在Turnkey Linux Mediawiki VM上運行。

回答

0

我使用的是PDF Export Extension,它可以處理超過20篇文章。也許試試?

+0

我也使用它,與Collection擴展一起使用。你是否也能成功獲得超大型藏品(70+)? – Docbuilder 2010-12-08 20:03:02

0

我自己想出了這個問題。

Mw-render爲集合中的每篇文章生成並行請求。這意味着,對於50個頁面的收集,可以同時發出50個請求。 Apache可以處理這個,但不是MediaWiki的MySQL數據庫。

您可以使用--num-threads = NUM​​選項來限制mw-render spawns的線程數量。我找不到mw-serve調用mw-render,所以我只限制了Apache可能產生的最大線程數(工作人員)爲10.

如果第一個失敗,mw-render自動重複請求文章,所以這種方法奏效。

我在4分鐘內用185篇文章呈現了一份PDF,結果PDF有300多頁。