종결 사망(Qwik 어떻게 해결)
우리 얘기 좀 하자.
TTI(또는 상호 작용) 측정은 탐색에서 URL 및 페이지로 이동하는 시간을 측정합니다.응답 사이트의 모양새를 만들려면 SSR(서버측 렌더링)을 사용해야 합니다.그 사고방식은 사이트를 사용자에게 신속하게 보여주고 무엇을 눌러야 할지 결정할 때 프로그램은 자동으로 모든 탐지기를 시작하고 설치할 것이다.따라서 TTI는 실제로 프레임에 DOM 탐지기를 설치하는 데 걸리는 시간을 가늠하는 지표다.
위의 그림에서 우리는 안내에서 상호작용까지의 시간에 대해 흥미를 느낀다.인터랙티브에서 시작하여 뒤로 나아가 틀이 목표를 실현하는 데 필요한 모든 것을 이해하자.
described
.embedded
가 described.
보다 더 좋다고 생각한다. 정보는 삽입된 것이다. 왜냐하면 프레임워크가 쉽게 얻을 수 없기 때문이다.프레임워크는 템플릿을 실행해야만 탐지기 클립에 도착할 수 있습니다.상호작용 상태로 들어가려면 많은 일을 해야 한다.현재의 모든 세대의 틀은 이렇게 일한다.마지막으로 대부분의 프로그램을 다운로드하고 실행해야 프레임워크가 탐지기를 찾아 설치할 수 있다는 뜻이다.
클로즈업에 대해서 얘기를 해볼게요.
위에서 기술한 핵심 문제는 코드를 다운로드하려면 대량의 대역폭이 필요하고 프레임워크는 대량의 CPU 시간이 있어야만 감청기를 찾을 수 있으며 이렇게 하면 페이지가 상호작용할 수 있다는 것이다.그러나 우리는 클립이 코드와 데이터에서 닫힌 것을 잊어버렸다.이것은 매우 편리한 속성이며, 또한 우리가 클로즈업을 좋아하는 이유이기도 하다.그러나 이것은 모든 클립 데이터와 코드가 클립을 만들 때 사용할 수 있어야 하며, 클립을 실행할 때 게으름 피우지 않고 사용할 수 있어야 한다는 것을 의미한다.
JSX 시스템에도 같은 템플릿 문제가 있습니다(다른 템플릿을 보십시오):
import {addToCart} from './cart';
function MyBuyButton(props) {
const [cost] = useState(...);
return (
Price: {cost}
<button onclick={() => addToCart()}>
Add to cart
</button>
);
}
우리가 필요로 하는 상호작용은 청중이 어디에 있는지 아는 것이다.위의 예에서 이러한 정보는 템플릿과 얽혀서 페이지의 모든 템플릿을 다운로드하고 실행하지 않으면 추출하기 어렵다.한 페이지에 수백 개의 사건 탐지기가 있을 수 있지만, 그 중 절대 다수는 영원히 실행되지 않을 것이다.왜 우리는 코드를 다운로드하고 가능한 내용을 위해 클립을 만드는 데 시간을 들여야 합니까? 필요할 때 클립을 만들지 않고?
문을 닫고 수레를 만들다
폐쇄는 값싼 것이고 곳곳에 있다.그런데 얘네가 싸요?네, 아니에요. 네, 실행할 때 아주 싸게 만들 수 있어요.그러나 그것들은 코드를 닫았기 때문에 다른 방식보다 더 빨리 다운로드해야 하기 때문에 매우 비싸다.그리고 나무가 흔들리는 것을 막을 수 있기 때문에 매우 비싸다.그래서 우리는'폐관자수'라고 부르는 경우가 있다.클립은 DOM에 설치되어 있으며, 영원히 실행되지 않을 가능성이 높은 코드를 닫는 데 사용된다.
페이지의 구매 버튼은 매우 복잡해서 클릭이 매우 적다.그러나 바이어 단추는 클로즈업이 이렇게 하기 때문에 그와 관련된 모든 코드를 다운로드하도록 강요한다.
Qwik로 탐지기 HTML 서열화
위에서, 나는 폐쇄가 숨겨진 비용이 있을 수 있다는 것을 지적하려고 했다.이런 비용은 코드를 급히 다운로드하는 형식으로 나온다.이 때문에 클로즈업은 만들기 어려워서 사용자와 인터랙티브 사이트 사이에 존재한다.
Qwik은 가능한 한 탐지기 생성을 지연시키기를 원합니다.Qwik은 이러한 목표를 달성하기 위해 다음과 같은 임차인을 보유하고 있다.
<button on:click=”MyComponent_click”>Click me!</button>
그런 다음 파일에서: MyComponent_click.ts
export default function () {
alert('Clicked');
}
위에 코드 좀 봐.SSR은 렌더링 중에 탐지기의 위치를 발견했습니다.SSR은 이 정보를 버리지 않고 탐색기를 HTML로 서열화합니다.현재 클라이언트는 모니터가 어디에 있는지 확인하기 위해 템플릿을 재방송할 필요가 없다.대신 Qwik은 다음과 같은 방법을 사용합니다.qwikloader.js
를 설치합니다.1KB 미만이며 실행 시간은 1ms 미만입니다.매우 작기 때문에 서버의 왕복 시간을 절약할 수 있도록 HTML에 삽입하는 것이 가장 좋다.qwikloader.js
는 전역 이벤트 처리 프로그램을 등록하고 거품 기능을 이용하여 모든 사건을 한 번에 정탐할 수 있다.addEventListener
더 적은 수의 전화 = > 더 빠른 상호 작용 시간한마디로 Qwik의 배후 이념은 회복할 수 있다는 것이다.서버가 중단된 곳에서부터 시작하여 클라이언트에서 1KB만 실행하면 됩니다.응용 프로그램이 아무리 거대하고 복잡해져도 이 코드들은 변하지 않을 것이다.앞으로 몇 주 동안 Qwik이 어떻게 독립적으로 회복, 관리 상태와 구성 요소를 보여주는지 알아보겠습니다. 그러니 계속 주목해 주십시오!
우리는 Qwik의 미래와 그것이 시작된 용례에 대해 매우 흥분했다.
Reference
이 문제에 관하여(종결 사망(Qwik 어떻게 해결)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/builderio/death-by-closure-and-how-qwik-solves-it-44jj텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)