2011-03-16 2 views
11

성능면에서 Chameleon 대 Jinja2의 벤치마킹을 수행 한 사람이 있습니까? 나는 장고에서 왔기 때문에 Jinja 문법에 익숙해졌지만, 피라미드가 카멜레온을 사용하도록 제안했기 때문에 어색한 구문, IMO가 있음에도 불구하고 카멜레온을 사용해 보는 것이 좋을지 생각하고 있습니다.Chameleon과 Jinja2의 속도 비교

+0

문제를 제기 해 주셔서 감사합니다. HTML-to-Python 템플릿 변환을 만들고 있습니다. TAL (카멜레온)은 원본 템플릿의 구조를 변경하지 않아야합니다 (일명 비 관입). TAL에서는 non-xml 요소를 도입하지 않습니다. –

답변

5

나는 꽤 가까워서 벤치 마크에 따라 각각 이길 것이라고 생각합니다. 나는 당신이 구문을 얼마나 좋아 하는지를 바탕으로 템플릿 엔진을 선택하는 것이 더 좋다고 생각한다. (내가 선호하는 것은 pyTenjin이다.) 자신의 프로젝트/프레임 워크에 그것을 통합하는 것이 얼마나 쉬운지를 기반으로한다.

Jinja2는 (빠른 장고 이상 ~ 20 배)의 속도 마코 유사합니다 source

카멜레온은 장고보다 약 20 배 빠른 : source

그리고 pyTenjin은 거기에 있습니다 : source

4

jinja2도 피라미드 바인딩의 "공식적인"세트를 가지고 있음을 명심하십시오. pyramid_jinja2

Chamelon은 이제 Jinja2보다 핵심입니다. 대부분은 피라미드의 repoze.bfg의 유물입니다

18

템플릿 엔진은 거의 성능상의 문제가 아닙니다. 카멜레온이 Jinja2보다 약간 빠르 긴해도 새로운 템플릿 언어 등을 배우려는 노력은 의심 스럽습니다.

데이터베이스 쿼리와 캐싱을 최적화하면 템플릿 엔진을 전환하고 약간의 노력을 기울일 때 얻을 수있는 것보다 더 많은 성능을 얻을 수 있습니다.

+6

+1. 데이터베이스는 템플릿 엔진보다 병목 현상이 더 많이 발생합니다. – Cameron