KR101574893B1 - Apparatus and method for caching web page layout using non-volatile memory - Google Patents
Apparatus and method for caching web page layout using non-volatile memory Download PDFInfo
- Publication number
- KR101574893B1 KR101574893B1 KR1020140059105A KR20140059105A KR101574893B1 KR 101574893 B1 KR101574893 B1 KR 101574893B1 KR 1020140059105 A KR1020140059105 A KR 1020140059105A KR 20140059105 A KR20140059105 A KR 20140059105A KR 101574893 B1 KR101574893 B1 KR 101574893B1
- Authority
- KR
- South Korea
- Prior art keywords
- web page
- layout
- caching
- web
- resource
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
- G06F16/986—Document structures and storage, e.g. HTML extensions
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
비 휘발성 메모리를 이용한 웹 페이지의 레이아웃 캐싱 장치 및 방법이 개시된다.
캐싱 방법은 원본 자원을 처리하여 처리된 자원을 생성하는 단계; 처리된 자원을 이용하여 웹 페이지의 레이아웃을 생성하는 단계; 및 상기 웹 페이지의 레이아웃을 비휘발성 메모리에 캐싱하는 단계를 포함할 수 있다.An apparatus and method for layout caching a web page using a nonvolatile memory is disclosed.
The caching method includes: processing an original resource to generate a processed resource; Generating a layout of a web page using the processed resource; And caching the layout of the web page in a non-volatile memory.
Description
본 발명은 캐싱 장치 및 방법에 관한 것으로, 보다 상세하게는 비휘발성 메모리를 이용하여 효율적으로 웹 페이지를 캐싱하는 캐싱 장치 및 방법에 관한 것이다. The present invention relates to a caching apparatus and method, and more particularly, to a caching apparatus and method for efficiently caching a web page using a nonvolatile memory.
종래의 웹 브라우저는 웹 서버로부터 수신한 웹 페이지의 원본 자원을 하드 디스크와 같은 저장 장치에 캐싱하고, 사용자가 동일 웹 페이지에 접속할 경우, 저장 장치에 캐싱된 원본 자원을 이용하여 웹 페이지를 표시함으로써, 웹 페이지를 표시하기 위하여 필요한 시간을 감소하였다.A conventional web browser caches original resources of a web page received from a web server in a storage device such as a hard disk, and when a user accesses the same web page, the web page is displayed using the original resource cached in the storage device , Reducing the time required to display the web page.
이때, 웹 브라우저가 웹 서버로 수신한 원본 자원은 웹 서버가 네트워크를 통하여 전송하기 위하여 부호화, 또는 변환한 자원일 수 있다. 따라서, 원본 자원을 처리하여 웹 페이지를 표시하기 위한 처리된 자원을 생성하는 과정이 필요하였다.At this time, the original resource received by the web browser through the web server may be a resource encoded or converted by the web server for transmission through the network. Thus, there was a need for a process to process the original resource and create a processed resource for displaying the web page.
즉, 종래의 웹 브라우저가 저장 장치에 캐싱한 자원은 원본 자원이므로, 캐싱된 자원을 이용하여 웹 페이지를 표시할 경우, 원본 자원을 처리하는 과정이 필요한 실정이다.That is, since the resource cached by the conventional web browser in the storage device is the original resource, when the web page is displayed using the cached resource, it is necessary to process the original resource.
따라서, 캐싱된 자원을 이용하여 웹 페이지를 표시하는 과정에서 필요한 처리 과정을 최소화하는 방법이 요구된다.Accordingly, there is a need for a method for minimizing the processing required for displaying a web page using cached resources.
본 발명은 캐싱된 자원을 웹 브라우저에 표시하기 위하여 필요한 동작을 최소화하여 사용자에게 자원을 제공하기 위하여 필요한 시간을 단축하는 장치 및 방법을 제공할 수 있다.The present invention can provide an apparatus and method for shortening a time required to provide resources to a user by minimizing an operation required for displaying cached resources on a web browser.
또한, 본 발명은 웹 페이지의 레이아웃을 비휘발성 메모리에 캐싱함으로써, 웹 브라우저의 종료, 또는 일정 시간의 경과에 따라 소멸되는 웹 페이지의 레이아웃을 지속적으로 사용할 수 있는 장치 및 방법을 제공할 수 있다.The present invention can also provide an apparatus and method for continuously using the layout of a web page which is destroyed by the end of a web browser or a certain period of time by caching the layout of the web page in the nonvolatile memory.
본 발명의 일실시예에 따른 캐싱 방법은 원본 자원을 처리하여 처리된 자원을 생성하는 단계; 처리된 자원을 이용하여 웹 페이지의 레이아웃을 생성하는 단계; 및 상기 웹 페이지의 레이아웃을 비휘발성 메모리에 캐싱하는 단계를 포함할 수 있다.According to an embodiment of the present invention, there is provided a caching method comprising: processing an original resource to generate a processed resource; Generating a layout of a web page using the processed resource; And caching the layout of the web page in a non-volatile memory.
본 발명의 일실시예에 따른 캐싱 방법의 상기 레이아웃을 생성하는 단계는 처리된 자원에 포함된 문서 구조에 따라 처리된 자원에 포함된 이미지나 텍스트를 배치하여 웹 페이지의 레이아웃을 생성할 수 있다.The step of generating the layout of the caching method according to an exemplary embodiment of the present invention may generate a layout of a web page by arranging an image or text included in the processed resource according to a document structure included in the processed resource.
본 발명의 일실시예에 따른 캐싱 방법의 캐싱하는 단계는 웹 페이지가 웹 브라우저에 표시하는 자원의 변화가 발생하지 않는 정적인 웹 페이지인 경우, 웹 페이지의 레이아웃을 웹 브라우저에 표시하기 전에 웹 페이지의 레이아웃의 구조 및 웹 페이지의 레이아웃에 포함된 자원을 비휘발성 메모리에 캐싱할 수 있다.The caching of the caching method according to an exemplary embodiment of the present invention may be performed when a web page is a static web page that does not cause a change in resources displayed on the web browser, And the resources included in the layout of the web page can be cached in the nonvolatile memory.
본 발명의 일실시예에 따른 캐싱 방법의 캐싱하는 단계는 웹 페이지가 웹 브라우저에 표시하는 자원이 변화하는 동적인 웹 페이지인 경우, 웹 페이지의 레이아웃을 표시하는 웹 브라우저가 재실행되기 이전에 웹 페이지의 레이아웃을 비휘발성 메모리에 캐싱할 수 있다.The caching of the caching method according to an exemplary embodiment of the present invention may include a step of caching the web page before the web browser for displaying the layout of the web page is re-executed if the web page is a dynamic web page, Can be cached in a non-volatile memory.
본 발명의 일실시예에 따른 캐싱 방법의 캐싱하는 단계는 사용자로부터 웹 브라우저에 표시된 웹 페이지의 캐싱을 요청 받은 경우, 사용자의 요청을 입력받은 시점에서 웹 브라우저에 표시된 웹 페이지의 레이아웃 및 자원을 비휘발성 메모리에 캐싱할 수 있다.The caching of the caching method according to an embodiment of the present invention may include a step of, when receiving a request for caching of a web page displayed on a web browser from a user, Can be cached in volatile memory.
본 발명의 일실시예에 따른 캐싱 방법의 캐싱하는 단계는, 웹 페이지의 레이아웃의 유효성 판단 기준이 되는 유효성 정보를 웹 페이지의 레이아웃과 함께 비휘발성 메모리에 캐싱할 수 있다.The caching of the caching method according to an embodiment of the present invention may cache the validity information serving as a criterion for determining the validity of the layout of the web page in the nonvolatile memory together with the layout of the web page.
본 발명의 일실시예에 따른 캐싱 방법은 상기 웹 페이지의 레이아웃의 파일 크기, 지역성(locality), 및 유효 시간 중 적어도 하나에 기초하여 캐싱된 웹 페이지의 레이아웃의 우선 순위를 설정하고, 상기 우선 순위에 기초하여 비휘발성 메모리에 캐싱된 웹 페이지의 레이아웃을 관리하는 단계를 더 포함할 수 있다.A caching method according to an exemplary embodiment of the present invention sets a priority of a layout of a cached web page based on at least one of a file size, a locality, and a validity time of a layout of the web page, And managing the layout of the web page cached in the non-volatile memory based on the layout information.
본 발명의 일실시예에 따른 캐싱 방법은 웹 페이지의 레이아웃이 캐싱된 비휘발성 메모리에서 사용자의 요청에 대응하는 웹 페이지의 레이아웃을 검색하는 단계; 상기 비휘발성 메모리에서 웹 페이지의 레이아웃이 검색되지 않은 경우, 사용자의 요청에 대응하는 원본 자원을 이용하여 웹 페이지의 레이아웃을 생성하는 단계; 및 상기 비휘발성 메모리에서 검색한 웹 페이지의 레이아웃, 또는 원본 자원을 이용하여 생성한 웹 페이지의 레이아웃을 웹 브라우저에 표시하는 단계를 포함할 수 있다.According to another aspect of the present invention, there is provided a method of caching, comprising: retrieving a layout of a web page corresponding to a request of a user in a non-volatile memory having a layout of a web page cached; Generating a layout of a web page using a source resource corresponding to a request of a user when a layout of the web page is not searched in the non-volatile memory; And displaying the layout of the web page retrieved from the nonvolatile memory or the layout of the web page generated using the original resource on the web browser.
본 발명의 일실시예에 따른 캐싱 방법의 검색하는 단계는 웹 페이지의 레이아웃과 함께 캐싱된 유효성 정보를 기초로 상기 비휘발성 메모리에서 검색한 웹 페이지의 레이아웃의 유효 여부를 판단하는 단계; 및 상기 처리된 자원이 유효하지 않은 경우, 상기 비휘발성 메모리에서 사용자의 요청에 대응하는 웹 페이지의 레이아웃이 검색되지 않은 것으로 판단하는 단계를 포함할 수 있다.The searching of the caching method according to an exemplary embodiment of the present invention may include determining whether the layout of the web page retrieved from the nonvolatile memory is valid based on the cached validity information together with the layout of the web page; And determining that the layout of the web page corresponding to the user's request is not retrieved from the nonvolatile memory if the processed resource is not valid.
본 발명의 일실시예에 따른 캐싱 방법의 유효성 정보는 웹 페이지의 레이아웃의 캐싱 허용 여부, 웹 페이지의 레이아웃의 캐싱이 허용되는 시간, 및 웹 페이지의 레이아웃이 캐싱되기 위한 조건 중 적어도 하나를 포함할 수 있다.The validity information of the caching method according to an exemplary embodiment of the present invention includes at least one of whether to allow caching of the layout of the web page, a time when caching of the layout of the web page is allowed, and a condition for the layout of the web page to be cached .
본 발명의 일실시예에 따른 캐싱 장치는 원본 자원을 처리하여 처리된 자원을 생성하는 자원 처리부; 처리된 자원을 이용하여 웹 페이지의 레이아웃을 생성하는 레이아웃 생성부; 및 상기 웹 페이지의 레이아웃을 비휘발성 메모리에 캐싱하는 캐싱부를 포함할 수 있다.According to an aspect of the present invention, there is provided a caching apparatus comprising: a resource processor for processing an original resource to generate a processed resource; A layout generating unit for generating a layout of a web page using the processed resources; And a caching unit for caching the layout of the web page in a nonvolatile memory.
본 발명의 일실시예에 의하면, 원본 자원을 웹 브라우저에 표시하기 위한 모든 처리 과정이 종료되어 웹 브라우저에 출력되기 직전의 자원인 웹 페이지의 레이아웃을 캐싱하고, 사용자의 요청에 따라 웹 페이지의 레이아웃을 제공함으로써, 캐싱된 자원을 웹 브라우저에 표시하기 위하여 필요한 동작을 최소화하여 사용자에게 자원을 제공하기 위하여 필요한 시간을 단축할 수 있다.According to an embodiment of the present invention, a layout of a web page, which is a resource immediately before outputting to a web browser is completed after all processes for displaying an original resource in a web browser are completed, and a layout of a web page Thereby minimizing the operations required to display the cached resources on the web browser and shortening the time required to provide resources to the user.
또한, 본 발명의 일실시예에 의하면, 원본 자원을 웹 브라우저에 표시하기 위한 모든 처리 과정이 종료되어 웹 브라우저에 출력되기 직전의 자원인 웹 페이지의 레이아웃을 비휘발성 메모리에 캐싱함으로써, 웹 브라우저의 종료, 또는 일정 시간의 경과에 따라 소멸되는 웹 페이지의 레이아웃을 지속적으로 사용할 수 있다.According to an embodiment of the present invention, a layout of a web page, which is a resource just before all processes for displaying an original resource on a web browser and is output to a web browser, is cached in a nonvolatile memory, The layout of the web page to be destroyed or the layout of the web page to be consumed can be continuously used.
도 1은 본 발명의 일실시예에 따른 캐싱 장치를 나타내는 도면이다.
도 2는 본 발명의 일실시예에 따른 캐싱 과정을 나타내는 도면이다.
도 3은 본 발명의 일실시예에 따른 비휘발성 메모리와 휘발성 메모리 간의 자원 이동 일례이다.
도 4는 본 발명의 일실시예에 따른 캐싱 장치가 표시하는 웹 페이지의 일례이다.
도 5는 본 발명의 일실시예에 따른 캐싱 방법을 도시한 플로우차트이다.
도 6은 본 발명의 일실시예에 따른 캐싱 방법에서 웹 페이지의 레이아웃을 캐싱하는 과정을 도시하는 흐름도이다.
도 7은 본 발명의 일실시예에 따른 캐싱 방법을 도시한 플로우차트이다.1 is a diagram illustrating a caching apparatus according to an embodiment of the present invention.
2 is a diagram illustrating a caching process according to an embodiment of the present invention.
3 is an example of resource movement between a non-volatile memory and a volatile memory according to an embodiment of the present invention.
4 is an example of a web page displayed by the caching apparatus according to an embodiment of the present invention.
5 is a flowchart illustrating a caching method according to an embodiment of the present invention.
6 is a flowchart illustrating a process of caching a layout of a web page in a caching method according to an embodiment of the present invention.
7 is a flowchart illustrating a caching method according to an embodiment of the present invention.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다. 본 발명의 일실시예에 따른 캐싱 방법은 캐싱 장치에 의해 수행될 수 있다. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. The caching method according to an embodiment of the present invention can be performed by a caching apparatus.
도 1은 본 발명의 일실시예에 따른 캐싱 장치를 나타내는 도면이다. 1 is a diagram illustrating a caching apparatus according to an embodiment of the present invention.
도 1을 참고하면, 본 발명의 일실시예에 따른 캐싱 장치(110)는 자원 처리부(111), 레이아웃 생성부(112), 캐싱부(113), 웹 페이지 표시부(114) 및 검색부(115)를 포함할 수 있다. 예를 들어, 캐싱 장치(110)는 웹 페이지와 관련된 자원을 처리하여 표시하는 웹 브라우저에 포함될 수 있다.1, a
자원 처리부(111)는 원본 자원(Raw resources)을 처리하여 처리된 자원(Processed resources)을 생성할 수 있다. The
이때, 원본 자원은 화면에 표시할 문서 구조를 나타내는 구조 자원, 부호화된 이미지, 및 화면에 표시할 문자의 폰트 자원 중 적어도 하나를 포함할 수 있다. 예를 들어, 원본 자원은 웹 브라우저가 웹 페이지를 표시하기 위하여 네트워크로부터 수신한 자원일 수 있다. 이때, 원본 자원은 문서 구조를 나타내는 HTML(Hyper Text Marup Language) 문서, 전송을 위하여 부호화된 웹 페이지의 이미지, CSS(Cascading Style Sheet), 및 스크립트(script) 중 적어도 하나를 포함할 수 있다.At this time, the original resource may include at least one of a structural resource representing a document structure to be displayed on the screen, a coded image, and a font resource of a character to be displayed on the screen. For example, the source resource may be a resource received from the network by a web browser to display a web page. At this time, the original resource may include at least one of a Hyper Text Markup Language (HTML) document representing a document structure, an image of a web page encoded for transmission, a CSS (Cascading Style Sheet), and a script.
또한, 처리된 자원은 원본 자원이 처리되어 생성된 자원일 수 있다. 예를 들어, 원본 자원이 HTML 문서인 경우, 처리된 자원은 자원 처리부(111)가 HTML 문서 및 스크립트를 파싱하여 생성한 DOM(Document Object Model) 트리를 포함할 수 있다.Also, the processed resource may be a resource generated by processing the original resource. For example, when the original resource is an HTML document, the processed resource may include a DOM (Document Object Model) tree generated by the
구체적으로, 원본 자원이 웹 페이지를 표시하기 위하여 네트워크로부터 수신한 자원인 경우, 자원 처리부(111)는 전송을 위하여 부호화, 또는 변환된 원본 자원을 처리하여 웹 페이지를 표시하기 위한 처리된 자원을 생성할 수 있다. Specifically, when the original resource is a resource received from the network to display a web page, the
이때, 자원 처리부(111)는 원본 자원 중 HTML 문서 및 스크립트를 파싱하여 DOM(Document Object Model) 트리를 생성할 수 있다. 또한, 자원 처리부(111)는 원본 자원 중 부호화된 이미지를 복호화하여 복호화된 이미지를 생성할 수 있다. 그리고, 자원 처리부(111)는 원본 자원 중 문서 포맷과 관련된 CSS(Cascading Style Sheet)를 스타일 룰(style rules)로 변환할 수 있다. 또한, 자원 처리부(111)는 원본 자원 중 자바 스크립트(java script)를 처리하여 텍스트 데이터로 변환할 수 있다.At this time, the
그리고, 자원 처리부(111)가 생성한 처리된 자원은 휘발성 메모리(120)에 저장될 수 있다. 예를 들어, 휘발성 메모리(120)는 웹 브라우저가 처리된 자원을 이용하여 웹 페이지를 화면에 표시하기 전에 임시로 처리된 자원을 저장하는 DRAM(dynamic random access memory)일 수 있다. 그리고, 화면에 웹 페이지가 표시되거나, 일정 시간이 경과하면, 휘발성 메모리(120)에 저장된 처리된 자원이 소멸될 수 있다.The processed resource generated by the
레이아웃 생성부(112)는 자원 처리부(111)에서 처리된 자원을 이용하여 웹 페이지의 레이아웃을 생성할 수 있다. 이때, 웹 페이지의 레이아웃은 웹 브라우저에 출력하기 직전의 자원일 수 있다. 구체적으로, 웹 페이지의 레이아웃은 추가적인 변환 없이 단순 출력만으로 웹 브라우저에 웹 페이지가 표시되도록 하는 자원일 수 있다.The
이때, 레이아웃 생성부(120)는 자원 처리부(111)에서 처리된 자원에 포함된 문서 구조에 따라 자원 처리부(111)에서 처리된 자원에 포함된 이미지나 텍스트를 배치하여 웹 페이지의 레이아웃을 생성할 수 있다.At this time, the
구체적으로, 레이아웃 생성부(112)는 처리된 자원 중 DOM 트리와 스타일 룰을 이용하여 웹 브라우저에 표시하기 위한 랜더 트리(render tree)를 생성할 수 있다. 그리고, 레이아웃 생성부(112)는 DOM 트리에서 웹 브라우저에 표시될 웹 페이지의 텍스트를 추출할 수 있다. 그리고, 레이아웃 생성부(112)는 추출한 텍스트와 처리된 자원 중 복호화된 이미지를 랜더 트리에 매칭하여 웹 브라우저에 출력할 웹 페이지의 레이아웃을 생성할 수 있다.Specifically, the
캐싱부(113)는 레이아웃 생성부(112)가 생성한 웹 페이지의 레이아웃을 비휘발성 메모리(130)에 캐싱할 수 있다. 이때, 캐싱부(113)는 웹 페이지의 레이아웃의 유효성 판단 기준이 되는 유효성 자원을 웹 페이지의 레이아웃과 함께 비휘발성 메모리(130)에 캐싱할 수 있다. 예를 들어, 유효성 자원은 웹 페이지의 레이아웃의 캐싱 허용 여부, 웹 페이지의 레이아웃의 캐싱이 허용되는 시간, 및 웹 페이지의 레이아웃이 캐싱되기 위한 조건 중 적어도 하나를 포함할 수 있다.The
이때, 캐싱부(113)는 웹 브라우저에 표시할 웹 페이지가 정적인 웹 페이지인지, 또는 동적인 웹 페이지인지에 따라 웹 페이지의 레이아웃을 캐싱하는 순서 및 방법을 다르게 할 수 있다. 이때, 정적인 웹 페이지는 신문 기사나, 홈 페이지와 같이 웹 브라우저에 표시하는 자원의 변화가 실시간으로 발생하지 않는 웹 페이지일 수 있다. 또한, 동적인 웹 페이지는 웹 기반 어플리케이션을 포함하여, 실시간, 또는 일정 시간 간격으로 웹 브라우저에 표시하는 자원이 변화하는 웹 페이지일 수 있다. 예를 들어, 웹 기반 어플리케이션은 웹 페이지에서 실행되는 웹 기반, 게임. 웹 기반 문서 작성 앱, 및 웹 기반 지도 앱들 중 적어도 하나를 포함할 수 있다.At this time, the
웹 브라우저에 표시할 웹 페이지가 정적인 웹 페이지인 경우, 캐싱부(113)는 웹 페이지의 레이아웃을 웹 브라우저에 표시하기 직전에 웹 페이지의 레이아웃의 구조 및 웹 페이지의 레이아웃에 포함된 자원을 비휘발성 메모리(130)에 캐싱할 수 있다.When the web page to be displayed in the web browser is a static web page, the
웹 브라우저에 표시할 웹 페이지가 동적인 웹 페이지인 경우, 캐싱부(113)는 웹 페이지의 레이아웃을 표시하던 웹 브라우저가 재실행되기 이전에 웹 페이지의 레이아웃을 비휘발성 메모리(130)에 캐싱할 수 있다.If the web page to be displayed in the web browser is a dynamic web page, the
이때, 캐싱부(113)는 웹 페이지 표시부(114)가 웹 브라우저에 출력한 웹 페이지의 레이아웃을 캐싱할 수 있다. 구체적으로, 웹 페이지가 동적인 웹 페이지인 경우, 웹 페이지 표시부(114)는 웹 페이지와 함께 사용자가 웹 페이지의 캐싱을 선택할 수 있는 입력 수단을 표시할 수 있다. 사용자가 입력 수단을 선택한 경우, 캐싱부(113)는 사용자로부터 웹 브라우저에 표시된 웹 페이지의 캐싱을 요청 받았다고 판단할 수 있다. 그리고, 캐싱부(113)는 사용자의 요청을 입력받은 시점에서 웹 브라우저에 표시된 웹 페이지의 레이아웃 및 자원을 비휘발성 메모리(130)에 캐싱할 수 있다.At this time, the
즉, 캐싱부(113)는 사용자의 요청에 따라 웹 브라우저에 표시된 웹 페이지의 레이아웃 및 자원을 비휘발성 메모리(130)에 캐싱함으로써, 웹 브라우저가 종료되었다가 재실행되더라도, 캐싱된 웹 페이지와 자원을 이용하여 사용자가 캐싱을 선택한 시점의 웹 페이지를 표시할 수 있다. That is, the
예를 들어, 사용자가 웹 기반 게임을 하다가 웹 브라우저를 종료해야 하는 상황이 발생할 수 있다. 이때, 캐싱부(113)는 사용자의 요청에 따라 웹 페이지를 캐싱할 수 있다. 그리고, 사용자가 웹 브라우저를 다시 재실행한 경우, 캐싱부(113)가 캐싱된 시점의 웹 페이지를 표시함으로써, 사용자는 자신이 하던 게임을 이어서 할 수 있다.For example, a situation may arise where a user is required to close a web browser while playing a web based game. At this time, the
또한, 사용자가 웹 기반 문서 작업 앱이나 웹 기반 지도 앱을 이용하여 문서 및 지도를 편집하던 중 웹 브라우저를 종료해야 하는 상황이 발생할 수 있다. 이때, 캐싱부(113)는 사용자의 요청에 따라 웹 페이지를 캐싱할 수 있다. 그리고, 사용자가 웹 브라우저를 다시 재실행한 경우, 캐싱부(113)가 캐싱된 시점의 웹 페이지를 표시함으로써, 사용자가 작업 중이던 문서나 지도의 상태를 웹 브라우저 종료 전의 상태로 복원할 수 있다.In addition, users may be required to exit the web browser while editing documents and maps using the web-based document-handling app or the web-based map app. At this time, the
이때, 캐싱부(113)는 캐싱한 웹 페이지의 레이아웃 및 자원을 웹 페이지의 주소에 따른 이름이 설정된 파일로 저장할 수 있다. 예를 들어, 캐싱부(113)는 사용자의 요청에 따라 동적인 웹 페이지를 캐싱하는 경우, URL과 일련 번호로 구성된 이름을 캐싱한 웹 페이지의 레이아웃 및 자원이 포함된 파일의 파일명으로 설정할 수 있다. 이때, 일련 번호는 동일 URL에서 웹 페이지가 캐싱된 회수, 또는 웹 페이지가 캐싱된 시간에 따라 결정될 수 있다.At this time, the
또한, 캐싱부(113)는 웹 페이지의 레이아웃을 포함한 파일 크기, 지역성(locality), 및 유효 시간 중 적어도 하나에 기초하여 비휘발성 메모리(130)에 캐싱된 웹 페이지의 레이아웃의 우선 순위를 설정하고, 우선 순위에 기초하여 비휘발성 메모리(130)에 캐싱된 웹 페이지의 레이아웃을 관리할 수 있다. 예를 들어, 비휘발성 메모리(130)에 웹 페이지의 레이아웃을 추가로 캐싱할 경우, 캐싱부(113)는 우선 순위가 낮은 웹 페이지의 레이아웃을 삭제하여 저장 용량을 확보할 수 있다. 그리고, 캐싱부(113)는 확보된 저장 용량에 웹 페이지의 레이아웃을 추가로 캐싱할 수 있다.The
비휘발성 메모리(130)에 캐싱된 웹 페이지의 레이아웃을 포함한 파일 크기가 클수록 비휘발성 메모리(130)에 캐싱 가능한 웹 페이지의 레이아웃의 개수가 감소할 수 있다. 따라서, 캐싱부(113)는 비휘발성 메모리(130)에 캐싱된 웹 페이지의 레이아웃을 포함한 파일의 크기가 클수록 비휘발성 메모리(130)에 캐싱된 웹 페이지의 레이아웃의 우선 순위를 낮게 설정할 수 있다. As the file size including the layout of the web page cached in the
또한, 비휘발성 메모리(130)에 캐싱된 웹 페이지의 레이아웃의 지역성이 높을 수록 비휘발성 메모리(130)에 캐싱된 웹 페이지의 레이아웃이 요청될 가능성이 높을 수 있다. 따라서, 제2 캐싱부(113)는 비휘발성 메모리(130)에 캐싱된 웹 페이지의 레이아웃의 지역성이 높을수록 비휘발성 메모리(130)에 캐싱된 웹 페이지의 레이아웃의 우선 순위를 높게 설정할 수 있다. In addition, the higher the localization of the layout of the web page cached in the
그리고, 비휘발성 메모리(130)에 캐싱된 웹 페이지의 레이아웃의 유효 시간이 짧을 경우, 웹 페이지의 레이아웃이 요청된 시점에서 유효 시간을 초과하여 비휘발성 메모리(130)에 캐싱된 웹 페이지의 레이아웃이 유효하지 않다고 판단될 가능성이 높다. 이때, 검색부(115)는 원본 자원을 검색해야 한다. 즉, 비휘발성 메모리(130)에 캐싱된 웹 페이지의 레이아웃 중 유효 시간이 초과된 웹 페이지의 레이아웃은 사용할 수 없으면서 비휘발성 메모리(130)의 용량만 차지할 수 있다. 따라서, 제2 캐싱부(113)는 캐싱된 웹 페이지의 레이아웃의 유효 시간이 짧을 수록 비휘발성 메모리(130)에 캐싱된 웹 페이지의 레이아웃의 우선 순위를 낮게 설정함으로써, 유효 시간이 초과된 웹 페이지의 레이아웃이 먼저 삭제되도록 할 수 있다.When the effective time of the layout of the web page cached in the
웹 페이지 표시부(114)는 레이아웃 생성부(112)가 생성한 웹 페이지의 레이아웃을 웹 브라우저에 출력하여 웹 브라우저에 웹 페이지가 표시되도록 할 수 있다.The web
이때, 웹 페이지 표시부(114)는 웹 페이지와 함께 사용자가 웹 페이지의 캐싱을 선택할 수 있는 입력 수단 및 사용자가 웹 페이지의 복원을 선택할 수 있는 입력 수단을 표시할 수 있다. At this time, the web
사용자가 웹 페이지의 캐싱을 선택할 수 있는 입력 수단을 선택한 경우, 웹 페이지 표시부(114)는 캐싱부(113)을 구동시킬 수 있다. 이때, 캐싱부(113)는 구동된 시점에서 웹 브라우저에 표시되고 있는 웹 페이지의 레이아웃 및 자원을 캐싱할 수 있다. 이때, 캐싱부(113)는 캐싱한 웹 페이지의 레이아웃 및 자원을 파일 형태로 저장할 수 있다.When the user selects an input means for selecting the caching of the web page, the web
사용자가 웹 페이지의 복원을 선택할 수 있는 입력 수단을 선택한 경우, 웹 페이지 표시부(114)는 웹 페이지의 레이아웃 및 자원이 포함된 파일의 파일명 리스트를 사용자에게 제공할 수 있다. 그리고, 웹 페이지 표시부(114)는 사용자가 파일명 리스트 중에서 선택한 파일명의 파일에 포함된 웹 페이지의 레이아웃 및 지원을 웹 브라우저에 표시함으로써, 사용자가 원하는 주소, 및 시점의 웹 페이지를 복원할 수 있다.When the user selects an input means for selecting a restoration of the web page, the web
검색부(115)는 사용자의 요청에 따라 비휘발성 메모리(130)에서 사용자의 요청에 대응하는 웹 페이지의 레이아웃을 검색할 수 있다. 이때, 사용자의 요청은 검색부(115)가 사용자로부터 수신한 자원 요청(resource request)일 수 있다.The
또한, 비휘발성 메모리(130)에서 사용자의 요청에 대응하는 웹 페이지의 레이아웃이 검색되지 않은 경우, 검색부(115)는 네트워크에서 사용자의 요청에 대응하는 원본 자원을 검색할 수 있다. If the layout of the web page corresponding to the user's request is not retrieved in the
다음으로, 자원 처리부(111)는 검색부(115)가 네트워크에서 검색한 원본 자원을 처리하여 처리된 자원을 생성하고, 레이아웃 생성부(112)는 처리된 차원을 이용하여 웹 페이지의 레이아웃을 생성할 수 있다. 이때, 자원 처리부(111)가 생성한 처리된 자원 및 레이아웃 생성부(112)가 생성한 웹 페이지의 레이아웃은 휘발성 메모리(120)에 저장될 수 있다. Next, the
그 다음으로, 웹 페이지 표시부(114)는 휘발성 메모리(120)에 저장된 웹 페이지의 레이아웃을 이용하여 웹 페이지를 표시할 수 있다. 또한, 캐싱부(113)는 자원 처리부(111)가 생성한 웹 페이지의 레이아웃을 비휘발성 메모리(130)에 캐싱할 수 있다.Next, the web
그리고, 검색부(115)는 비휘발성 메모리(130)에 웹 페이지의 레이아웃과 함께 캐싱된 유효성 자원을 기초로 비휘발성 메모리(130)에서 검색한 웹 페이지의 레이아웃의 유효 여부를 판단할 수 있다. 검색한 웹 페이지의 레이아웃이 유효하지 않은 경우, 검색부(115)는 비휘발성 메모리(130)에서 사용자의 요청에 대응하는 웹 페이지의 레이아웃이 검색되지 않은 것으로 판단할 수 있다. The
본 발명의 일실시예에 따른 캐싱 장치(110)는 원본 자원을 사용자에게 제공하기 위하여 처리한 자원이 웹 브라우저에 표시될 수 있도록 변환된 웹 페이지의 레이아웃을 캐싱할 수 있다. 이때, 웹 페이지의 레이아웃은 웹 브라우저에 표시하기 위한 모든 처리 과정이 종료되어 웹 브라우저에 출력되기 직전의 자원이므로, 캐싱된 웹 페이지의 레이아웃을 표시하는 경우, 웹 페이지의 레이아웃을 웹 브라우저에 출력하는 동작 이외의 추가 동작은 전혀 필요 없을 수 있다.The
즉, 캐싱 장치(110)는 캐싱된 자원을 웹 브라우저에 표시하기 위하여 필요한 동작을 최소화함으로써, 사용자에게 자원을 제공하기 위하여 필요한 시간을 단축할 수 있다.That is, the
그리고, 캐싱 장치(110)는 웹 페이지의 레이아웃을 비휘발성 메모리(130)에 캐싱함으로써, 웹 브라우저의 종료, 또는 일정 시간의 경과에 따라 소멸되는 웹 페이지의 레이아웃을 지속적으로 사용할 수 있다.The
도 2는 본 발명의 일실시예에 따른 캐싱 과정을 나타내는 도면이다. 2 is a diagram illustrating a caching process according to an embodiment of the present invention.
먼저, 웹 브라우저의 캐싱 장치(110)는 사용자로부터 자원 요청(210)을 수신할 수 있다. 이때, 자원 요청(210)은 도 2에 도시된 바와 같이 웹 브라우저에 표시될 웹 페이지의 주소를 포함할 수 있다.First, the web browser's
다음으로, 캐싱 장치(110)는 네트워크 상의 웹 서버로부터 자원 요청(210)에 대응하는 웹 브라우저 관련 자원의 원본 자원(Raw resources)(220)을 수신할 수 있다. Next, the
그 다음으로, 캐싱 장치(110)는 원본 자원(220)을 처리하여 처리된 자원(Processed resources)(230)을 생성할 수 있다. 예를 들어, 캐싱 장치(110)는 도 3에 도시된 바와 같이 원본 자원(220) 중 HTML 문서 및 스크립트를 파싱하여 DOM 트리를 생성할 수 있다. 또한, 캐싱 장치(110)는 원본 자원(220) 중 부호화된 이미지(221)를 복호화하여 복호화된 이미지(231)를 생성할 수 있다. 그리고, 캐싱 장치(110)는 원본 자원(220) 중 CSS를 스타일 룰(style rules)로 변환할 수 있다.The
다음으로, 캐싱 장치(110)는 DOM 트리와 스타일 룰을 이용하여 웹 브라우저에 표시하기 위한 랜더 트리(render tree)를 생성할 수 있다. 이때, 캐싱 장치(110)는 DOM 트리에서 웹 브라우저에 표시될 웹 페이지의 텍스트를 추출하고, 추출한 텍스트와 처리된 자원 중 복호화된 이미지를 랜더 트리에 매칭하여 웹 브라우저에 출력할 웹 페이지의 레이아웃(240)을 생성할 수 있다.Next, the
이때, 캐싱 장치(110)는 웹 페이지의 레이아웃(240)을 비휘발성 메모리(130) 에 캐싱할 수 있다. 또한, 웹 페이지의 레이아웃(240)은 휘발성 메모리(120)에 저장될 수 있다.At this time, the
마지막으로 웹 페이지 표시부(114)는 휘발성 메모리(120)에 저장된 웹 페이지의 레이아웃(240)을 출력하여 웹 브라우저에 웹 페이지(250)를 표시할 수 있다.Finally, the web
이때, 웹 페이지의 레이아웃(240)은 비휘발성 메모리(130)에 캐싱되므로, 일정 시간이 경과하거나, 웹 브라우저가 종료되더라도, 소멸하지 않을 수 있다. 따라서, 사용자가 자원 요청(210)을 다시 입력하는 경우, 캐싱 장치(110)는 시간의 경과하거나, 또는 웹 브라우저가 중간에 종료되었더라도 비휘발성 메모리(130)에 캐싱된 웹 페이지의 레이아웃(240)을 출력하여 웹 브라우저에 웹 페이지(250)를 빠르게 출력할 수 있다.At this time, since the
도 3은 본 발명의 일실시예에 따른 비휘발성 메모리와 휘발성 메모리 간의 자원 이동 일례이다. 3 is an example of resource movement between a non-volatile memory and a volatile memory according to an embodiment of the present invention.
캐싱 장치(110)는 원본 자원을 처리하여 스타일 룰(style rule), 폰트(font), 스크립트(Scripts), 복호화된 이미지(decoded image) 중 적어도 하나를 포함하는 처리된 자원을 생성할 수 있다. The
그리고, 캐싱 장치(110)는 DOM 트리와 스타일 룰을 이용하여 웹 브라우저에 표시하기 위한 랜더 트리(render tree)를 생성할 수 있다. 또한, 캐싱 장치(110)는 DOM 트리에서 웹 브라우저에 표시될 웹 페이지의 텍스트를 추출하고, 추출한 텍스트와 처리된 자원 중 복호화된 이미지를 랜더 트리에 매칭하여 웹 브라우저에 출력할 웹 페이지의 레이아웃(310)을 생성할 수 있다. The
이때, 웹 페이지의 레이아웃(310)은 도 3에 도시된 바와 같이 랜더 트리와 처리된 자원 중 웹 페이지 표시를 위하여 이용되는 자바 스크립트 코드(JavaScript code) 및 처리된 자원 중 웹 페이지에 표시될 자원(resources)을 포함할 수 있다. 예를 들어, 웹 페이지에 표시될 자원은 처리된 자원 중 복호화된 이미지 및 DOM 트리에서 추출한 텍스트를 포함할 수 있다.3, the
그리고, 캐싱 장치(110)는 웹 페이지의 레이아웃(310)을 DRAM 과 같은 휘발성 메모리(120)에 저장할 수 있다. 또한, 캐싱 장치(110)는 휘발성 메모리(120)에 저장한 웹 페이지의 레이아웃(310)을 비휘발성 메모리(130)에 캐싱할 수 있다. The
또한, 자바 스크립트 코드가 웹 브라우저에서 수행되기 위해서는 휘발성 메모리(120)에 데이터(Data) 영역, 힙(heap) 영역 및 스택(stack) 영역을 포함하는 메모리 영역(320)이 할당되어야 한다. 이때, 데이터영역은 전역 변수(global variables)와 스태틱 변수(static variables)가 할당되는 메모리 영역일 수 있다. 또한, 힙 영역은 자바 스크립트 코드가 실행되는 동안 동적으로 할당 받는 데이터 변수를 포함하는 영역일 수 있다. 그리고, 스택 영역은 함수가 실행되면, 함수에 따른 지역 변수와 매개 변수가 함수가 종료될 때까지 임시로 저장되는 메모리 영역일 수 있다.In order for the JavaScript code to be executed in the web browser, a
이때, 캐싱 장치(110)는 휘발성 메모리에 할당된 메모리 영역(120)을 비휘발성 메모리(130)에 캐싱할 수 있다.At this time, the
사용자가 캐싱된 웹 페이지를 다시 방문하는 경우, 캐싱 장치(110)는 비휘발성 메모리(130)에 캐싱된 웹 페이지의 레이아웃(310)을 휘발성 메모리(120)에 복원(Restore)하여 출력함으로써, 빠르게 웹 페이지를 표시할 수 있다. 이때, 캐싱 장치(110)는 캐싱된 메모리 영역(120)를 휘발성 메모리(120)에 복원함으로써, 복원된 웹 페이지의 레이아웃(310)의 자바 스크립트 코드를 실행하기 위하여 메모리 영역을 할당하는 과정을 생략할 수 있다.When the user revisits the cached web page, the
도 4는 본 발명의 일실시예에 따른 캐싱 장치가 표시하는 웹 페이지의 일례이다. 4 is an example of a web page displayed by the caching apparatus according to an embodiment of the present invention.
웹 페이지 표시부(114)는 웹 브라우저에 웹 페이지와 함께 사용자가 웹 페이지의 캐싱을 선택할 수 있는 입력 수단(410) 및 사용자가 웹 페이지의 복원을 선택할 수 있는 입력 수단(420)을 표시할 수 있다. The web
사용자가 입력 수단(410)을 선택하는 경우, 캐싱부(113)는 사용자가 입력 수단(410)을 선택한 시점에서 웹 브라우저에 출력되고 있는 웹 페이지의 레이아웃 및 자원을 비휘발성 메모리(130)에 캐싱할 수 있다.When the user selects the input means 410, the
이때, 캐싱부(113)는 캐싱한 웹 페이지의 레이아웃 및 자원을 웹 페이지의 주소에 따른 이름이 설정된 파일로 저장할 수 있다. 예를 들어, 캐싱부(113)는 URL과 일련 번호로 구성된 이름을 캐싱한 웹 페이지의 레이아웃 및 자원이 포함된 파일의 파일명으로 설정할 수 있다. At this time, the
사용자가 입력 수단(420)을 선택한 경우, 웹 페이지 표시부(114)는 웹 페이지의 레이아웃 및 자원이 포함된 파일의 파일명 리스트를 사용자에게 제공할 수 있다. 그리고, 웹 페이지 표시부(114)는 사용자가 파일명 리스트 중에서 선택한 파일명의 파일에 포함된 웹 페이지의 레이아웃 및 지원을 웹 브라우저에 표시함으로써, 사용자가 원하는 주소, 및 시점의 웹 페이지를 복원할 수 있다.When the user selects the input means 420, the web
즉, 캐싱 장치(110)는 웹 브라우저에 웹 페이지와 함께 입력 수단(410)을 표시하고, 사용자가 입력 수단(410)을 선택한 시점의 웹 페이지의 레이아웃 및 자원을 캐싱함으로써, 사용자가 원하는 시점의 웹 페이지를 캐싱할 수 있다. 또한, 캐싱 장치(110)는 웹 브라우저에 웹 페이지와 함께 입력 수단(420)을 표시하고, 사용자가 입력 수단(420)를 선택한 경우, 캐싱된 파일들의 파일명 리스트를 제공함으로써, 사용자가 캐싱된 페이지 중에서 원하는 페이지를 선택하여 복원할 수 있다.That is, the
도 5는 본 발명의 일실시예에 따른 캐싱 방법을 도시한 플로우차트이다.5 is a flowchart illustrating a caching method according to an embodiment of the present invention.
단계(510)에서 자원 처리부(111)는 원본 자원(Raw resources)을 처리하여 처리된 자원(Processed resources)을 생성할 수 있다. 구체적으로, 자원 처리부(111)는 네트위크를 통한 전송을 위하여 부호화, 또는 변환된 원본 자원을 처리하여 웹 페이지를 표시하기 위한 처리된 자원을 생성할 수 있다. In
예를 들어, 자원 처리부(111)는 원본 자원 중 HTML 문서 및 스크립트를 파싱하여 DOM 트리를 생성할 수 있다. 또한, 자원 처리부(111)는 원본 자원 중 부호화된 이미지를 복호화하여 복호화된 이미지를 생성할 수 있다. 그리고, 자원 처리부(111)는 원본 자원 중 문서 포맷과 관련된 CSS를 스타일 룰로 변환할 수 있다. 또한, 자원 처리부(111)는 원본 자원 중 자바 스크립트를 처리하여 텍스트 데이터로 변환할 수 있다.For example, the
단계(520)에서 레이아웃 생성부(112)는 단계(520)에서 처리된 자원을 이용하여 웹 페이지의 레이아웃을 생성할 수 있다. 이때, 웹 페이지의 레이아웃은 웹 브라우저에 출력하기 직전의 자원일 수 있다. 구체적으로, 웹 페이지의 레이아웃은 추가적인 변환 없이 단순 출력만으로 웹 브라우저에 웹 페이지가 표시되도록 하는 자원일 수 있다.In
단계(520)에서 레이아웃 생성부(120)는 처리된 자원 중 DOM 트리를 중심으로, 웹 브라우저에 표시될 웹 페이지의 이미지나 텍스트를 배치하여 웹 페이지의 레이아웃을 생성할 수 있다.In
단계(530)에서 캐싱부(113)는 단계(520)에서 생성한 웹 페이지의 레이아웃을 비휘발성 메모리(130)에 캐싱할 수 있다. 이때, 캐싱부(113)는 웹 페이지의 레이아웃의 유효성 판단 기준이 되는 유효성 자원을 웹 페이지의 레이아웃과 함께 비휘발성 메모리(130)에 캐싱할 수 있다. In
또한, 웹 페이지 표시부(114)는 레이아웃 생성부(112)가 생성한 웹 페이지의 레이아웃을 웹 브라우저에 출력하여 웹 브라우저에 웹 페이지가 표시되도록 할 수 있다. 이때, 웹 페이지 표시부(114)는 웹 페이지와 함께 사용자가 웹 페이지의 캐싱을 선택할 수 있는 입력 수단 및 사용자가 웹 페이지의 복원을 선택할 수 있는 입력 수단을 표시할 수 있다. The web
단계(540)에서 캐싱부(113)는 웹 페이지의 레이아웃을 포함한 파일 크기, 지역성(locality), 및 유효 시간 중 적어도 하나에 기초하여 비휘발성 메모리(130)에 캐싱된 웹 페이지의 레이아웃의 우선 순위를 설정하고, 우선 순위에 기초하여 비휘발성 메모리(130)에 캐싱된 웹 페이지의 레이아웃을 관리할 수 있다. 예를 들어, 비휘발성 메모리(130)에 웹 페이지의 레이아웃을 추가로 캐싱할 경우, 캐싱부(113)는 우선 순위가 낮은 웹 페이지의 레이아웃을 삭제하여 저장 용량을 확보할 수 있다. 그리고, 캐싱부(113)는 단계(540)에서 확보된 저장 용량에 웹 페이지의 레이아웃을 추가로 캐싱할 수 있다.In
도 6은 본 발명의 일실시예에 따른 캐싱 방법에서 웹 페이지의 레이아웃을 캐싱하는 과정을 도시하는 흐름도이다. 도 6의 단계(610) 내지 단계(660)은 도 5의 단계(530)에 포함될 수 있다.6 is a flowchart illustrating a process of caching a layout of a web page in a caching method according to an embodiment of the present invention.
단계(610)에서 캐싱부(113)는 웹 브라우저에 표시할 웹 페이지가 동적인 웹 페이지인지를 확인할 수 있다. 구체적으로, 캐싱부(113)는 단계(520)에서 생성한 웹 페이지의 레이아웃에 포함된 자원이 어플리케이션과 같이 실시간, 또는 일정 시간 간격으로 변화하는 자원인지 여부를 확인할 수 있다. 그리고, 웹 페이지의 레이아웃에 포함된 자원이 어플리케이션과 같이 실시간, 또는 일정 시간 간격으로 변화하는 자원인 경우, 캐싱부(113)는 웹 브라우저에 표시할 웹 페이지가 동적인 웹 페이지인 것으로 판단할 수 있다.In
웹 브라우저에 표시할 웹 페이지가 동적인 웹 페이지인 경우, 캐싱부(113)는 단계(640)을 수행하고, 웹 브라우저에 표시할 웹 페이지가 동적인 웹 페이지가 아니라 정적인 웹 페이지인 경우, 캐싱부(113)는 단계(620)을 수행할 수 있다.If the web page to be displayed in the web browser is a dynamic web page, the
단계(620)에서 캐싱부(113)는 단계(520)에서 생성한 웹 페이지의 레이아웃의 구조 및 웹 페이지의 레이아웃에 포함된 자원을 비휘발성 메모리(130)에 캐싱할 수 있다.In
단계(630)에서 웹 페이지 표시부(114)는 단계(520)에서 생성한 웹 페이지의 레이아웃을 출력하여 웹 브라우저에 웹 페이지가 표시되도록 할 수 있다.In
즉, 웹 브라우저에 표시할 웹 페이지가 정적인 웹 페이지인 경우, 캐싱부(113)가 웹 페이지의 레이아웃을 캐싱한 다음, 웹 페이지 표시부(114)가 웹 페이지를 출력할 수 있다.That is, when the web page to be displayed on the web browser is a static web page, the
단계(640)에서 웹 페이지 표시부(114)는 단계(520)에서 생성한 웹 페이지의 레이아웃을 출력하여 웹 브라우저에 웹 페이지가 표시되도록 할 수 있다. 이때, 웹 페이지 표시부(114)는 웹 페이지와 함께 사용자가 웹 페이지의 캐싱을 선택할 수 있는 입력 수단을 표시할 수 있다In
즉, 웹 브라우저에 표시할 웹 페이지가 동적인 웹 페이지인 경우, 웹 페이지 표시부(114)가 웹 페이지를 출력한 후, 캐싱부(113)가 웹 페이지의 레이아웃을 캐싱할 수 있다. 그러나, 실시예에 따라서는 웹 브라우저에 표시할 웹 페이지가 동적인 웹 페이지인 경우에도 웹 페이지의 레이아웃 출력 전에 웹 페이지의 레이아웃을 캐싱할 수도 있다.That is, when the web page to be displayed on the web browser is a dynamic web page, after the web
단계(650)에서 캐싱부(113)는 사용자로부터 웹 브라우저에 표시된 웹 페이지의 캐싱을 요청 받았는지 여부를 확인할 수 있다. 구체적으로, 캐싱부(113)는 사용자가 단계(640)에서 웹 페이지와 함께 표시한 입력 수단을 선택하였는지 여부를 확인할 수 있다. 그리고, 사용자가 단계(640)에서 웹 페이지와 함께 표시한 입력 수단을 선택한 경우, 캐싱부(113)는 사용자로부터 웹 브라우저에 표시된 웹 페이지의 캐싱을 요청 받았다고 판단할 수 있다. In
또한, 사용자로부터 웹 브라우저에 표시된 웹 페이지의 캐싱을 요청 받지 않은 경우, 캐싱부(113)는 웹 브라우저가 종료될 때까지 단계(650)을 반복하며 대기할 수 있다.In addition, if the user is not requested to cache the web page displayed on the web browser, the
단계(660)에서 캐싱부(113)는 단계(650)에서 사용자의 요청을 입력 받은 것으로 판단한 시점에서 웹 브라우저에 표시된 웹 페이지의 레이아웃 및 자원을 비휘발성 메모리(130)에 캐싱할 수 있다.The
즉, 캐싱부(113)는 사용자의 요청에 따라 웹 브라우저에 표시된 웹 페이지의 레이아웃 및 자원을 비휘발성 메모리(130)에 캐싱함으로써, 웹 브라우저가 종료되었다가 재실행되더라도, 캐싱된 웹 페이지와 자원을 이용하여 사용자가 캐싱을 선택한 시점의 웹 페이지를 표시할 수 있다. That is, the
도 7은 본 발명의 일실시예에 따른 캐싱 방법을 도시한 플로우차트이다.7 is a flowchart illustrating a caching method according to an embodiment of the present invention.
단계(710)에서 검색부(115)는 사용자의 요청에 따라 비휘발성 메모리(130)에서 사용자의 요청에 대응하는 웹 페이지의 레이아웃을 검색할 수 있다. In
단계(720)에서 검색부(115)는 단계(710)에서 사용자의 요청에 대응하는 웹 페이지의 레이아웃이 검색되었는지 여부를 확인할 수 있다. 단계(710)에서 사용자의 요청에 대응하는 웹 페이지의 레이아웃이 검색된 경우, 검색부(115)는 단계(730)을 수행하여 단계(710)에서 검색된 웹 페이지의 레이아웃의 유효성을 확인할 수 있다. 또한, 단계(710)에서 사용자의 요청에 대응하는 웹 페이지의 레이아웃이 검색되지 않은 경우, 검색부(115)는 단계(740)을 수행하여 원본 자원을 검색할 수 있다.In
단계(730)에서 검색부(115)는 단계(710)에서 검색된 웹 페이지의 레이아웃의 유효성을 확인할 수 있다. 이때, 검색부(115)는 웹 페이지의 레이아웃과 함께 저장된 유효성 정보를 기초로 단계(710)에서 검색된 웹 페이지의 레이아웃의 유효성을 확인할 수 있다. 그리고, 단계(710)에서 검색된 웹 페이지의 레이아웃이 유효하지 않은 경우, 검색부(115)는 비휘발성 메모리(130)에서 사용자의 요청에 대응하는 웹 페이지의 레이아웃이 검색되지 않은 것으로 판단하여 단계(740)을 수행할 수 있다.In
단계(740)에서 검색부(115)는 네트워크에서 사용자의 요청에 대응하는 원본 자원을 검색할 수 있다. In
단계(750)에서 자원 처리부(111)는 단계(740)에서 검색한 원본 자원을 처리하여 처리된 자원을 생성할 수 있다. 이때, 자원 처리부(111)가 생성한 처리된 자원은 휘발성 메모리(120)에 저장될 수 있다. In
단계(760)에서 레이아웃 생성부(112)는 단계(750)에서 처리된 차원을 이용하여 웹 페이지의 레이아웃을 생성할 수 있다. 이때, 레이아웃 생성부(112)가 생성한 웹 페이지의 레이아웃은 휘발성 메모리(120)에 저장될 수 있다. 또한, 캐싱부(113)는 자원 처리부(111)가 생성한 웹 페이지의 레이아웃을 비휘발성 메모리(130)에 캐싱할 수 있다.In
단계(770)에서 웹 페이지 표시부(114)는 단계(710)에서 검색되고, 단계(730)에서 유효하다고 확인된 웹 페이지의 레이아웃, 또는 단계(760)에서 휘발성 메모리(120)에 저장된 웹 페이지의 레이아웃을 이용하여 웹 페이지를 표시할 수 있다. At
본 발명은 원본 자원을 웹 브라우저에 표시하기 위한 모든 처리 과정이 종료되어 웹 브라우저에 출력되기 직전의 자원인 웹 페이지의 레이아웃을 캐싱하고, 사용자의 요청에 따라 웹 페이지의 레이아웃을 제공함으로써, 캐싱된 자원을 웹 브라우저에 표시하기 위하여 필요한 동작을 최소화하여 사용자에게 자원을 제공하기 위하여 필요한 시간을 단축할 수 있다.The present invention caches the layout of a web page, which is a resource just before all processing for displaying an original resource on a web browser is finished and is output to a web browser, and provides a layout of a web page according to a request of a user, It is possible to shorten the time required to provide the resource to the user by minimizing the operation required to display the resource on the web browser.
또한, 본 발명은 웹 페이지의 레이아웃을 비휘발성 메모리에 캐싱함으로써, 웹 브라우저의 종료, 또는 일정 시간의 경과에 따라 소멸되는 웹 페이지의 레이아웃을 지속적으로 사용할 수 있다.Further, by caching the layout of the web page in the nonvolatile memory, the present invention can continuously use the layout of the web page to be destroyed according to the end of the web browser or the elapse of a predetermined time.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.While the invention has been shown and described with reference to certain preferred embodiments thereof, it will be understood by those of ordinary skill in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. This is possible.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined by the equivalents of the claims, as well as the claims.
110: 캐싱 장치
111: 자원 처리부
112: 레이아웃 생성부
113: 캐싱부
114: 웹 페이지 표시부
120: 휘발성 메모리
130: 비휘발성 메모리110: Caching device
111: Resource processor
112:
113: Caching section
114: Web page display unit
120: volatile memory
130: Nonvolatile memory
Claims (11)
파싱된 자원을 이용하여 웹 페이지의 레이아웃을 생성하는 단계; 및
상기 웹 페이지의 레이아웃을 비휘발성 메모리에 캐싱하는 단계
를 포함하고,
상기 캐싱하는 단계는,
웹 브라우저에 표시할 웹 페이지가 정적인 웹 페이지인지, 또는 동적인 웹 페이지인지에 따라 웹 페이지의 레이아웃을 캐싱하는 순서 및 방법을 결정하는 웹 페이지 캐싱 방법.Parsing the original resource to generate a parsed resource;
Generating a layout of a web page using the parsed resource; And
Caching the layout of the web page in a non-volatile memory
Lt; / RTI >
Wherein the caching comprises:
A web page caching method for determining the order and method of caching a layout of a web page according to whether the web page to be displayed in the web browser is a static web page or a dynamic web page.
상기 레이아웃을 생성하는 단계는,
파싱된 자원에 포함된 문서 구조에 따라 파싱된 자원에 포함된 이미지나 텍스트를 배치하여 웹 페이지의 레이아웃을 생성하는 웹 페이지 캐싱 방법.The method according to claim 1,
The step of generating the layout includes:
A web page caching method for generating a layout of a web page by arranging an image or text included in a parsed resource according to a document structure included in the parsed resource.
상기 캐싱하는 단계는,
웹 페이지가 웹 브라우저에 표시하는 자원의 변화가 발생하지 않는 정적인 웹 페이지인 경우, 웹 페이지의 레이아웃을 웹 브라우저에 표시하기 전에 웹 페이지의 레이아웃의 구조 및 웹 페이지의 레이아웃에 포함된 자원을 비휘발성 메모리에 캐싱하는 웹 페이지 캐싱 방법.The method according to claim 1,
Wherein the caching comprises:
If the web page is a static web page that does not cause a change in the resources displayed in the web browser, the layout of the web page and the resources included in the layout of the web page are displayed before the web page is displayed in the web browser. A method of caching web pages caching in volatile memory.
상기 캐싱하는 단계는,
웹 페이지가 웹 브라우저에 표시하는 자원이 변화하는 동적인 웹 페이지인 경우, 웹 페이지의 레이아웃을 표시하는 웹 브라우저가 재실행되기 이전에 웹 페이지의 레이아웃을 비휘발성 메모리에 캐싱하는 웹 페이지 캐싱 방법.The method according to claim 1,
Wherein the caching comprises:
A web page caching method wherein a layout of a web page is cached in a non-volatile memory before a web browser displaying a layout of the web page is re-executed, when the web page is a dynamic web page whose resources displayed in the web browser are changing.
상기 캐싱하는 단계는,
사용자로부터 웹 브라우저에 표시된 웹 페이지의 캐싱을 요청 받은 경우, 사용자의 요청을 입력받은 시점에서 웹 브라우저에 표시된 웹 페이지의 레이아웃 및 자원을 비휘발성 메모리에 캐싱하는 웹 페이지 캐싱 방법.5. The method of claim 4,
Wherein the caching comprises:
A web page caching method for caching a layout and a resource of a web page displayed on a web browser in a nonvolatile memory at the time when a user's request is inputted, when a user is requested to cache the web page displayed in the web browser.
상기 캐싱하는 단계는,
웹 페이지의 레이아웃의 유효성 판단 기준이 되는 유효성 정보를 웹 페이지의 레이아웃과 함께 비휘발성 메모리에 캐싱하는 웹 페이지 캐싱 방법.The method according to claim 1,
Wherein the caching comprises:
A web page caching method for caching validity information serving as a criterion for judging validity of layout of a web page in a nonvolatile memory together with layout of a web page.
상기 웹 페이지의 레이아웃의 파일 크기, 지역성(locality), 및 유효 시간 중 적어도 하나에 기초하여 캐싱된 웹 페이지의 레이아웃의 우선 순위를 설정하고, 상기 우선 순위에 기초하여 비휘발성 메모리에 캐싱된 웹 페이지의 레이아웃을 관리하는 단계
를 더 포함하는 웹 페이지 캐싱 방법.The method according to claim 1,
Setting a priority of a layout of a cached web page based on at least one of a file size, a locality, and a validity time of the layout of the web page, and setting a priority of a layout of the web page cached in the nonvolatile memory The step of managing the layout of
Wherein the web page caching method further comprises:
상기 비휘발성 메모리에서 웹 페이지의 레이아웃이 검색되지 않은 경우, 사용자의 요청에 대응하는 원본 자원을 이용하여 웹 페이지의 레이아웃을 생성하는 단계; 및
상기 비휘발성 메모리에서 검색한 웹 페이지의 레이아웃, 또는 원본 자원을 이용하여 생성한 웹 페이지의 레이아웃을 웹 브라우저에 표시하는 단계
를 포함하고,
상기 웹 페이지의 레이 아웃은,
웹 브라우저에 표시할 웹 페이지가 정적인 웹 페이지인지, 또는 동적인 웹 페이지인지에 따라 상기 비휘발성 메모리에 캐싱되는 순서 및 방법이 결정되는 웹 페이지 캐싱 방법.Retrieving a layout of a web page corresponding to a user's request in a non-volatile memory having a layout of the web page cached;
Generating a layout of a web page using a source resource corresponding to a request of a user when a layout of the web page is not searched in the non-volatile memory; And
Displaying the layout of the web page retrieved from the nonvolatile memory or the layout of the web page generated using the original resource on a web browser
Lt; / RTI >
The layout of the web page includes:
Wherein the order and method of caching in the non-volatile memory is determined according to whether the web page to be displayed in the web browser is a static web page or a dynamic web page.
상기 검색하는 단계는
웹 페이지의 레이아웃과 함께 캐싱된 유효성 정보를 기초로 상기 비휘발성 메모리에서 검색한 웹 페이지의 레이아웃의 유효 여부를 판단하는 단계; 및
상기 웹 페이지의 레이아웃이 유효하지 않은 경우, 상기 비휘발성 메모리에서 사용자의 요청에 대응하는 웹 페이지의 레이아웃이 검색되지 않은 것으로 판단하는 단계
를 포함하는 웹 페이지 캐싱 방법.9. The method of claim 8,
The searching step
Determining whether the layout of the web page retrieved from the nonvolatile memory is valid based on the validity information cached together with the layout of the web page; And
Determining that the layout of the web page corresponding to the user's request is not retrieved from the nonvolatile memory if the layout of the web page is invalid;
Gt; a < / RTI > web page.
상기 유효성 정보는,
웹 페이지의 레이아웃의 캐싱 허용 여부, 웹 페이지의 레이아웃의 캐싱이 허용되는 시간, 및 웹 페이지의 레이아웃이 캐싱되기 위한 조건 중 적어도 하나를 포함하는 웹 페이지 캐싱 방법.10. The method of claim 9,
The validity information includes:
Wherein the web page includes at least one of whether to allow caching of the layout of the web page, a time when caching of the layout of the web page is allowed, and a condition for the layout of the web page to be cached.
파싱된 자원을 이용하여 웹 페이지의 레이아웃을 생성하는 레이아웃 생성부; 및
상기 웹 페이지의 레이아웃을 비휘발성 메모리에 캐싱하는 캐싱부
를 포함하고,
상기 캐싱부는,
웹 브라우저에 표시할 웹 페이지가 정적인 웹 페이지인지, 또는 동적인 웹 페이지인지에 따라 웹 페이지의 레이아웃을 캐싱하는 순서 및 방법을 결정하는 웹 페이지 캐싱 장치.A resource processor for parsing the original resource to generate a parsed resource;
A layout generating unit for generating a layout of a web page using the parsed resource; And
A cache unit for caching the layout of the web page in a nonvolatile memory;
Lt; / RTI >
The caching unit includes:
A web page caching device for determining the order and method of caching a layout of a web page according to whether the web page to be displayed in the web browser is a static web page or a dynamic web page.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140059105A KR101574893B1 (en) | 2014-05-16 | 2014-05-16 | Apparatus and method for caching web page layout using non-volatile memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140059105A KR101574893B1 (en) | 2014-05-16 | 2014-05-16 | Apparatus and method for caching web page layout using non-volatile memory |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150131818A KR20150131818A (en) | 2015-11-25 |
KR101574893B1 true KR101574893B1 (en) | 2015-12-04 |
Family
ID=54845588
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140059105A KR101574893B1 (en) | 2014-05-16 | 2014-05-16 | Apparatus and method for caching web page layout using non-volatile memory |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101574893B1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102045760B1 (en) * | 2018-06-12 | 2019-11-18 | 주식회사 한글과컴퓨터 | Web document display processing apparatus for processing a display of text inserted on a web document based on a data object and operating method thereof |
KR102658819B1 (en) * | 2018-06-15 | 2024-04-19 | 삼성전자주식회사 | Resource caching method and electronic device supporting the same |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4592367B2 (en) | 2004-09-09 | 2010-12-01 | 富士通セミコンダクター株式会社 | Program section layout method and layout processing program |
-
2014
- 2014-05-16 KR KR1020140059105A patent/KR101574893B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4592367B2 (en) | 2004-09-09 | 2010-12-01 | 富士通セミコンダクター株式会社 | Program section layout method and layout processing program |
Also Published As
Publication number | Publication date |
---|---|
KR20150131818A (en) | 2015-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10776564B2 (en) | Method and system for displaying webpage self-defined content | |
CN109388766B (en) | Page loading method and device | |
KR100881668B1 (en) | Apparatus and method for prefetching web page | |
JP4438448B2 (en) | Structured document display processing device, structured document display method, structured document display program | |
EP2653987A1 (en) | Displaying web pages without downloading static files | |
JP2011108102A (en) | Web server, web browser and web system | |
US9811602B2 (en) | Method and apparatus for defining screen reader functions within online electronic documents | |
JP2007264792A (en) | Voice browser program | |
JP2012518836A (en) | Handling fonts for viewing documents on the web | |
US8910074B2 (en) | System and method for performing auto scroll | |
TW201222283A (en) | On-demand translation of application text | |
JP2010527051A (en) | Document processing for mobile devices | |
JP3809863B2 (en) | server | |
US20090270076A1 (en) | Performance optimizer for mobile devices website | |
EP2972827B1 (en) | Collaborative editing | |
CN106202368B (en) | Preloading method and device | |
EP3207461A1 (en) | Compression of cascading style sheet files | |
Patel | Analyzing the Impact of Next. JS on Site Performance and SEO | |
CN102880679A (en) | Method and device for storing webpage information | |
CN111143732A (en) | Webpage rendering method and device | |
KR101574893B1 (en) | Apparatus and method for caching web page layout using non-volatile memory | |
JP2008158589A (en) | Updated information notification device, and updated information notification program | |
JP2007503041A (en) | How to cache data assets | |
US20170235456A1 (en) | Automatic page-editing method, non-transitory computer-readable recording medium, and automatic page-editing apparatus | |
US8156428B1 (en) | Method and apparatus for merging digital content |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20191104 Year of fee payment: 5 |