cres-project / irce-wikipedia

aka "ircepedia"
0 stars 0 forks source link

画像のあるページに表示に時間がかかる #36

Open yegusa opened 9 years ago

yegusa commented 9 years ago

「コスモス」だと10秒くらいかかる。

masao commented 9 years ago

調査の結果、https://phabricator.wikimedia.org/T56033 Commons画像をロードするのに時間がかかる問題については、MediaWiki本家にてバグ報告あり。 対応方法は未定。。。

1)APIロードを一括で行うよう改造するか、 2)キャッシュをあらかじめすべてのページについて読み込んでおくか、 3)imageテーブルの情報をあらかじめ読み込んでおくか、 といった対応を検討する必要あり(3は難しそう)。

masao commented 9 years ago

以下に、[[北抜き]] ページがファイル読み込みした際のAPI呼び出しの例を示す:

ForeignAPIRepo: HTTP GET: https://commons.wikimedia.org/w/api.php?titles=File%3AQuestion_book-4.svg&
iiprop=timestamp%7Cuser%7Ccomment%7Curl%7Csize%7Csha1%7Cmetadata%7Cmime%7Cmediatype%7Cextmetadata&pr
op=imageinfo&iimetadataversion=2&iiextmetadatamultilang=1&format=json&action=query&redirects=true&us
elang=ja
ForeignAPIRepo: HTTP GET: https://commons.wikimedia.org/w/api.php?titles=File%3AQuestion_book-4.svg&
iiprop=url%7Cthumbnail%7Ctimestamp&iiurlwidth=50&iiurlheight=40&iiurlparam=50px&prop=imageinfo&forma
t=json&action=query&redirects=true&uselang=ja
ForeignAPIRepo::getThumbUrl got remote thumb https://upload.wikimedia.org/wikipedia/commons/thumb/6/
64/Question_book-4.svg/50px-Question_book-4.svg.png
ForeignAPIRepo: HTTP GET: https://commons.wikimedia.org/w/api.php?titles=File%3AQuestion_book-4.svg&
iiprop=url%7Cthumbnail%7Ctimestamp&iiurlwidth=75&iiurlheight=60&iiurlparam=75px&prop=imageinfo&forma
t=json&action=query&redirects=true&uselang=ja
ForeignAPIRepo::getThumbUrl got remote thumb https://upload.wikimedia.org/wikipedia/commons/thumb/6/
64/Question_book-4.svg/75px-Question_book-4.svg.png
ForeignAPIRepo: HTTP GET: https://commons.wikimedia.org/w/api.php?titles=File%3AQuestion_book-4.svg&
iiprop=url%7Cthumbnail%7Ctimestamp&iiurlwidth=100&iiurlheight=80&iiurlparam=100px&prop=imageinfo&for
mat=json&action=query&redirects=true&uselang=ja
ForeignAPIRepo::getThumbUrl got remote thumb https://upload.wikimedia.org/wikipedia/commons/thumb/6/
64/Question_book-4.svg/100px-Question_book-4.svg.png

最初の呼び出し:

masao commented 9 years ago

API呼び出しをダミーで行うCGIスクリプトをローカルで動作させることにした。 → https://github.com/masao/irce-wikipedia/blob/master/webapp/commons-api.cgi