KR102531620B1 - 디지털 기반 에이전트 소스코드 삽입을 통한 서비스 제공 방법 및 서버, 및 에이전트 서버 - Google Patents

디지털 기반 에이전트 소스코드 삽입을 통한 서비스 제공 방법 및 서버, 및 에이전트 서버 Download PDF

Info

Publication number
KR102531620B1
KR102531620B1 KR1020220190162A KR20220190162A KR102531620B1 KR 102531620 B1 KR102531620 B1 KR 102531620B1 KR 1020220190162 A KR1020220190162 A KR 1020220190162A KR 20220190162 A KR20220190162 A KR 20220190162A KR 102531620 B1 KR102531620 B1 KR 102531620B1
Authority
KR
South Korea
Prior art keywords
source code
agent
code
server
service
Prior art date
Application number
KR1020220190162A
Other languages
English (en)
Inventor
황창호
정훈호
Original Assignee
주식회사 에스티씨랩
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 에스티씨랩 filed Critical 주식회사 에스티씨랩
Priority to KR1020220190162A priority Critical patent/KR102531620B1/ko
Application granted granted Critical
Publication of KR102531620B1 publication Critical patent/KR102531620B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

디지털 기반 에이전트 소스코드 삽입을 통한 서비스 제공 방법 및 서버, 및 에이전트 서버가 개시된다. 본 발명의 일 실시예에 따른 서비스 제공 방법은, 서비스 제공 서버가 코드 리포지토리(repository) 서비스의 API를 통해 에이전트 서버의 특정 웹 페이지의 접근권한을 획득하는 단계; 및 획득된 접근권한을 기반으로 에이전트 서버의 웹 페이지의 소스코드에 접근하여 에이전트 소스코드를 삽입하는 단계를 포함한다.

Description

디지털 기반 에이전트 소스코드 삽입을 통한 서비스 제공 방법 및 서버, 및 에이전트 서버{SERVICE PROVIDING METHOD AND SERVER THROUGH INSERTION OF AGENT SOURCE CODE BASED ON DIGITAL, AND AGENT SERVER}
본 개시는 웹 페이지에 에이전트 소스코드를 삽입하기 위한 방법에 관한 것이다. 보다 상세하게는, 본 개시는 디지털 기반 에이전트 소스코드 삽입을 통한 서비스 제공 방법 및 서버, 및 에이전트 서버에 관한 것이다.
콘텐츠 서비스를 제공하는 웹 서버의 동시 접속자가 증가함에 따라, 콘텐츠 서비스를 제공하는 서버측의 응답속도가 저하되거나 서비스가 중단되는 등의 상황이 종종 발생하고 있는 실정이다.
시스템은 HTML(hypertext markup language)로 구성된 웹 페이지를 제공하는 WEB, WEB으로부터 전달된 요청 메시지에 대한 응용 프로그램 서비스를 처리하는 WAS(Web Application Server) 및 쿼리문에 대한 응답으로 제공할 수 있는 데이터를 저장하는 데이터베이스로 구성될 수 있다.
상술한 동시 접속 현상을 해결하기 위해, 온 프레미스(on-premise) 기반 시스템 통합(system integrator, SI) 형태로 유량 제어 솔루션을 적용하고 있는 실정이다.
대한민국 등록특허공보 제10-1654266호 (2016. 08. 30.)
본 개시에 개시된 실시예는 클라우딩 컴퓨팅 서비스 기반으로 고객사의 소스코드에 스크립트 코드를 자동으로 추가하기 위한 디지털 기반 에이전트 소스코드 삽입을 통한 서비스 제공 방법 및 서버, 및 에이전트 서버를 제공하는데 그 목적이 있다.
본 개시가 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상술한 기술적 과제를 달성하기 위한 본 개시에 일 측면에 따른 디지털 기반 에이전트 소스코드 삽입을 통한 서비스 제공 방법은, 서비스 제공 서버에 의해 수행되는 방법에 있어서, 상기 서비스 제공 서버가 코드 리포지토리(repository) 서비스의 API를 통해 에이전트 서버의 특정 웹 페이지의 접근권한을 획득하는 단계; 및 상기 획득된 접근권한을 기반으로 상기 에이전트 서버의 상기 웹 페이지의 소스코드에 접근하여 에이전트 소스코드를 삽입하는 단계;를 포함할 수 있다.
상기 접근권한을 획득하는 단계는, 상기 서비스 제공 서버가 트래픽 유량제어 클라우딩 서비스 요청을 수신하는 단계; 및 상기 에이전트 서버로 서버 정보 및 리포지토리(repository) 접근 권한을 요청 및 수신하는 단계;를 포함할 수 있다.
상기 서비스 제공 방법은, 상기 에이전트 소스코드를 삽입하는 단계에서, 상기 웹 페이지의 기 설정된 크기의 서치영역 내에서 상기 소스코드를 체크하여 코드 수정 영역을 탐색 및 결정하고, 상기 에이전트 소스코드를 삽입할 수 있다.
상기 에이전트 소스코드를 삽입하는 단계는, 에이전트 소스코드 삽입을 위한 코드 수정 영역의 자동 검색을 실행하는 단계; 상기 웹 페이지 내 상기 소스코드 중 특정 키워드를 포함하는 코드 수정 영역을 탐색하는 단계; 및 탐색된 상기 코드 수정 영역에 상기 에이전트 소스코드를 삽입하는 단계;를 포함할 수 있다.
상기 에이전트 소스코드를 삽입하는 단계는, 상기 웹 페이지 내 상기 소스코드 중 특정 키워드를 포함하는 코드 수정 영역을 탐색하는 단계; 탐색 결과, 상기 코드 수정 영역이 복수인 경우, 상기 복수의 코드 수정 영역 각각을 확장 검토하여, 상기 에이전트 소스코드를 삽입할 때 상기 에이전트 서버의 변화량을 체크하는 단계; 및 상기 복수의 코드 수정 영역 중 상기 에이전트 서버의 변화량이 가장 작은 코드 수정 영역에 상기 에이전트 소스코드를 삽입하는 단계;를 포함할 수 있다.
상기 에이전트 소스코드를 삽입하는 단계는, 상기 웹 페이지 내에서 서비스 액션 소스코드를 포함하는 서비스 액션 영역을 탐색하는 단계; 탐색된 상기 서비스 액션 영역을 코드 수정 영역으로 결정하는 단계; 및 상기 코드 수정 영역에 해당 서비스 액션에 대한 에이전트 소스코드를 삽입하는 단계;를 포함할 수 있다.
단일 웹 페이지 상에서 상기 서비스 액션 영역이 복수인 경우, 상기 서비스 제공 방법은, 상기 에이전트 소스코드를 삽입하는 단계에서, 상기 복수의 서비스 액션 영역 각각에 해당하는 서비스 액션에 따라 매칭되는 에이전트 소스코드를 삽입할 수 있다.
상기 서비스 제공 방법은, 상기 에이전트 소스코드를 삽입하는 단계 이후에, 상기 웹 페이지 상에 상기 에이전트 소스코드를 삽입하기 전 및 후를 서로 비교 및 표시하여, 상기 에이전트 서버의 디스플레이를 통해 출력되도록 하는 단계;를 더 포함할 수 있다.
또한, 본 개시의 다른 측면에 따른 서비스 제공 서버는, 통신부; 및 상기 통신부와 통신을 수행하고, 에이전트 서버의 웹 페이지에 접근하여 에이전트 소스코드를 삽입하기 위한 프로세서;를 포함하고, 상기 프로세서는, 코드 리포지토리(repository) 서비스의 API를 통해 에이전트 서버의 특정 웹 페이지의 접근권한을 획득하고, 및 상기 획득된 접근권한을 기반으로 상기 에이전트 서버의 상기 웹 페이지의 소스코드에 접근하여 에이전트 소스코드를 삽입할 수 있다.
상기 프로세서는, 상기 에이전트 소스코드를 삽입할 때, 상기 웹 페이지의 기 설정된 크기의 서치영역 내에서 상기 소스코드를 체크하여 코드 수정 영역을 탐색 및 결정하고, 상기 에이전트 소스코드를 삽입할 수 있다.
또한, 본 개시의 다른 측면에 따른 에이전트 서버는, 통신부; 및 상기 통신부와 통신을 수행하고, 트래픽 유량제어 클라우딩 서비스를 제공받기 위한 처리를 수행하는 프로세서;를 포함하고, 상기 프로세서는, 서비스 제공 서버로 트래픽 유량제어 클라우딩 서비스 요청을 전송하고, 특정 웹 페이지의 접근권한 요청을 수신함에 따라, 상기 서비스 제공 서버로 서버 정보 및 리포지토리 접근 권한을 전송하고, 웹 페이지 상에 삽입된 에이전트 소스코드를 체크하여 컨펌하고, 및 애플리케이션을 실행하여 삽입된 에이전트 소스코드의 반영이 성공했는지 여부를 테스트할 수 있다.
이 외에도, 본 개시를 구현하기 위한 실행하기 위한 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램이 더 제공될 수 있다.
이 외에도, 본 개시를 구현하기 위한 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 컴퓨터 판독 가능한 기록 매체가 더 제공될 수 있다.
본 개시의 전술한 과제 해결 수단에 의하면, 서비스 제공자의 오프라인 상의 직접 방문 없이도 에이전트 서버의 소스코드에 필요한 스크립트 코드 또는 API 호출 코드를 포함하는 에이전트 소스코드를 삽입하는 작업을 수행할 수 있고, 이로 인해 완전한 SaaS(Software as a Service) 기반의 서비스를 제공할 수 있다는 효과를 기대할 수 있다.
또한, 본 개시의 전술한 과제 해결 수단에 의하면, 웹 페이지에 에이전트 소스코드를 삽입할 때 기 설정된 방식에 따라 정확한 영역에 에이전트 소스코드를 삽입하기 때문에, 트래픽 유량 제어 서비스가 올바르게 동작할 수 있고, 이에 더해 비대면 방식의 에이전트의 소스코드 삽입에 대한 고객의 신뢰성을 향상시킬 수 있다는 것이다.
본 개시의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 개시의 서비스 제공 서버와 에이전트 서버 간의 연결관계를 나타내는 도면
도 2는 본 개시의 서비스 제공 서버의 구성을 나타내는 블록도
도 3은 본 개시의 에이전트 서버의 구성을 나타내는 블록도
도 4는 본 개시의 서비스 제공 방법을 설명하기 위한 흐름도
도 5 및 도 6은 도 4의 일부를 상세하게 설명하기 위한 흐름도
도 7 내지 도 13은 에이전트 소스코드의 삽입 방법을 설명하기 위한 예시도
도 14 및 15는 도 4의 일부를 상세하게 설명하기 위한 흐름도
본 개시 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다. 본 개시가 실시예들의 모든 요소들을 설명하는 것은 아니며, 본 개시가 속하는 기술분야에서 일반적인 내용 또는 실시예들 간에 중복되는 내용은 생략한다. 명세서에서 사용되는 '부, 모듈, 부재, 블록'이라는 용어는 소프트웨어 또는 하드웨어로 구현될 수 있으며, 실시예들에 따라 복수의 '부, 모듈, 부재, 블록'이 하나의 구성요소로 구현되거나, 하나의 '부, 모듈, 부재, 블록'이 복수의 구성요소들을 포함하는 것도 가능하다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우 뿐 아니라, 간접적으로 연결되어 있는 경우를 포함하고, 간접적인 연결은 무선 통신망을 통해 연결되는 것을 포함한다.
또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
명세서 전체에서, 어떤 부재가 다른 부재 "상에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
제 1, 제 2 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위해 사용되는 것으로, 구성요소가 전술된 용어들에 의해 제한되는 것은 아니다.
단수의 표현은 문맥상 명백하게 예외가 있지 않는 한, 복수의 표현을 포함한다.
각 단계들에 있어 식별부호는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 실시될 수 있다.
이하 첨부된 도면들을 참고하여 본 개시의 작용 원리 및 실시예들에 대해 설명한다.
본 명세서에서 '본 개시에 따른 서비스 제공 서버'는 연산처리를 수행하여 사용자에게 결과를 제공할 수 있는 다양한 장치들이 모두 포함된다. 예를 들어, 본 개시에 따른 서비스 제공 서버는, 컴퓨터, 서버 장치 및 휴대용 단말기를 모두 포함하거나, 또는 어느 하나의 형태가 될 수 있다.
여기에서, 상기 컴퓨터는 예를 들어, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop), 태블릿 PC, 슬레이트 PC 등을 포함할 수 있다.
상기 서버 장치는 외부 장치와 통신을 수행하여 정보를 처리하는 서버로써, 애플리케이션 서버, 컴퓨팅 서버, 데이터베이스 서버, 파일 서버, 게임 서버, 메일 서버, 프록시 서버 및 웹 서버 등을 포함할 수 있다.
상기 휴대용 단말기는 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, 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) 단말, 스마트 폰(Smart Phone) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치와 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device, HMD) 등과 같은 웨어러블 장치를 포함할 수 있다.
본 개시의 트래픽 유량 제어 서비스는 앱이나 웹의 프론트엔드 부분에 심겨지는 스크립트(script)나 API(application programming interface)를 통해 동작하는 에이전트(agent) 서버 기반으로 처리될 수 있다.
브라우저를 통한 엔드 유저가 웹으로 접속하기 전에 대기하는 가상대기실이 동작하는 상황이 되면, 트래픽 유량 제어 서비스를 제공하는 서비스 제공 서버와 에이전트 서버가 통신하여 대기정보를 송수신할 수 있다.
일반적으로, 트래픽 유량 제어 서비스 제공을 위해, 온프레미스(on-premise) 중심의 SI(system integrator)향 셋팅 환경에서 개발자가 직접 투입되어 고객사(에이전트 서버)의 소스코드에 관련 스크립트를 추가하는 형태로 진행되었다. 후술하는, 본 개시는 클라우드 SaaS 기반으로 트래픽 유량 제어 서비스 제공을 위한 스크립트를 생성하고, 이를 에이전트 서버의 소스코드 내 필요 위치에 비대면 형태로 삽입하는 경우를 예로 들어 설명하기로 한다.
도 1은 본 개시의 서비스 제공 서버와 에이전트 서버 간의 연결관계를 나타내는 도면이다.
도 1을 참고하면, 서비스 제공 서버(100)는 서비스를 요청하는 고객사(본 개시의 에이전트 서버(200))로 트래픽 유량제어 클라우딩 서비스를 제공하는 구성일 수 있다. 이를 위해, 서비스 제공 서버(100)는 에이전트 서버(200)의 특정 웹 페이지에 접근하여 에이전트 소스코드를 삽입함에 따라 웹 페이지의 소스코드를 수정할 수 있다. 상기 에이전트 소스코드는 트래픽 유량제어 클라우딩 서비스를 실행하기 위한 코드를 의미할 수 있다.
에이전트 서버(200)는 뮤지컬 및 콘서트 등의 관람을 위한 티켓팅 서비스, 열차 티켓팅 서비스, 의류 및 식품 등의 물품 구매를 위한 쇼핑 서비스, 대학교 수강 신청 서비스 등의 다양한 서비스를 제공하기 위한 서버일 수 있다.
에이전트 서버(200)는 서비스 제공 서버(100)로부터 트래픽 유량제어 클라우딩 서비스를 제공받을 수 있도록 관련 API(application programming interface)를 포함할 수 있다.
도 2는 본 개시의 서비스 제공 서버의 구성을 나타내는 블록도이다.
도 2를 참고하면, 서비스 제공 서버(100)는 프로세서(110), 메모리(130) 및 통신부(150)를 포함한다. 도 2에 도시된 구성요소들은 본 개시에 따른 서비스 제공 서버(100)를 구현하는데 있어서 필수적인 것은 아니어서, 본 명세서 상에서 설명되는 서비스 제공 서버(100)는 위에서 열거된 구성요소들 보다 많거나, 또는 적은 구성요소들을 가질 수 있다.
프로세서(110)는 통신부(150)와 통신을 수행하고, 에이전트 서버(200)의 웹 페이지에 접근하여 에이전트 소스코드를 삽입하기 위한 구성일 수 있다. 상기 에이전트 소스코드는, 스크립트 코드 또는 API 호출 코드일 수 있다.
구체적으로, 프로세서(110)는 에이전트 서버(200)로부터 SaaS와 같은 클라우딩 서비스 요청을 수신할 수 있다. 본 개시의 클라우딩 서비스는 트래픽 유량제어 클라우딩 서비스일 수 있다.
상술한 SaaS(Software as a Service)는 클라우드 기반의 소프트웨어 제공 모델로, 클라우드 제공 업체(예를 들어, 서비스 제공 서버(100))가 클라우드 애플리케이션 소프트웨어를 개발 및 유지 관리할 수 있다. 또한, 자동 소프트웨어 업데이트를 제공할 수 있다.
프로세서(110)는 코드 리포지토리(repository) 서비스의 API를 통해 에이전트 서버(200)의 특정 웹 페이지의 접근권한을 획득할 수 있다. 이때, 특정 웹 페이지는 트래픽 유량제어 클라우딩 서비스를 제공하기 위해 에이전트 소스코드의 삽입 위치를 탐색하기 위한 페이지를 의미할 수 있다.
프로세서(110)는 에이전트 소스코드를 삽입할 때, 웹 페이지의 기 설정된 크기의 서치영역(윈도우) 내에서 소스코드를 체크하여 코드 수정 영역을 탐색 및 결정하고, 에이전트 소스코드를 삽입할 수 있다.
이때, 코드 수정 영역은 웹 페이지의 소스코드 중 에이전트 소스코드를 삽입할 영역을 의미하는 것으로 정의하기로 한다.
프로세서(110)는 상기 획득된 접근권한을 기반으로 에이전트 서버(200)의 웹 페이지의 소스코드에 접근하여 에이전트 소스코드를 삽입할 수 있다.
상술한 프로세서(110)에서의 에이전트 소스코드 삽입 기술은 후술하는 도 4 내지 도 15를 참고하여 보다 상세히 설명하기로 한다.
메모리(130)는 서비스 제공 방법을 제공하기 위한 컴퓨터 프로그램을 저장할 수 있으며, 저장된 컴퓨터 프로그램은 프로세서(110)에 의해 판독되어 구동될 수 있다. 메모리(130)는 프로세서(110)가 생성하거나 결정한 임의의 형태의 정보 및 통신부(150)가 수신한 임의의 형태의 정보를 저장할 수 있다.
메모리(130)는 서비스 제공 서버(100)의 다양한 기능을 지원하는 데이터와, 프로세서(110)의 동작을 위한 프로그램을 저장할 수 있고, 입/출력되는 데이터들을 저장할 있고, 서비스 제공 서버(100)에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), 서비스 제공 서버(100)의 동작을 위한 데이터들, 명령어들을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는, 무선 통신을 통해 외부 서버로부터 다운로드 될 수 있다.
이러한, 메모리(130)는 플래시 메모리 타입(Flash memory type), 하드디스크 타입(Hard disk type), SSD 타입(Solid State Disk type), SDD 타입(Silicon Disk Drive type), 멀티미디어 카드 마이크로 타입(Multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(Random access memory; RAM), SRAM(Static random access memory), 롬(Read-only memory; ROM), EEPROM(Electrically erasable programmable read-only memory), PROM(Programmable read-only memory), 자기 메모리, 자기 디스크 및 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 또한, 메모리는 본 장치와는 분리되어 있으나, 유선 또는 무선으로 연결된 데이터베이스가 될 수도 있다.
통신부(150)는 외부 장치와 통신을 가능하게 하는 하나 이상의 구성 요소를 포함할 수 있으며, 예를 들어, 방송 수신 모듈, 유선통신 모듈, 무선통신 모듈, 근거리 통신 모듈, 위치정보 모듈 중 적어도 하나를 포함할 수 있다.
도시하지 않았지만, 본 개시의 서비스 제공 서버(100)는 출력부 및 입력부를 더 포함할 수도 있다.
출력부는 에이전트 소스코드의 삽입 결과를 비롯하여 각종 정보 등을 제공하기 위한 사용자 인터페이스(UI, user interface)를 표시할 수 있다. 출력부는 프로세서(110)가 생성하거나 결정한 임의의 형태의 정보 및 통신부(150)가 수신한 임의의 형태의 정보를 출력할 수 있다.
출력부는 액정 디스플레이(LCD: liquid crystal display), 박막 트랜지스터 액정 디스플레이(TFT LCD: thin film transistor- liquid crystal display), 유기 발광 다이오드(OLED: organic light-emitting diode), 플렉시블 디스플레이(Flexible display), 3차원 디스플레이(3D display) 중에서 적어도 하나를 포함할 수 있다. 이들 중 일부 디스플레이 모듈은, 그를 통해 외부를 볼 수 있도록 투명형 또는 광 투과형으로 구성될 수 있다. 이는 투명 디스플레이 모듈이라 지칭될 수 있는데, 상기 투명 디스플레이 모듈의 대표적 인 예로는 TOLED(Transparent OLED) 등이 있다.
입력부는 사용자에 의해서 입력된 정보를 수신할 수 있다. 입력부는 사용자에 의해서 입력된 정보를 수신하기 위한 사용자 인터페이스 상의 키 및/또는 버튼들, 또는 물리적인 키 및/또는 버튼들을 구비할 수 있다. 입력부를 통한 사용 자 입력에 따라 본 개시의 실시예들에 따른 디스플레이를 제어하기 위한 컴퓨터 프로그램이 실행될 수 있다.
도 3은 본 개시의 에이전트 서버의 구성을 나타내는 블록도이다.
도 3을 참고하면, 에이전트 서버(200)는 프로세서(210), 메모리(230) 및 통신부(250)를 포함한다. 도 3에 도시된 구성요소들은 본 개시에 따른 에이전트 서버(200)를 구현하는데 있어서 필수적인 것은 아니어서, 본 명세서 상에서 설명되는 에이전트 서버(200)는 위에서 열거된 구성요소들 보다 많거나, 또는 적은 구성요소들을 가질 수 있다.
프로세서(210)는 통신부(250)와 통신을 수행하고, 트래픽 유량제어 클라우딩 서비스를 제공받기 위한 처리를 수행할 수 있다.
구체적으로, 프로세서(210)는 서비스 제공 서버(100)로 트래픽 유량제어 클라우딩 서비스 요청을 전송할 수 있다.
프로세서(210)는 특정 웹 페이지의 접근권환 요청을 수신함에 따라, 서비스 제공 서버(100)로 서버 정보 및 리포지토리 접근 권한을 전송할 수 있다.
프로세서(210)는 웹 페이지 상에 삽입된 에이전트 소스코드를 체크하여 컨펌할 수 있다.
구체적으로, 프로세서(210)는 에이전트 소스코드가 웹 페이지에 반영되기 전에 체크하는 절차를 수행하고, 이상이 없는 경우 컨펌 절차를 수행하여, 에이전트 소스코드가 웹 페이지에 반영될 수 있도록 하는 것이다.
프로세서(210)는 애플리케이션을 실행하여 삽입된 에이전트 소스코드의 반영이 성공했는지 여부를 테스트할 수 있다. 테스트가 성공한 경우, 프로세서(210)는 테스트 성공 결과를 서비스 제공 서버(100)로 전송할 수 있다.
이후, 테스트가 성공한 경우, 프로세서(210)는 서비스 제공 서버(100)와의 통신을 통해 에이전트 소스코드 삽입을 비롯한 서비스에 대한 과금 처리를 수행할 수 있다.
도 4는 본 개시의 서비스 제공 방법을 설명하기 위한 흐름도이다.
이하에서는, 에이전트 소스코드의 삽입 방법을 설명하기 위한 예시도인 도 7 내지 도 9를 참고하여 설명하기로 한다.
먼저, 서비스 제공 서버(100)의 프로세스(110)는 코드 리포지토리(repository) 서비스의 API를 통해 에이전트 서버의 특정 웹 페이지의 접근권한을 획득할 수 있다.
구체적으로, 프로세서(110)는 에이전트 서버(200)로부터 전송되는 트래픽 유량제어 클라우딩 서비스 요청을 수신할 수 있다(1100).
프로세서(110)는 에이전트 서버(200)로 서버 정보 및 리포지토리(repository) 접근 권한을 요청 및 수신할 수 있다(1200). 이때, 서버 정보는 에이전트 서버(200)의 웹 페이지에 에이전트 소스코드를 삽입하기 위해 요구되는 서버 관련 정보를 의미할 수 있다. 상기 리포지토리 접근 권한은 에이전트 소스코드 삽입을 위해 웹 페이지에 접근할 수 있는 권한을 의미할 수 있으며, 이는 웹 페이지 내 소스코드를 수정하는 권한 역시 포함할 수 있다.
상술한 에이전트 서버(200)는 뮤지컬 및 콘서트 등의 관람을 위한 티켓팅 서비스, 열차 티켓팅 서비스, 의류 및 식품 등의 물품 구매를 위한 쇼핑 서비스, 대학교 수강 신청 서비스 등의 다양한 서비스를 제공하기 위한 서버일 수 있다.
다음, 프로세서(110)는 획득된 접근권한을 기반으로 에이전트 서버(200)의 웹 페이지의 소스코드에 접근하여 에이전트 소스코드를 삽입할 수 있다(1300). 상기 에이전트 소스코드는 트래픽 유량제어 클라우딩 서비스를 실행하기 위한 코드를 의미할 수 있다.
구체적으로, 프로세서(110)는 웹 페이지의 기 설정된 크기의 서치영역 내에서 소스코드를 체크하여 코드 수정 영역을 탐색 및 결정하고, 에이전트 소스코드를 삽입할 수 있다.
상기 기 설정된 크기의 서치영역은 웹 페이지 중 코드 수정 영역을 탐색할 영역을 의미하는 것으로, 운용자에 의해서 임의로 설정되거나, 또는 특정 소스코드 단위로 구분되어 설정되거나, 또는 웹 페이지 단위(예를 들어, 하나의 웹 페이지 단위)로 설정될 수 있다.
이때, 코드 수정 영역은 웹 페이지의 소스코드 중 에이전트 소스코드를 삽입할 영역을 의미하는 것으로 정의하기로 한다.
도 7 및 도 8을 참고하면, 기 설정된 크기의 서치영역(S) 내에서 소스코드를 체크하여 에이전트 소스코드를 삽입할 코드 수정 영역을 결정할 수 있다. 프로세서(110)는 결정된 코드 수정 영역에 에이전트 소스코드(A)를 삽입할 수 있다.
다음, 도 9를 참고하면, 프로세서(110)는 웹 페이지 상에 에이전트 소스코드를 삽입하기 전 및 후를 서로 비교 및 표시하여, 에이전트 서버(200)의 디스플레이를 통해 출력되도록 할 수 있다. 즉, 도 9와 같이, 에이전트 소스코드 A가 삽입된 부분을 수정 전 웹 페이지의 소스코드에 마크업(marked-up) 방식으로 표시할 수 있다.
이후, 에이전트 서버(200)는 에이전트 소스코드 삽입 결과를 체크하고 컨펌할 수 있다(1400). 구체적으로, 에이전트 서버(200)는 에이전트 소스코드가 웹 페이지에 반영되기 전에 체크하는 절차를 수행하고, 이상이 없는 경우 컨펌 절차를 수행하여, 에이전트 소스코드가 웹 페이지에 반영될 수 있도록 하는 것이다.
에이전트 서버(200)는 애플리케이션을 실행하여 삽입된 에이전트 소스코드의 반영이 성공했는지 여부를 테스트할 수 있다(1500). 도시하지 않았지만, 테스트가 성공한 경우, 에이전트 서버(200)는 테스트 성공 결과를 프로세서(110)로 전송할 수 있다.
이후, 테스트가 성공한 경우, 프로세서(110)는 에이전트 서버(200)와의 통신을 통해 에이전트 소스코드 삽입을 비롯한 서비스에 대한 과금 처리를 수행할 수 있다(1600).
도 5는 도 4의 일부를 상세하게 설명하기 위한 흐름도로서, 도 4의 에이전트 소스코드를 삽입하는 단계(1300)에서, 코드 수정 영역을 자동 또는 수동으로 검색하는 경우를 예로 들어 설명하기로 한다.
이하에서는, 에이전트 소스코드의 삽입 방법을 설명하기 위한 예시도인 도 10을 참조하여 설명하기로 한다.
먼저, 프로세서(110)는 에이전트 소스코드 삽입을 위한 코드 수정 영역의 자동 검색을 실행할 수 있다(2100). 이때, 코드 수정 영역의 자동 검색 여부는 사전에 설정될 수 있다.
다음, 프로세서(110)는 웹 페이지 내 소스코드 중 특정 키워드를 포함하는 코드 수정 영역을 탐색할 수 있다(2200).
도 10을 참조하면, 프로세서(110)는 웹 페이지의 소스코드 중 특정 키워드인 K1과 일치하는 영역을 검색할 수 있다. 이때, 키워드는 특정 문자 또는 코드일 수 있다.
일 예로, 에이전트 소스코드를 프론트(front)-엔드(end)에 적용하는 경우, 에이전트 서버(200)가 SPA(single page application) 프레임워크를 사용하면, 화면을 감싸는 index.html이 존재할 수 있다. 이러한 경우, 키워드는 index.html이 될 수 있는 것이다. 프로세서(110)는 키워드 index.html로 검색된 코드 수정 영역에 <script> ~~~~~~~~ </scrip>와 같은 에이전트 소스코드(예를 들어, 자비스크립트 코드)를 삽입할 수 있다. 상기 에이전트 소스코드는 서비스 제공 서버(100)의 API로, 이는 GitHub bot, 즉, 코드 삽입 자동화 봇 형태로 구현될 수 있다.
본 개시의 코드 삽입 자동화 봇은 프로세서(110)의 역할을 수행할 수 있다. 깃허브(GitHub)의 코드 삽입 자동화 봇은 클라우드 서비스 요청을 수신한 후 깃허브의 리포지토리 권한을 수신하면, 웹 페이지 내 코드 수정 영역의 위치를 검색한 후 에이전트 소스코드를 삽입할 수 있다.
다음, 특정 키워드와 일치하는 코드 수정 영역의 탐색이 성공한 경우, 프로세서(110)는 탐색된 코드 수정 영역에 에이전트 소스코드(도 10의 A1)를 삽입할 수 있다(2300, 2400).
만약, 2300 단계에서, 특정 키워드와 일치하는 코드 수정 영역의 탐색이 실패한 경우, 프로세서(110)는 후술하는 2500 단계의 수동 검색 절차를 수행하거나, 또는 기 설정된 매뉴얼에 따라 처리할 수 있다.
한편, 코드 수정 영역의 자동 검색이 아닌 수동 검색이 사전 설정된 경우, 프로세서(110)는 코드 수정 영역을 수동으로 검색할 수 있도록 처리할 수 있다(2500).
구체적으로, 프로세서(110)는 출력부를 통해 화면 상에 코드 수정 영역을 검색할 에이전트 서버(200)의 특정 웹 페이지를 출력하여, 운용자에 의한 코드 수정 영역의 검색 및 결정이 이루어질 수 있도록 할 수 있다.
도 6은 도 4의 일부를 상세하게 설명하기 위한 흐름도로서, 도 4의 에이전트 소스코드를 삽입하는 단계(1300)에서, 코드 수정 영역이 복수인 경우를 예로 들어 설명하기로 한다.
이하에서는, 에이전트 소스코드의 삽입 방법을 설명하기 위한 예시도인 도 11 내지 도 13을 참조하여 설명하기로 한다.
먼저, 프로세서(110)는 웹 페이지 내 소스코드 중 특정 키워드를 포함하는 코드 수정 영역을 탐색할 수 있다(3100).
탐색 결과, 코드 수정 영역이 복수인 경우, 프로세서(110)는 복수의 코드 수정 영역 각각을 확장 검토하여, 에이전트 소스코드를 삽입할 때 에이전트 서버의 변화량을 체크할 수 있다(3200, 3300, 3400).
이때, 코드 수정 영역이 복수인 것은 특정 키워드와 매칭되는 웹 페이지 내 영역이 다수인 경우일 수 있다.
도 11을 참고하면, 코드 수정 영역이 S1과 S2로 탐색된 경우, 프로세서(110)는 도 12와 같이 탐색된 코드 수정 영역 S1 및 S2를 기준으로 검토 영역을 확장(S1-1, S2-1)하여 재 검토를 통해, 에이전트 소스코드를 삽입할 경우의 에이전트 서버의 변화량을 체크하는 것이다. 이는, 트래픽 유량제어 클라우딩 서비스를 제공하되, 웹 페이지 내 소스코드의 변화를 최대한 축소하여 에이전트 서버에 영향을 덜 끼치기 위한 것이다. 즉, 에이전트 서버에 적은 영향을 주는 부분에 에이전트 소스코드가 삽입되도록 하는 것이다.
프로세서(110)는 복수의 코드 수정 영역 중 에이전트 서버의 변화량이 가장 작은 코드 수정 영역에 에이전트 소스코드를 삽입할 수 있다(3500).
도 13을 참고하면, 프로세서(110)는 에이전트 서버의 변화량이 작은 S1의 코드 수정 영역에 에이전트 소스코드 A1을 삽입할 수 있다.
한편, 3200 단계에서, 웹 페이지 내 소스코드 중 특정 키워드 탐색이 실패한 경우, 프로세서(110)는 기 설정된 매뉴얼에 따라 처리할 수 있다(3600). 이때, 기 설정된 매뉴얼은 미리 결정된 삽입 위치에 에이전트 소스코드를 삽입하거나, 또는 코드 수정 영역을 수동으로 검색하도록 하는 것을 포함할 수 있다.
다른 한편, 3300 단계에서, 코드 수정 영역이 단수인 경우, 프로세서(110)는 탐색된 코드 수정 영역에 에이전트 소스코드를 삽입할 수 있다(3700).
도 14는 도 4의 일부를 상세하게 설명하기 위한 흐름도로서, 도 4의 에이전트 소스코드를 삽입하는 단계(1300)에서, 서비스 액션 영역에 에이전트 소스코드를 삽입하는 경우를 예로 들어 설명하기로 한다.
먼저, 프로세서(110)는 웹 페이지 내에서 서비스 액션 소스코드를 포함하는 서비스 액션 영역을 탐색할 수 있다(4100).
이때, 서비스 액션은 애플케이션을 통해 제공되는 서비스 항목을 의미할 수 있다. 예를 들어, 애플리케이션의 서비스 액션은 연말, 기념일 및 크리스마스와 같은 이벤트, 수강신청, 연극 및 뮤지컬과 같은 티겟팅, 캠페인 등과 같은 서비스 항목을 실행하기 위한 버튼을 포함할 수 있다. 본 개시의 프로세서(110)는 에이전트 서버(200)에서 제공되는 서비스 중 트래픽량이 급증할 수 있는 서비스 항목의 실행을 위한 액션(버튼)에 에이전트 소스코드가 삽입되어 트래픽 유량제어가 이루어질 수 있도록 하는 것이다.
다음, 프로세서(110)는 탐색된 서비스 액션 영역을 코드 수정 영역으로 결정할 수 있다(4200).
다음, 프로세서(110)는 코드 수정 영역에 해당 서비스 액션에 대한 에이전트 소스코드를 삽입할 수 있다.
예를 들어, 프로세서(110)는 다음과 같이 제어가 필요한 서비스 액션에 에이전트 소스코드를 삽입할 수 있다.
Figure 112022142276561-pat00001
한편, 단일 웹 페이지 상에서 상기 서비스 액션 영역이 복수인 경우, 4300 단계에서, 프로세서(110)는 복수의 서비스 액션 영역 각각에 해당하는 서비스 액션에 따라 매칭되는 에이전트 소스코드를 삽입할 수 있다.
도 15는 도 4의 일부를 상세하게 설명하기 위한 흐름도로서, 도 4의 에이전트 소스코드를 삽입하는 단계(1300)에서, 서비스 액션 영역에 에이전트 소스코드를 삽입하는 경우를 예로 들어 설명하기로 한다.
프로세서(110)는 웹 페이지 내 소스코드로부터 에이전트 소스코드 삽입용 공통변수를 탐색할 수 있다(5100). 이를 위해, 에이전트 서버(200)는 사전에 웹 페이지 내 소스코드에 에이전트 소스코드 삽입용 공통변수를 포함할 수 있다. 이때, 에이전트 소스코드 삽입용 공통변수는 에이전트 소스코드가 추가될 부분을 인식하기 위한 식별자로 정의할 수 있다. 예를 들어, 에이전트 소스코드 삽입용 공통변수는 EL(expression language)일 수 있다. 이때, EL 구문은 ${…} 내에 문자, 연산자 등의 표현식을 포함시켜 표현할 수 있다.
에이전트 서버(200)와 서비스 제공 서버(100)는 서로 간에 에이전트 소스코드 삽입용 공통변수를 공유하여 관리할 수 있다.
다음, 프로세서(110)는 탐색된 에이전트 소스코드 삽입용 공통변수를 에이전트 소스코드로 치환할 수 있다(5200).
한편, 에이전트 소스코드 삽입용 공통변수는 삽입될 에이전트 소스코드 별로 서로 다른 변수로 설정될 수 있다.
다른 한편, 에이전트 소스코드 삽입용 공통변수를 이용한 에이전트 소스코드의 삽입 방법은, 프로세서(110)가 기 삽입된 에이전트 소스코드의 구 버전을 신규 버전으로 업그레이드할 때도 활용될 수 있다. 이러한 경우, 에이전트 소스코드 삽입용 공통변수는 구 버전의 에이전트 소스코드를 포함할 수 있다. 이때, 에이전트 소스코드 삽입용 공통변수는 에이전트 소스코드의 구 버전 정보 및 구 버전을 포함하는 에이전트 소스코드 전체를 비롯하여 구 버전을 식별할 수 있는 정보를 포함할 수 있다.
프로세서(110)는 에이전트 소스코드 삽입용 공통변수를 이용하여 에이전트 소스코드를 치환할 때, 웹 페이지 내 소스코드 중 치환될 영역 기준을 사전에 설정할 수 있다. 구체적으로, 프로세서(110)는 에이전트 소스코드 삽입용 공통변수와 에이전트 소스코드 전체를 치환하거나, 또는 에이전트 소스코드 삽입용 공통변수가 포함된 기 설정된 영역과 에이전트 소스코드 전체를 치환하도록 치환될 영역을 사전에 설정할 수 있다.
예를 들어, 에이전트 소스코드 삽입용 공통변수가 구 버전의 에이전트 소스코드인 경우, 프로세서(110)는 미리 결정된 치환될 영역 기준에 따라, 구 버전을 나타내는 식별 코드를 비롯하여 에이전트 소스코드 전체를 신규 버전의 에이전트 소스코드와 치환할 수 있는 것이다.
상술한, 도 4, 5, 6, 14 및 15 등의 에이전트 소스코드 삽입 방법은 단일로 적용하는 것에 한정되지 않고, 다수의 방법이 복합적으로 적용되는 것 역시 가능할 수 있다. 예를 들어, 에이전트 소스코드를 삽입할 때, 특정 키워드, 에이전트 소스코드 삽입을 통한 에이전트 서버의 변화량, 서비스 액션 영역, 공통변수를 기초한 에이전트 소스코드로의 치환 및 이들의 조합을 통해 코드 수정 영역 탐색 및 에이전트 소스코드의 삽입 절차를 수행할 수 있다.
한편, 전술한 본 개시에 따른 방법은, 하드웨어인 서버와 결합되어 실행되기 위해 프로그램(또는 애플리케이션)으로 구현되어 매체에 저장될 수 있다.
개시된 실시예들은 컴퓨터에 의해 실행 가능한 명령어를 저장하는 기록매체의 형태로 구현될 수 있다. 명령어는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 프로그램 모듈을 생성하여 개시된 실시예들의 동작을 수행할 수 있다. 기록매체는 컴퓨터로 읽을 수 있는 기록매체로 구현될 수 있다.
컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터에 의하여 해독될 수 있는 명령어가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다.
이상에서와 같이 첨부된 도면을 참조하여 개시된 실시예들을 설명하였다. 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자는 본 개시의 기술적 사상이나 필수적인 특징을 변경하지 않고도, 개시된 실시예들과 다른 형태로 본 개시가 실시될 수 있음을 이해할 것이다. 개시된 실시예들은 예시적인 것이며, 한정적으로 해석되어서는 안 된다.
100: 서비스 제공 서버
110, 210: 프로세서
130, 230: 메모리
150, 250: 통신부
200: 에이전트 서버

Claims (12)

  1. 통신부; 및
    상기 통신부와 통신을 수행하고, 에이전트 서버의 웹 페이지에 접근하여 에이전트 소스코드를 삽입하기 위한 프로세서;를 포함하고,
    상기 프로세서는 코드 리포지토리(repository) 서비스의 API를 통해 상기 에이전트 서버의 특정 웹 페이지의 접근권한을 획득하고, 상기 획득된 접근권한을 기반으로 상기 에이전트 서버의 상기 웹 페이지의 소스코드에 접근하여 에이전트 소스코드를 삽입하고, 상기 에이전트 소스코드를 삽입할 때 상기 웹 페이지의 기 설정된 크기의 서치영역 내에서 상기 소스코드를 체크하여 탐색 및 결정된 코드 수정 영역에 상기 에이전트 소스코드를 삽입하되, 상기 웹 페이지 내 상기 소스코드 중 특정 키워드를 포함한 복수의 코드 수정 영역이 탐색된 경우, 탐색된 상기 복수의 코드 수정 영역 각각을 확장 검토하여 상기 에이전트 소스코드를 삽입할 때의 상기 에이전트 서버의 변화량을 체크하고, 상기 복수의 코드 수정 영역 중 상기 에이전트 서버의 변화량이 가장 작은 코드 수정 영역에 상기 에이전트 소스코드를 삽입하는, 서비스 제공 서버.
  2. 제1항에 있어서,
    상기 프로세서는,
    상기 접근권한을 획득할 때,
    상기 서비스 제공 서버가 트래픽 유량제어 클라우딩 서비스 요청을 수신하고, 및
    상기 에이전트 서버로 서버 정보 및 리포지토리(repository) 접근 권한을 요청 및 수신하는, 서비스 제공 서버.
  3. 삭제
  4. 제1항에 있어서,
    상기 프로세서는,
    상기 에이전트 소스코드를 삽입할 때,
    상기 웹 페이지 내 상기 소스코드 중 특정 키워드를 포함하는 상기 코드 수정 영역의 자동 검색을 수행하고, 및
    자동 검색된 상기 코드 수정 영역에 상기 에이전트 소스코드를 삽입하는, 서비스 제공 서버.
  5. 삭제
  6. 제1항에 있어서,
    상기 프로세서는,
    상기 에이전트 소스코드를 삽입할 때,
    상기 웹 페이지 내에서 서비스 액션 소스코드를 포함하는 서비스 액션 영역을 탐색하고,
    탐색된 상기 서비스 액션 영역을 상기 코드 수정 영역으로 결정하고, 및
    상기 코드 수정 영역에 해당 서비스 액션에 대한 에이전트 소스코드를 삽입하는, 서비스 제공 서버.
  7. 제6항에 있어서,
    단일 웹 페이지 상에서 상기 서비스 액션 영역이 복수인 경우,
    상기 프로세서는,
    상기 에이전트 소스코드를 삽입할 때,
    상기 복수의 서비스 액션 영역 각각에 해당하는 서비스 액션에 따라 매칭되는 에이전트 소스코드를 삽입하는, 서비스 제공 서버.
  8. 제1항에 있어서,
    상기 프로세서는,
    상기 에이전트 소스코드를 삽입한 이후에,
    상기 웹 페이지 상에 상기 에이전트 소스코드를 삽입하기 전 및 후를 서로 비교 및 표시하여, 상기 에이전트 서버의 디스플레이를 통해 출력되도록 하는, 서비스 제공 서버.
  9. 통신부; 및
    상기 통신부와 통신을 수행하고, 트래픽 유량제어 클라우딩 서비스를 제공받기 위한 처리를 수행하는 프로세서;를 포함하고,
    상기 프로세서는 서비스 제공 서버로 상기 서비스의 요청을 전송하고, 특정 웹 페이지의 접근권한 요청을 수신함에 따라 상기 서비스 제공 서버로 서버 정보 및 리포지토리 접근 권한을 전송하고, 웹 페이지 상에 삽입된 에이전트 소스코드를 체크하고,
    상기 에이전트 소스코드는 상기 서비스 제공 서버에 의해 탐색된 코드 수정 영역에 삽입되되, 상기 코드 수정 영역은 상기 웹 페이지의 기 설정된 크기의 서치영역 내에서 체크된 소스코드를 기초로 탐색 및 결정되고,
    상기 웹 페이지 내 상기 소스코드 중 특정 키워드를 포함한 복수의 코드 수정 영역이 상기 서비스 제공 서버에 의해 탐색된 경우, 탐색된 상기 복수의 코드 수정 영역 각각은 상기 서비스 제공 서버에 의한 확장 검토를 통해 상기 에이전트 소스코드를 삽입할 때의 변화량이 체크되고, 상기 복수의 코드 수정 영역 중 상기 변화량이 가장 작은 코드 수정 영역에 상기 에이전트 소스코드가 삽입되는, 에이전트 서버.
  10. 서비스 제공 서버에 의해 수행되는 방법에 있어서,
    상기 서비스 제공 서버가 코드 리포지토리(repository) 서비스의 API를 통해 에이전트 서버의 특정 웹 페이지의 접근권한을 획득하는 단계; 및
    상기 획득된 접근권한을 기반으로 상기 에이전트 서버의 상기 웹 페이지의 소스코드에 접근하여 에이전트 소스코드를 삽입하는 단계;를 포함하고,
    상기 서비스 제공 서버는, 상기 에이전트 소스코드를 삽입할 때 상기 웹 페이지의 기 설정된 크기의 서치영역 내에서 상기 소스코드를 체크하여 탐색 및 결정된 코드 수정 영역에 상기 에이전트 소스코드를 삽입하되, 상기 웹 페이지 내 상기 소스코드 중 특정 키워드를 포함한 복수의 코드 수정 영역이 탐색된 경우, 탐색된 상기 복수의 코드 수정 영역 각각을 확장 검토하여 상기 에이전트 소스코드를 삽입할 때의 상기 에이전트 서버의 변화량을 체크하고, 상기 복수의 코드 수정 영역 중 상기 에이전트 서버의 변화량이 가장 작은 코드 수정 영역에 상기 에이전트 소스코드를 삽입하는, 디지털 기반 에이전트 소스코드 삽입을 통한 서비스 제공 방법.
  11. 삭제
  12. 컴퓨터와 결합되어, 제10항의 서비스 제공 방법을 실행시키기 위한 프로그램이 저장된 컴퓨터 판독 가능한 기록매체.
KR1020220190162A 2022-12-30 2022-12-30 디지털 기반 에이전트 소스코드 삽입을 통한 서비스 제공 방법 및 서버, 및 에이전트 서버 KR102531620B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220190162A KR102531620B1 (ko) 2022-12-30 2022-12-30 디지털 기반 에이전트 소스코드 삽입을 통한 서비스 제공 방법 및 서버, 및 에이전트 서버

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220190162A KR102531620B1 (ko) 2022-12-30 2022-12-30 디지털 기반 에이전트 소스코드 삽입을 통한 서비스 제공 방법 및 서버, 및 에이전트 서버

Publications (1)

Publication Number Publication Date
KR102531620B1 true KR102531620B1 (ko) 2023-05-11

Family

ID=86379002

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220190162A KR102531620B1 (ko) 2022-12-30 2022-12-30 디지털 기반 에이전트 소스코드 삽입을 통한 서비스 제공 방법 및 서버, 및 에이전트 서버

Country Status (1)

Country Link
KR (1) KR102531620B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120051070A (ko) * 2009-08-13 2012-05-21 구글 인코포레이티드 공유형 서버측 매크로들
KR20140115006A (ko) * 2013-03-20 2014-09-30 주식회사 넥스다임 애플리케이션 개발 환경 제공 장치
KR101654266B1 (ko) 2014-12-18 2016-09-05 (주)에임투지 웹 접속 관리 시스템을 통한 모니터링 기능을 제공하는 모니터링 장치
JP2021516024A (ja) * 2018-03-06 2021-06-24 アフィリアス リミテッド 通信ネットワークを介したネットワークトラフィックのトレーサビリティの決定

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120051070A (ko) * 2009-08-13 2012-05-21 구글 인코포레이티드 공유형 서버측 매크로들
KR20140115006A (ko) * 2013-03-20 2014-09-30 주식회사 넥스다임 애플리케이션 개발 환경 제공 장치
KR101654266B1 (ko) 2014-12-18 2016-09-05 (주)에임투지 웹 접속 관리 시스템을 통한 모니터링 기능을 제공하는 모니터링 장치
JP2021516024A (ja) * 2018-03-06 2021-06-24 アフィリアス リミテッド 通信ネットワークを介したネットワークトラフィックのトレーサビリティの決定

Similar Documents

Publication Publication Date Title
US10248401B1 (en) Multiplatform and multichannel distribution of web applications across devices
US10503744B2 (en) Dialog system for transitioning between state diagrams
EP3324306A1 (en) Cognitive enterprise system
US10423691B1 (en) Rule and filter-based deeplinking between applications
US10911565B2 (en) Method, device and system for associating a service account
EP3273362A1 (en) Webpage access method, apparatus, device and non-volatile computer storage medium
US20180173714A1 (en) Search results integrated with interactive conversation service interface
US11275894B2 (en) Cognitive enterprise system
US11455360B2 (en) Inline editing field for nested website settings
US20160291808A1 (en) Dynamically created contextual information via a browser extension
US11726977B2 (en) System and methods for creating and managing dynamic elements
US11775290B2 (en) Detection of API backward compatibility across software versions
KR102531620B1 (ko) 디지털 기반 에이전트 소스코드 삽입을 통한 서비스 제공 방법 및 서버, 및 에이전트 서버
KR20180041191A (ko) 페이지 구축방법, 장치, 디바이스 및 비발휘성 컴퓨터 기억매체
US20200372113A1 (en) Log file meaning and syntax generation system
US10614145B2 (en) Presenting content on a webpage in a desired format
US11868907B2 (en) Updating chatbot workspaces
KR102113009B1 (ko) 실시간 키보드 입력 정보를 활용한 키워드 광고 시스템
KR102519006B1 (ko) 디지털 기반 로그 데이터의 조회 속도 향상을 위한 로그 데이터 관리 방법 및 서버
KR102519005B1 (ko) 데이터베이스 상태를 이용한 디지털 기반 데이터 송수신 제어 서버, 시스템 및 방법
KR102519068B1 (ko) 디지털 서비스 기반 ab 테스트용 웹 페이지의 편집을 제공하기 위한 관리 서버, 방법 및 프로그램
KR102521744B1 (ko) 디지털 서비스 기반 유량 제어 서버, 방법 및 api 유량 제어 시스템
US20240152681A1 (en) Generating graphical user interfaces based on metadata
US11921801B2 (en) Electronic apparatus and keyword management method thereof
KR102569833B1 (ko) 디지털 서비스 기반 서비스 서버의 모니터링을 이용한 유량 제어 방법, 서버 및 시스템

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant