KR20180010442A - 온라인 저작 서비스가 수행되는 사용자 단말 및 이의 문서 저장 방법 - Google Patents
온라인 저작 서비스가 수행되는 사용자 단말 및 이의 문서 저장 방법 Download PDFInfo
- Publication number
- KR20180010442A KR20180010442A KR1020160092536A KR20160092536A KR20180010442A KR 20180010442 A KR20180010442 A KR 20180010442A KR 1020160092536 A KR1020160092536 A KR 1020160092536A KR 20160092536 A KR20160092536 A KR 20160092536A KR 20180010442 A KR20180010442 A KR 20180010442A
- Authority
- KR
- South Korea
- Prior art keywords
- network
- document
- failure
- web server
- storage
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 37
- 238000004891 communication Methods 0.000 claims abstract description 17
- 230000004044 response Effects 0.000 claims description 11
- 230000006870 function Effects 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 241001112258 Moca Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
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
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Strategic Management (AREA)
- Primary Health Care (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
HTML5 기반의 온라인 저작 서비스가 수행되는 사용자 단말은 통신모듈, 상기 온라인 저작 서비스를 수행하기 위한 프로그램이 저장된 메모리 및 상기 프로그램을 실행시키는 프로세서를 포함한다. 이때, 상기 프로세서는 상기 프로그램을 실행시킴에 따라, 네트워크에 장애가 발생한 것을 감지한 경우 상기 문서를 웹 스토리지 상에 임시 저장하고, 상기 네트워크의 장애가 해소되었는지 여부를 판단하여, 상기 장애가 해소된 경우 상기 임시 저장된 상기 문서를 상기 웹 서버의 데이터베이스 상에 저장한다.
Description
본 발명은 사용자 단말 및 이의 문서 저장 방법에 관한 것으로서, 보다 구체적으로는 HTML5 기반의 온라인 저작 서비스가 수행되는 사용자 단말 및 이의 문서 저장 방법에 관한 것이다.
본 발명은 2015년 정부(미래창조과학부)의 재원으로 정보통신기술진흥센터의 지원을 받아 수행된 연구이다[과제번호: R0115-15-1011, 과제명: e-Book용 과학 실험 콘텐츠 제작을 위한 물리 기반 솔루션 개발].
일반적으로 종래의 웹(web)은 문자, 그림, 소리 또는 동영상 등으로 구성된 특정 정보를 사용자에게 보여주는 웹 페이지나 웹 사이트를 제공하는 용도로 사용되어 왔다. 그러나 최근의 웹은 점차 어플리케이션 형태로 변화함에 따라, 단순히 웹 페이지에서 더 나아가 컴퓨터용 어플리케이션과 같은 형태로 진화하고 있다.
한편, 웹을 통해 전송되는 전자문서는 규격화된 문서로서, 무선들 간의 상호 연결을 제공하는 HTML(Hyper Text Markup Language) 문서가 대표적이다. HTML은 인터넷 서비스의 하나인 월드 와이드 웹을 통해 볼 수 있는 문서를 만들 때 사용되는 프로그래밍 언어의 한 종류로서, 하이퍼텍스트를 작성하기 위하여 개발되어, 인터넷에서 웹을 통해 접근되는 대부분의 웹 페이지들은 HTML로 작성된다.
이러한 HTML은 문서의 글자크기, 글자색, 글자모양, 그래픽, 문서이동(하이퍼링크) 등을 정의하는 명령어로서 홈페이지를 작성하는데 사용되며, 국제표준 SGML(Standard Generalized Markup Language)에서 특히 하이퍼텍스트를 강조하여 만들어진 언어이다.
또한, HTML5는 웹 문서를 제작하는데 쓰이는 기본 프로그래밍 언어인 HTML의 최신 규격으로서, HTML5를 이용하면 별도의 프로그램을 설치하지 않아도 인터넷 브라우저 상에서 화려한 그래픽 효과를 구현하며, 음악 또는 동영상을 자유롭게 감상할 수 있다.
최근에는 HTML5 기반의 온라인 저작도구가 개발되어 사용자에게 제공되고 있는 실정이다.
그러나 종래 기술에 따른 온라인 저작 도구는 문서 작업 중 네트워크 장애로 인하여 오프라인 상태가 되면, 현재 작업 중인 문서를 저장이 불가하다는 문제가 있었다. 이에 따라, 문서를 작업 중인 사용자는 현재 작업 중인 문서 작업을 계속하여 진행하기 위해서 네트워크 장애가 해소될 때까지 대기하거나 또는 문서 작업을 다시 새로이 시작해야만 하는 문제가 있었다.
이와 관련하여, 한국공개특허공보 제10-2013-0099896호(발명의 명칭: 콘텐츠 저작 시스템 및 서비스 방법)는 HTML 기반에서 SaaS 형태의 콘텐츠 저작 도구를 이용하여 동영상과 PPT형태의 이미지 및 목차가 하나의 전체 동영상이 아니면서도 하나의 화면으로 연동되어 보여지는 콘텐츠를 저작하는 기술을 개시하고 있다.
본 발명의 실시예는 HTML5 기반의 온라인 저작 도구에 있어서 문서 작업 중 네트워크 장애가 발생한 경우, 오프라인 상에서 작업 중인 문서를 웹 스토리지 상에 임시 저장함으로써 네트워크 장애 발생시에도 문서의 연속적인 작업이 가능한 HTML5 기반의 온라인 저작 서비스가 수행되는 사용자 단말 및 이의 문서 저장 방법을 제공하고자 한다.
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면에 따른 HTML5 기반의 온라인 저작 서비스가 수행되는 사용자 단말은 통신모듈, 상기 온라인 저작 서비스를 수행하기 위한 프로그램이 저장된 메모리 및 상기 프로그램을 실행시키는 프로세서를 포함한다. 이때, 상기 프로세서는 상기 프로그램을 실행시킴에 따라, 네트워크에 장애가 발생한 것을 감지한 경우 상기 문서를 웹 스토리지 상에 임시 저장하고, 상기 네트워크의 장애가 해소되었는지 여부를 판단하여, 상기 장애가 해소된 경우 상기 임시 저장된 상기 문서를 상기 웹 서버의 데이터베이스 상에 저장한다.
또한, 본 발명의 제 2 측면에 따른 HTML5 기반의 온라인 저작 서비스가 수행되는 사용자 단말에서의 문서 저장 방법은 온라인 상태에서 문서 작성 중, 네트워크의 장애로 인한 오프라인 상태를 감지하는 단계; 상기 네트워크에 장애가 발생한 것으로 감지된 경우, 상기 문서를 웹 스토리지 상에 임시 저장하는 단계; 상기 네트워크의 장애가 해소되었는지 여부를 판단하는 단계; 및 상기 판단 결과 상기 네트워크의 장애가 해소되어 온라인 상태로 전환된 경우, 상기 웹 스토리지 상에 임시 저장된 상기 문서를 웹 서버의 데이터베이스 상에 저장하는 단계를 포함한다.
전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 온라인 상태에서 문서 작업 중 네트워크 장애로 인하여 오프라인 상태가 되더라도, 문서의 계속적인 작업 및 저장이 가능하다.
또한, HTML5가 지원되는 브라우저에서 작업이 가능한바 별도의 어플리케이션을 설치하거나 추가적인 작업 없이 바로 온라인 저작 서비스의 제공이 가능하다.
도 1은 본 발명의 일 실시예에 따른 온라인 저작 시스템을 개략적으로 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시예에 따른 사용자 단말의 블록도이다.
도 3a는 온라인 상태에서 작성 중인 문서가 관계형 데이터베이스에 저장되는 일 예시를 설명하기 위한 도면이고, 도 3b는 NoSQL 데이터베이스 상에 저장되는 일 예시를 설명하기 위한 도면이다.
도 4는 오프라인 상태에서 문서가 웹 스토리지 상에 임시 저장되는 일 예시를 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 문서 저장 방법의 순서도이다.
도 6은 네트워크 장애 여부를 판단하는 단계의 순서도이다.
도 2는 본 발명의 일 실시예에 따른 사용자 단말의 블록도이다.
도 3a는 온라인 상태에서 작성 중인 문서가 관계형 데이터베이스에 저장되는 일 예시를 설명하기 위한 도면이고, 도 3b는 NoSQL 데이터베이스 상에 저장되는 일 예시를 설명하기 위한 도면이다.
도 4는 오프라인 상태에서 문서가 웹 스토리지 상에 임시 저장되는 일 예시를 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 문서 저장 방법의 순서도이다.
도 6은 네트워크 장애 여부를 판단하는 단계의 순서도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본원은 HTML5 기반의 온라인 저작 서비스가 수행되는 사용자 단말(100) 및 이의 문서 저장 방법에 관한 것이다.
이때, HTML5에서는 오프라인 상에서의 웹 브라우징을 가능하게 하는 어플리케이션 캐시(Application Cache) 기능이 제공된다. HTML5의 어플리케이션 캐시는 html, css, js 파일 및 이미지 파일, 폰트 파일 등 웹 페이지를 구성하는 각종 웹 리소스들을 클라이언트 단으로 다운로드해서 캐싱해 둠으로써 인터넷 접속 없이 해당 리소스를 이용하게끔 할 수 있다.
이와 같은 본 발명의 일 실시예는 HTML5 기반의 온라인 저작 도구를 이용하여 온라인 상태에서 문서 작업 중 네트워크 장애가 발생하여 오프라인 상태로 전환되더라도, 작업 중인 문서를 웹 스토리지(140) 상에 캐싱화하여 임시 저장함으로써 연속적인 문서 작업을 가능하게 할 수 있다.
이하에서는 도 1 내지 도 4를 참조하여 본 발명의 일 실시예에 따른 HTML5 기반의 온라인 저작 서비스가 제공되는 사용자 단말(100)에 대해 설명하도록 한다.
도 1은 본 발명의 일 실시예에 따른 온라인 저작 시스템(1)을 개략적으로 설명하기 위한 도면이다.
본 발명의 일 실시예에 따른 온라인 저작 시스템(1)은 웹 서버(10) 및 사용자 단말(100)을 포함한다.
이때, 도 1에 도시한 온라인 저작 시스템(1)을 구성하는 각 구성요소들은 네트워크(network, A)를 통해 연결될 수 있다. 네트워크(A)는 단말들 및 서버들과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 이러한 네트워크(A)의 일 예에는 3GPP(3rd Generation Partnership Project) 네트워크, LTE(Long Term Evolution) 네트워크, WIMAX(World Interoperability for Microwave Access) 네트워크, 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), 블루투스(Bluetooth) 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크, WiFi 등이 포함되나 이에 한정되지는 않는다.
웹 서버(10)는 사용자 단말(100)로 HTML5 기반의 온라인 저작 서비스를 제공한다. 온라인 저작 서비스는 HTML5 기반의 웹 브라우저 상에서 문서 작업을 제공하는 서비스를 의미한다.
이때, 본 발명의 일 실시예에서의 문서라 함은 텍스트뿐만 아니라 차트, 도형과, 이미지 및 동영상을 포함하는 개념으로서, 본 발명의 일 실시예는 이러한 일체의 콘텐츠에 대한 수정, 편집 등의 작업이 가능하다.
그리고 웹 브라우저는 Internet Explorer, Firefox, Opera, Chrome, Safari 등 HTML5가 지원되는 브라우저를 의미한다.
한편, 웹 서버(10)는 온라인 상태에서 작업 중인 문서를 저장하는 별도의 데이터베이스를 포함할 수 있다. 이때, 데이터베이스는 웹 서버(10)와 일체로 구현될 수 있으며, 이와 달리 별도의 저장 장소로 분리되어 구현될 수 있음은 물론이다.
사용자 단말(100)은 네트워크를 통해 온라인 상에 접속하여, 웹 서버(10)에 의해 제공되는 온라인 저작 서비스를 수행한다.
이러한 온라인 저작 서비스를 제공받는 사용자 단말(100)은 일반 PC(100c) 등과 같이 구현될 수 있으며, 예를 들어, 스마트폰(100a), 노트북, 태블릿 PC(100b) 등과 같이 휴대성과 이동성이 보장되는 무선 통신 장치, 즉 PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말 등과 같은 모든 종류의 핸드헬드(Handheld) 기반 또는 웨어러블(Wearable) 기반의 무선 통신 장치로 구현될 수도 있다.
이하에서는 도 2 내지 도 4를 참조하여 본 발명의 일 실시예에 따른 사용자 단말(100)에 대하여 보다 구체적으로 설명하도록 한다.
도 2는 본 발명의 일 실시예에 따른 사용자 단말(100)의 블록도이다. 도 3a는 온라인 상태에서 작성 중인 문서가 관계형 데이터베이스에 저장되는 일 예시를 설명하기 위한 도면이고, 도 3b는 NoSQL 데이터베이스 상에 저장되는 일 예시를 설명하기 위한 도면이다. 도 4는 오프라인 상태에서 문서가 웹 스토리지(140) 상에 임시 저장되는 일 예시를 설명하기 위한 도면이다.
본 발명의 일 실시예에 따른 사용자 단말(100)은 통신모듈(110), 메모리(120) 및 프로세서(130)를 포함한다.
통신모듈(110)은 네트워크를 통해 웹 서버(10)와 데이터를 송수신한다. 이와 같은 통신 모듈(110)은 유선 통신 모듈 및 무선 통신 모듈을 모두 포함할 수 있다. 유선 통신 모듈은 전력선 통신 장치, 전화선 통신 장치, 케이블 홈(MoCA), 이더넷(Ethernet), IEEE1294, 통합 유선 홈 네트워크 및 RS-485 제어 장치로 구현될 수 있다. 또한, 무선 통신 모듈은 WLAN(wireless LAN), Bluetooth, HDR WPAN, UWB, ZigBee, Impulse Radio, 60GHz WPAN, Binary-CDMA, 무선 USB 기술 및 무선 HDMI 기술 등으로 구현될 수 있다.
메모리(120)에는 온라인 저작 서비스를 수행하기 위한 프로그램이 저장된다. 여기에서, 메모리(120)는 전원이 공급되지 않아도 저장된 정보를 계속 유지하는 비휘발성 저장장치 및 휘발성 저장장치를 통칭하는 것이다.
예를 들어, 메모리(120)는 콤팩트 플래시(compact flash; CF) 카드, SD(secure digital) 카드, 메모리 스틱(memory stick), 솔리드 스테이트 드라이브(solid-state drive; SSD) 및 마이크로(micro) SD 카드 등과 같은 낸드 플래시 메모리(NAND flash memory), 하드 디스크 드라이브(hard disk drive; HDD) 등과 같은 마그네틱 컴퓨터 기억 장치 및 CD-ROM, DVD-ROM 등과 같은 광학 디스크 드라이브(optical disc drive) 등을 포함할 수 있다.
프로세서(130)는 메모리(120)에 저장된 프로그램을 실행시킨다. 먼저, 프로세서(130)는 사용자가 사용자 단말(100)을 이용하여 온라인 저작 서비스를 통해 온라인 상태에서 문서 작업 중, 네트워크 장애가 발생한 것을 감지한다.
이때, 프로세서(130)는 웹 서버(10)를 호출한 후 기 설정된 시간 동안 웹 서버(10)로부터 응답을 받지 못한 경우, 웹 서버(10)로 기 설정된 횟수만큼 다시 재호출한다. 재호출 결과 웹 서버(10)로부터 응답을 받은 경우에는 네트워크의 장애로 감지하지 않는다. 이와 달리, 재호출 결과 웹 서버(10)로부터 응답을 받지 못한 경우 네트워크의 장애로 판단할 수 있다.
예를 들어, 프로세서(130)는 웹 서버(10)를 호출한 후 3초 동안 응답이 없을 경우, 다시 3번을 연속하여 호출을 한다. 재호출 결과 웹 서버(10)의 응답이 없는 경우에는 최종적으로 네트워크 장애로 판단할 수 있다.
이와 같이 네트워크 장애가 발생한 것으로 판단한 경우, 프로세서(130)는 현재까지 작성된 문서를 브라우저의 웹 스토리지(140) 상에 임시 저장한다. 그리고 오프라인 상태에서 사용자가 계속하여 작업 중인 문서 역시 웹 스토리지(140) 상에 임시 저장할 수 있다.
이때, 프로세서(130)는 사용자로 하여금 네트워크의 장애가 발생하였음을 알리는 알림 정보를 생성할 수 있다. 이러한 알림 정보는 사용자 단말(100)의 형태에 따라, 팝업, 깜빡임, 소리, 진동 등 다양한 형태로 제공될 수 있다.
한편, 본 발명의 일 실시예에서는 온라인 상태에서 작성 중인 문서는 웹 서버(10)의 관계형 데이터베이스(RDBMS, Relational database management system) 및 NoSQL(Not Only SQL) 데이터베이스 상에 저장될 수 있다.
즉, 네트워크의 장애가 없어 온라인 상태에서 작성 중인 문서는 기 설정된 시간에 저장되거나 또는 사용자에 의해 입력된 저장 요청인 저장 이벤트를 수신하게 되면, 도 3a에 도시된 바와 같이 테이블의 행과 열의 형태로 관계형 데이터베이스 상에 그리고 도 3b에 도시된 바와 같은 키-값(key-value) 형식의 JSON 형태로 NoSQL 데이터베이스인 몽고DB(mongoDB) 상에 해당 문서를 저장할 수 있다.
이와 달리, 네트워크의 장애가 발생되어 온라인 상태에서 오프라인 상태로 전환된 경우, 프로세서(130)는 웹 스토리지(140) 상에 현재까지 작업된 문서 또는 이후 작업된 문서를 임시 저장할 수 있다.
이때, 임시 저장된 문서는 웹 스토리지(140)의 로컬 스토리지 상에 저장될 수 있다. 이에 따라, 본 발명의 일 실시예는 브라우저를 종료한 후 재실행하더라도 저장된 문서가 그대로 유지될 수 있는바, 오프라인 상에서의 작업한 내용의 유실을 방지할 수 있다.
구체적으로, 네트워크의 장애가 발생한 경우, 프로세서(130)는 도 4에 도시된 바와 같이 NoSQL 저장 방식과 동일한 키-값(key-value) 형식의 JSON 형태의 데이터로 로컬 스토리지 상에 문서를 임시 저장할 수 있다.
이때, 임시 저장된 데이터는 웹 서버(10)의 관계형 데이터베이스에 대응하는 키(P1)를 포함하고 있는바, 추후 네트워크의 장애가 해소된 경우 관계형 데이터베이스에 대응하는 키(P1)에 기초하여 임시 저장된 데이터를 웹 서버(10)의 관계형 데이터베이스 상에 저장할 수 있다.
이에 따라, 본 발명의 일 실시예는 오프라인 상에서의 임시 저장된 문서 또는 임시 저장된 문서에 대하여 오프라인 상에서 계속하여 작업한 경우에도, 온라인 상태로 전환된 이후 작업의 연속성이 보장될 수 있다.
한편, 오프라인 상태가 계속 유지되는 상태에서 사용자가 문서 작업을 계속하는 중, 사용자로부터의 웹 서버(10)로의 접속이 필요한 기능의 사용 요청을 수신한 경우, 네트워크의 장애가 해소되었는지 여부를 다시 판단한다. 이때, 웹 서버(10)로의 접속이 필요한 기능은 예를 들어, 온라인 상에서 제공되는 동영상, 이미지, 지도 등을 추가하기 위한 외부 API(Application Programming Interface)를 활용하는 것을 의미한다.
판단 결과 네트워크의 장애가 해소된 경우, 프로세서(130)는 온라인 상태에서 해당 기능을 제공하여 연속적인 문서 작업을 지속적으로 제공할 수 있다. 이와 달리, 네트워크 장애가 아직 해소되지 않은 경우, 프로세서(130)는 네트워크의 장애가 아직 해소되지 않았음을 알리는 알림 정보를 생성할 수 있다.
또한, 프로세서(130)는 사용자로부터 저장 요청을 입력 받는 저장 이벤트 또는 기 설정된 시간에 자동 저장하도록 설정된 저장 이벤트를 수신하는 경우 네트워크의 장애가 해소되었는지 여부를 판단하고, 판단 결과에 따라 알림 정보를 생성하거나 온라인 상에서의 문서 작업 서비스를 계속적으로 제공할 수 있다.
이후 프로세서(130)는 네트워크의 장애가 해소된 경우 임시 저장된 문서를 웹 서버(10)의 데이터베이스 상에 저장한다.
참고로, 본 발명의 실시예에 따른 도 2에 도시된 구성 요소들은 소프트웨어 또는 FPGA(Field Programmable Gate Array) 또는 ASIC(Application Specific Integrated Circuit)와 같은 하드웨어 형태로 구현될 수 있으며, 소정의 역할들을 수행할 수 있다.
그렇지만 '구성 요소들'은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, 각 구성 요소는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다.
따라서, 일 예로서 구성 요소는 소프트웨어 구성 요소들, 객체지향 소프트웨어 구성 요소들, 클래스 구성 요소들 및 태스크 구성 요소들과 같은 구성 요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다.
구성 요소들과 해당 구성 요소들 안에서 제공되는 기능은 더 작은 수의 구성 요소들로 결합되거나 추가적인 구성 요소들로 더 분리될 수 있다.
이하에서는 도 5 및 도 6을 참조하여, 본 발명의 일 실시예에 따른 사용자 단말(100)에서의 문서 저장 방법에 대해 설명하도록 한다.
도 5는 본 발명의 일 실시예에 따른 문서 저장 방법의 순서도이다. 도 6은 네트워크 장애 여부를 판단하는 단계의 순서도이다.
본 발명의 일 실시예에 따른 HTML5 기반의 온라인 저작 서비스가 수행되는 사용자 단말(100)에서의 문서 저장 방법은 먼저, 사용자에 의해 온라인 상태에서 문서 작성 중(S110), 네트워크 장애로 인한 오프라인 상태를 감지한다(S120).
이때, 사용자 단말(100)은 웹 서버(10)를 호출하고(S121), 호출 후 기 설정된 시간 동안 웹 서버(10)로부터 응답을 받지 못한 경우(S122), 다시 웹 서버(10)로 기 설정된 횟수만큼 재호출한 뒤(S123), 재호출 결과 웹 서버(10)로부터 응답을 받지 못한 경우(S124), 네트워크에 장애가 발생한 것으로 판단할 수 있다(S125).
이와 달리, 최초 호출 또는 재호출 후 웹 서버(10)로부터 응답을 수신한 경우 계속하여 온라인 저작 서비스를 제공할 수 있다(S160).
이와 같이 네트워크 상에 장애가 발생한 것으로 감지된 경우, 문서를 웹 스토리지(140) 상에 임시 저장한다(S140). 이때, 사용자 단말(100)은 네트워크 상에 장애가 발생하였음을 알리는 알림 정보를 생성하여 사용자에게 제공할 수 있다(S130).
다음으로, 사용자 단말(100)은 네트워크의 장애가 해소되었는지 여부를 판단한다(S150).
사용자 단말(100)은 네트워크 장애 해소 여부를 기 설정된 시간마다 확인할 수 있다.
또는, 네트워크의 장애로 인하여 오프라인 상태가 유지되는 상태에서, 사용자로부터 오프라인 상태에서 문서 작업 중 웹 서버(10)로의 접속이 필요한 기능의 사용 요청을 수신하면, 사용자 단말(100)은 네트워크의 장애가 해소되었는지 여부를 판단하고, 판단 결과 장애가 해소되지 않은 경우 이를 알리는 알림 정보를 생성하여 사용자에게 제공할 수 있다.
또는, 사용자로부터 저장 요청을 입력 받는 저장 이벤트 또는 기 설정된 시간에 자동 저장하도록 설정된 저장 이벤트를 수신하는 경우 사용자 단말(100)은 네트워크의 장애가 해소되었는지 여부를 판단하여, 알림 정보 또는 온라인 상에서의 서비스를 제공할 수 있다.
다음으로, 네트워크의 장애가 해소되어 온라인 상태로 전환된 경우, 사용자 단말(100)은 웹 스토리지(140) 상에 임시 저장된 문서를 웹 서버(10)의 데이터베이스 상에 저장한다(S160).
한편, 본 발명의 일 실시예에 따른 문서 저장 방법은 온라인 상태에서 작성 중인 문서는 웹 서버(10)의 관계형 데이터베이스 및 NoSQL 데이터베이스 상에 저장할 수 있다.
그리고 오프라인 상에서는 문서를 키-값(key-value) 형식의 JSON 형태의 데이터로 변환하여 웹 스토리지(140)의 로컬 스토리지 상에 임시 저장할 수 있다.
이때, 임시 저장된 데이터는 웹 서버(10)의 관계형 데이터베이스에 대응하는 키를 포함하며, 이에 따라 본 발명의 일 실시예는 온라인 상태로 전환됨에 따라 관계형 데이터베이스에 대응하는 키에 기초하여 임시 저장된 데이터를 관계형 데이터베이스 상에 저장할 수 있다.
상술한 설명에서, 단계 S110 내지 S160은 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다. 아울러, 기타 생략된 내용이라 하더라도 도 1 내지 도 4에서의 사용자 단말(100)에 관하여 이미 기술된 내용은 도 5 및 도 6의 문서 방법에도 적용된다.
전술한 본 발명의 일 실시예에 따르면, 온라인 상태에서 문서 작업 중 네트워크 장애로 인하여 오프라인 상태가 되더라도, 브라우저의 웹 스토리지(140)인 로컬 스토리지 상에 현재 작성 중이거나 현재까지 작성된 문서를 저장하고, 이를 온라인 상태에서도 연속적으로 사용 가능한바, 오프라인 상태가 되더라도 문서 작업의 연속성이 보장될 수 있다.
본 발명의 일 실시예에 따른 HTML5 기반의 온라인 저작 서비스가 수행되는 사용자 단말(100)에서의 문서 저장 방법은 컴퓨터에 의해 실행되는 매체에 저장된 컴퓨터 프로그램 또는 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다.
본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍쳐를 갖는 컴퓨터 시스템을 사용하여 구현될 수 있다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
1: 온라인 저작 시스템
10: 웹 서버
100, 100a~100c: 사용자 단말 110: 통신모듈
120: 메모리 130: 프로세서
140: 웹 스토리지
100, 100a~100c: 사용자 단말 110: 통신모듈
120: 메모리 130: 프로세서
140: 웹 스토리지
Claims (17)
- HTML5 기반의 온라인 저작 서비스가 수행되는 사용자 단말에 있어서,
통신모듈,
상기 온라인 저작 서비스를 수행하기 위한 프로그램이 저장된 메모리 및
상기 프로그램을 실행시키는 프로세서를 포함하되,
상기 프로세서는 상기 프로그램을 실행시킴에 따라, 네트워크에 장애가 발생한 것을 감지한 경우 상기 문서를 웹 스토리지 상에 임시 저장하고, 상기 네트워크의 장애가 해소되었는지 여부를 판단하여, 상기 장애가 해소된 경우 상기 임시 저장된 상기 문서를 상기 웹 서버의 데이터베이스 상에 저장하는 것인 사용자 단말. - 제 1 항에 있어서,
상기 프로세서는 상기 웹 서버를 호출한 후 기 설정된 시간 동안 상기 웹 서버로부터 응답을 받지 못한 경우, 상기 웹 서버로 기 설정된 횟수만큼 재호출하고, 상기 재호출 결과 상기 웹 서버로부터 응답을 받지 못한 경우, 상기 네트워크에 장애가 발생한 것으로 판단하는 것인 사용자 단말. - 제 1 항 또는 제 2 항에 있어서,
상기 네트워크의 장애가 발생한 것으로 감지된 경우, 상기 프로세서는 상기 네트워크의 장애가 발생하였음을 알리는 알림 정보를 생성하는 것인 사용자 단말. - 제 1 항 또는 제 2 항에 있어서,
상기 프로세서는 사용자로부터 상기 오프라인 상태에서 문서 작성 중 상기 웹 서버로의 접속이 필요한 기능의 사용 요청을 수신한 경우, 상기 네트워크의 장애가 해소되었는지 여부를 판단하고, 판단 결과 상기 장애가 해소되지 않은 경우 상기 네트워크의 장애가 아직 해소되지 않았음을 알리는 알림 정보를 생성하는 것인 사용자 단말. - 제 1 항에 있어서,
상기 프로세서는 저장 이벤트를 수신함에 따라 상기 네트워크의 장애가 해소되었는지 여부를 판단하는 것인 사용자 단말. - 제 1 항에 있어서,
상기 온라인 상태에서 작성 중인 상기 문서는 상기 웹 서버의 관계형 데이터베이스 및 NoSQL 데이터베이스 상에 저장되는 것인 사용자 단말. - 제 1 항에 있어서,
상기 임시 저장된 문서는 상기 웹 스토리지의 로컬 스토리지 상에 저장되는 것인 사용자 단말. - 제 7 항에 있어서,
상기 임시 저장된 문서는 키-값(key-value) 형식의 JSON 형태의 데이터로 상기 로컬 스토리지 상에 임시 저장되는 것인 사용자 단말. - 제 8 항에 있어서,
상기 임시 저장된 데이터는 상기 웹 서버의 관계형 데이터베이스에 대응하는 키를 포함하고,
상기 프로세서는 상기 장애가 해소됨에 따라 상기 관계형 데이터베이스에 대응하는 키에 기초하여 상기 임시 저장된 데이터를 상기 관계형 데이터베이스 상에 저장하는 것인 사용자 단말. - HTML5 기반의 온라인 저작 서비스가 수행되는 사용자 단말에서의 문서 저장 방법에 있어서,
온라인 상태에서 문서 작성 중, 네트워크의 장애로 인한 오프라인 상태를 감지하는 단계;
상기 네트워크에 장애가 발생한 것으로 감지된 경우, 상기 문서를 웹 스토리지 상에 임시 저장하는 단계;
상기 네트워크의 장애가 해소되었는지 여부를 판단하는 단계; 및
상기 판단 결과 상기 네트워크의 장애가 해소되어 온라인 상태로 전환된 경우, 상기 웹 스토리지 상에 임시 저장된 상기 문서를 웹 서버의 데이터베이스 상에 저장하는 단계를 포함하는 문서 저장 방법. - 제 10 항에 있어서,
상기 네트워크의 장애로 인한 오프라인 상태를 감지하는 단계는,
상기 웹 서버를 호출하는 단계;
상기 호출 후 기 설정된 시간 동안 상기 웹 서버로부터 응답을 받지 못한 경우, 상기 웹 서버로 기 설정된 횟수만큼 재호출하는 단계; 및
상기 재호출 결과 상기 웹 서버로부터 응답을 받지 못한 경우, 상기 네트워크의 장애로 판단하는 단계를 포함하는 문서 저장 방법. - 제 10 항 또는 제 11 항에 있어서,
상기 네트워크의 장애가 발생한 것으로 감지된 경우, 상기 네트워크의 장애가 발생하였음을 알리는 알림 정보를 생성하는 단계를 더 포함하는 문서 저장 방법. - 제 10 항 또는 제 11 항에 있어서,
사용자로부터 상기 오프라인 상태에서 문서 작성 중 상기 웹 서버로의 접속이 필요한 기능의 사용 요청을 수신하는 단계;
상기 네트워크의 장애가 해소되었는지 여부를 판단하는 단계; 및
판단 결과 상기 장애가 해소되지 않은 경우 상기 네트워크의 장애가 아직 해소되지 않았음을 알리는 알림 정보를 생성하는 단계를 더 포함하는 문서 저장 방법. - 제 10 항에 있어서,
상기 네트워크의 장애가 해소되었는지 여부를 판단하는 단계는,
저장 이벤트를 수신함에 따라 상기 네트워크의 장애가 해소되었는지 여부를 판단하는 것인 문서 저장 방법. - 제 10 항에 있어서,
상기 온라인 상태에서 작성 중인 상기 문서는 상기 웹 서버의 관계형 데이터베이스 및 NoSQL 데이터베이스 상에 저장되는 것인 문서 저장 방법. - 제 10 항에 있어서,
상기 문서를 웹 스토리지 상에 임시 저장하는 단계는,
상기 문서를 키-값(key-value) 형식의 JSON 형태의 데이터로 상기 웹 스토리지의 로컬 스토리지 상에 임시 저장하는 것인 문서 저장 방법. - 제 16 항에 있어서,
상기 임시 저장된 데이터는 상기 웹 서버의 관계형 데이터베이스에 대응하는 키를 포함하고,
상기 웹 스토리지 상에 임시 저장된 상기 문서를 웹 서버의 데이터베이스 상에 저장하는 단계는,
상기 온라인 상태로 전환됨에 따라 상기 관계형 데이터베이스에 대응하는 키에 기초하여 상기 임시 저장된 데이터를 상기 관계형 데이터베이스 상에 저장하는 것인 문서 저장 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160092536A KR20180010442A (ko) | 2016-07-21 | 2016-07-21 | 온라인 저작 서비스가 수행되는 사용자 단말 및 이의 문서 저장 방법 |
PCT/KR2017/007569 WO2018016804A1 (ko) | 2016-07-21 | 2017-07-14 | 온라인 저작 서비스가 수행되는 사용자 단말 및 이의 문서 저장 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160092536A KR20180010442A (ko) | 2016-07-21 | 2016-07-21 | 온라인 저작 서비스가 수행되는 사용자 단말 및 이의 문서 저장 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20180010442A true KR20180010442A (ko) | 2018-01-31 |
Family
ID=60993221
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160092536A KR20180010442A (ko) | 2016-07-21 | 2016-07-21 | 온라인 저작 서비스가 수행되는 사용자 단말 및 이의 문서 저장 방법 |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR20180010442A (ko) |
WO (1) | WO2018016804A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200000643A (ko) * | 2018-06-25 | 2020-01-03 | 주식회사 한글과컴퓨터 | 크로스 브라우징을 지원하는 웹 전자 문서 편집 장치 및 이의 동작 방법 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113094292B (zh) * | 2020-01-09 | 2022-12-02 | 上海宝存信息科技有限公司 | 数据存储装置以及非挥发式存储器控制方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100440037B1 (ko) * | 2003-08-08 | 2004-07-14 | 주식회사 마크애니 | 문서보안 시스템 |
US8738706B1 (en) * | 2011-11-16 | 2014-05-27 | Google Inc. | Systems and methods for collaborative document editing |
KR20140098929A (ko) * | 2013-01-31 | 2014-08-11 | 주식회사 윌드림 | 사용자 지향적 개인 출판물 저작 도구를 이용하는 웹 기반의 온라인 전자책 출판 방법 및 웹 기반의 온라인 전자책 출판 시스템 |
KR101694980B1 (ko) * | 2014-01-20 | 2017-01-23 | 한국전자통신연구원 | 데이터 분산 처리 장치 및 방법, 그리고 스토리지 서버 |
KR101565153B1 (ko) * | 2015-07-09 | 2015-11-02 | (주)와치텍 | Json 문서를 이용한 3차원 실장도 구축 및 모니터링 시스템과 이를 위한 방법 |
-
2016
- 2016-07-21 KR KR1020160092536A patent/KR20180010442A/ko not_active Application Discontinuation
-
2017
- 2017-07-14 WO PCT/KR2017/007569 patent/WO2018016804A1/ko active Application Filing
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200000643A (ko) * | 2018-06-25 | 2020-01-03 | 주식회사 한글과컴퓨터 | 크로스 브라우징을 지원하는 웹 전자 문서 편집 장치 및 이의 동작 방법 |
Also Published As
Publication number | Publication date |
---|---|
WO2018016804A1 (ko) | 2018-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109976667B (zh) | 一种镜像管理方法、装置及*** | |
US20220408231A1 (en) | Message extension app store | |
CN107831974B (zh) | 信息分享方法、装置及存储介质 | |
US9305094B2 (en) | Real-time shared web browsing among social network contacts | |
US11662872B1 (en) | Providing content presentation elements in conjunction with a media content item | |
US20130138723A1 (en) | Dynamic browser icons | |
US20170359281A1 (en) | Polling extension application for interacting with a messaging application | |
US20170359701A1 (en) | Sticker distribution system for messaging apps | |
US20160266747A1 (en) | Providing content via multiple display devices | |
US20180088968A1 (en) | Hosting application experiences within storage service viewers | |
US20150046547A1 (en) | Optimizing e-mail for mobile devices | |
CN105900121B (zh) | 用于生成活动流的方法 | |
US20120303695A1 (en) | Device specific web services | |
JP2014519632A (ja) | アプリケーションのカスタマイズされた起動 | |
US20150365497A1 (en) | Providing access to information across multiple computing devices | |
US20130036196A1 (en) | Method and system for publishing template-based content | |
TW201924288A (zh) | 轉發聊天信息的方法、裝置和電子設備 | |
CN107707448B (zh) | 发送后允许用户更改消息内容和附件的电子消息传递平台 | |
CN114302208A (zh) | 视频的发布方法、装置、电子设备、存储介质和程序产品 | |
KR102652069B1 (ko) | 정보 지시 방법, 장치, 전자기기 및 저장매체 | |
US20140195593A1 (en) | Systems, methods and media for managing embedded content | |
KR20180010442A (ko) | 온라인 저작 서비스가 수행되는 사용자 단말 및 이의 문서 저장 방법 | |
US20130282716A1 (en) | Delivering recommendations based on user content profile | |
US9942287B2 (en) | Information processing system, terminal device, and method | |
JP5911335B2 (ja) | ソーシャル・メデイアに基づいてロケーションを推定する方法、コンピュータ・プログラム、コンピュータ。 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |