2010-07-15 29 views
2

因此,我們有一個頁面,其中有很多關於in的信息,我們使用{%trans%}很多,但是當我們實際使用它們時(USE_I18N = True)該站點停止運行,大約3.5秒,而i18n與300ms相關。Django國際化性能問題(3-4s vs 300ms with USE_I18N = False)

我們做了一些分析,似乎翻譯初始化需要永遠。

20.2% 0.503 /Library/Python/2.6/site-packages/Django-1.2.1-py2.6.egg/django/utils/translation/__init__.py 
15.3% 0.383 /System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/genericpath.py 
11.4% 0.285 /System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/gettext.py 
8.6% 0.215 /Library/Python/2.6/site-packages/Django-1.2.1-py2.6.egg/django/utils/formats.py 
8.5% 0.212 /System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/posixpath.py 
8.3% 0.206 /Library/Python/2.6/site-packages/Django-1.2.1-py2.6.egg/django/utils/functional.py 
7.6% 0.189 /Library/Python/2.6/site-packages/Django-1.2.1-py2.6.egg/django/utils/translation/trans_real.py 

我們試圖包裹{%反%}塊到另一個templatetag用於緩存的翻譯,但只獲得了幾個毫秒,而頁面不是真的那麼緩存(除了課程的翻譯) 。

任何人都有這方面的經驗,和/或一些關於如何使其更快的經驗?或者我們可能得到自己的任何凹陷?

回答

3

使用它的文檔似乎本地化(新在Django 1.2)是罪人。我們通過不啓用它來解決它(因爲我們無論如何都使用ISO格式)。

大概要把這個報告給django .. :-)

+0

+1:很好,我很快就會用到這個,很高興知道!並絕對報告它! – eruciform 2010-07-15 21:48:19