• 회원가입
  • 로그인
  • 구글아이디로 로그인

[faq] Jinja - FAQ - 진자는 얼마나 빠른가요?

1.
  • Jinja는 템플릿 코드를 Python 코드로 컴파일하고 캐시하므로 템플릿을 매번 구문 분석하고 해석할 필요가 없기 때문에 템플릿 엔진 중에서 상대적으로 빠름
  • 템플릿 렌더링은 Python 함수 실행에 최대한 가까워짐.
 
2.
  • Jinja는 또한 캐싱을 광범위하게 사용함
  • 템플릿은 로드 후 이름별로 캐시되므로 나중에 템플릿을 사용하면 로드되지 않음. 
  • 템플릿 로딩 자체는 반복적인 컴파일을 피하기 위해 바이트코드 캐시를 사용함. 
  • 캐시는 다시 시작해도 지속되도록 외부에 있을 수 있음. 
  • 템플릿은 빠른 Python 가져오기로 미리 컴파일되고 로드될 수도 있음.
 
3.
  • 우리는 벤치마크가 실제 사용을 반영하지 않기 때문에 싫어함. 
  • 성능은 여러 요인에 따라 달라짐. 
  • 엔진마다 기본 구성과 장단점이 다르기 때문에 유용한 비교를 설정하는 방법이 불분명함. 
  • 종종 데이터베이스 액세스, API 호출 및 데이터 처리는 템플릿 엔진보다 성능에 훨씬 더 큰 영향을 미침.
 
PS. 공식 매뉴얼

분류 제목
tests Jinja - sameas() 테스트 - 두 객체의 메모리 주소 동일성 체크 (= sameas테스트 = 세임…
tests Jinja - sequence() 테스트 - 시퀀스인지 여부 체크 (= sequence테스트 = 시퀀스테스트…
tests Jinja - string() 테스트 - 문자열인지 체크 (= string테스트 = 스트링테스트)
tests Jinja - test() 테스트 - 테스트 존재 여부 체크 (= test테스트 = 테스트테스트)
tests Jinja - true() 테스트 - 참인지 체크 (= true테스트 = 트루테스트)
tests Jinja - undefined() 테스트 - 변수가 정의 안 되었는지 체크 (= undefined테스트 =…
tests Jinja - upper() 테스트 - 대문자인지 체크 (= upper테스트 = 어퍼테스트)
functions Jinja - range() 함수 ★ - 지정 범위 안 지정 간격의 정수 리스트 반환 (= range함수 =…
functions Jinja - lipsum() 함수 - 로렘입섬(= 의미없는 채우기용 문자열) (=lipsum함수 = 립섬함…
functions Jinja - dict() 함수 ★ - 딕트 리터럴 반환 (= 딕셔너리 반환 = dict함수 = 딕트함수)
functions Jinja - cycler() 함수 ★ - 교대순환 반환 (=cycler함수 = 사이클러함수) ※ cycle…
functions Jinja - joiner() 함수 ★ - 결합구분자 지정 (= 결합문자 지정 = joiner함수 = 조이너…
functions Jinja - namespace() 함수 - 속성 할당 가능한 변수 생성 (= namespace함수 = 네임…
structures Jinja - for 반복문 (= for반복문 = 포반복문/포문)
structures Jinja - if 조건문 (= if조건문 = 이프조건문/이프문)
structures Jinja - macro (매크로)
structures Jinja - call (콜블럭) ※ caller함수 = 콜러함수
structures Jinja - filter (필터섹션)
structures Jinja - Assignments (할당) ※ set태그 = 셋태그 ※ namespace (네임스페이스) …
structures Jinja - Block Assignments (블럭 할당)
8/9
목록
찾아주셔서 감사합니다. Since 2012