[go: up one dir, main page]

TWI888940B - 測量應用程式之性能之裝置及方法 - Google Patents

測量應用程式之性能之裝置及方法 Download PDF

Info

Publication number
TWI888940B
TWI888940B TW112138011A TW112138011A TWI888940B TW I888940 B TWI888940 B TW I888940B TW 112138011 A TW112138011 A TW 112138011A TW 112138011 A TW112138011 A TW 112138011A TW I888940 B TWI888940 B TW I888940B
Authority
TW
Taiwan
Prior art keywords
application
type
measurement
metric
information
Prior art date
Application number
TW112138011A
Other languages
English (en)
Other versions
TW202424740A (zh
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 韓商韓領有限公司
Publication of TW202424740A publication Critical patent/TW202424740A/zh
Application granted granted Critical
Publication of TWI888940B publication Critical patent/TWI888940B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • G06F11/3696Methods or tools to render software testable
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3851Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • G06F9/4484Executing subprograms
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Multimedia (AREA)
  • Debugging And Monitoring (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)
  • Testing Or Calibration Of Command Recording Devices (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本發明之一態樣可提供一種應用程式性能測量裝置。本發明之一態樣之裝置可包括:通訊電路,其與至少一個外部裝置通訊;一個以上之處理器;及一個以上之記憶體,其儲存有如下命令,該命令藉由上述一個以上之處理器執行時,使上述一個以上之處理器實行運算;上述一個以上之處理器以如下方式構成:獲得第1類型應用程式之第1度量集,獲得第2類型應用程式之第2度量集,基於上述第1度量集及上述第2度量集中包括之至少一個測量項目之資訊,確定上述第1類型應用程式及上述第2類型應用程式各自之狀態;上述第1度量集及上述第2度量集分別包括至少一個共同測量項目之資訊。

Description

測量應用程式之性能之裝置及方法
本發明係關於一種用以提供測量應用程式之性能之方法之技術。
提供利用應用程式(Application)之服務之伺服器係操作該服務之主體,自利用服務之各用戶之裝置接收各種資料(例如,度量資料),並基於接收到之資料來判斷服務是否正常實行。即,伺服器自利用該服務之各用戶之裝置接收一個以上之測量項目之資訊,以評估提供給用戶之服務之品質。又,於一個伺服器利用不同之複數個應用程式來操作複數個服務之情形時,該伺服器應針對複數個服務之各者單獨接收一個以上之測量項目之資訊,並單獨評估複數個服務各自之品質。
然而,先前一個伺服器操作複數個服務時,針對每個服務而單獨實現用以管理服務之品質之代碼,因此需要反覆創建相同功能之代碼,並且需要一種藉由複數個服務之間統一之方法來管理度量資料之方法。又,於提供服務之運算處理負擔增加之尖峰時間段,調節管理度量資料之動作之處理量之技術需求不斷增加。
[發明所欲解決之問題]
根據本發明之各種實施例,技術課題在於:為用戶指定之課題提供解決方案。
根據本發明之各種實施例,技術課題在於:使用戶能夠自其他用戶獲得解決特定課題之原始碼。
根據本發明之各種實施例,技術課題在於:使用戶能夠根據各種原始碼語言而獲得解決特定課題之原始碼。
根據本發明之各種實施例,技術課題在於:使用戶能夠獲得解決特定課題之原始碼,該特定課題係包括非公開資訊而需要創建原始碼者。 [解決問題之技術手段]
本發明之一態樣可提供一種應用程式性能測量裝置。本發明之一態樣之裝置可包括:通訊電路,其與至少一個外部裝置通訊;一個以上之處理器;及一個以上之記憶體,其儲存有如下命令,該命令藉由上述一個以上之處理器執行時,使上述一個以上之處理器實行運算;上述一個以上之處理器以如下方式構成:獲得第1類型應用程式之第1度量(metric)集,獲得第2類型應用程式之第2度量集,基於上述第1度量集及上述第2度量集中包括之至少一個測量項目之資訊,確定上述第1類型應用程式及上述第2類型應用程式各自之狀態;上述第1度量集及上述第2度量集分別包括至少一個共同測量項目之資訊。
於一實施例中,上述第1類型應用程式可為提供度量API(Application Programming Interface,應用程式設計介面)之類型之應用程式,該度量API係回傳測量項目之資訊者,上述第2類型應用程式可為不提供上述度量API之類型之應用程式。
於一實施例中,上述一個以上之處理器可藉由自上述第1類型應用程式接收對上述度量API之呼叫之響應,從而獲得上述第1度量集,藉由在預先確定之特定時點自上述第2類型應用程式接收度量資料,從而獲得上述第2度量集。
於一實施例中,上述第1類型應用程式可為基於用戶輸入而進行動作之前台(Foreground)應用程式,上述第2類型應用程式可為與用戶輸入無關地進行動作之後台(Background)應用程式。
於一實施例中,上述共同測量項目可包括網際網路速度、API呼叫延遲時間(Latency)、或為了管理特定軟體而預先確定之測量項目中之至少一者。
於一實施例中,上述一個以上之處理器可共同使用預先創建之特定函數,自上述第1類型應用程式及上述第2類型應用程式各者獲得上述至少一個共同測量項目之資訊。
於一實施例中,上述第1度量集或上述第2度量集可包括藉由用戶而定義之測量項目之資訊。
於一實施例中,上述第1類型應用程式或上述第2類型應用程式可為與電子商務相關之應用程式,藉由上述用戶而定義之測量項目包括應用程式動作錯誤代碼、應用程式錯誤是否導致訂單失敗、用戶是否取消訂單、或每分鐘訂單數量中之至少一者。
於一實施例中,上述一個以上之處理器可利用隊列(Queue)清單來依序處理上述至少一個測量項目之資訊。
於一實施例中,上述一個以上之處理器可使用預先確定之個數之線程(Thread)來處理上述至少一個測量項目之資訊。
本發明之另一態樣可提供一種應用程式性能測量方法。本發明之一態樣之方法係藉由電子裝置而實行之方法,該電子裝置包括與至少一個外部裝置通訊之通訊電路、一個以上之處理器、及儲存有藉由上述一個以上之處理器而執行之至少一個命令之一個以上之記憶體,該方法可包括如下步驟:獲得第1類型應用程式之第1度量(metric)集;獲得第2類型應用程式之第2度量集;及基於上述第1度量集及上述第2度量集中包括之至少一個測量項目之資訊,確定上述第1類型應用程式及上述第2類型應用程式各自之狀態;上述第1度量集及上述第2度量集分別包括至少一個共同測量項目之資訊。
於一實施例中,上述第1類型應用程式可為提供度量API(Application Programming Interface)之類型之應用程式,該度量API係回傳測量項目之資訊者,上述第2類型應用程式可為不提供上述度量API之類型之應用程式。
於一實施例中,獲得上述第1度量集之步驟可包括如下步驟:藉由自上述第1類型應用程式接收對上述度量API之呼叫之響應,從而獲得上述第1度量集,獲得上述第2度量集之步驟包括如下步驟:藉由在預先確定之特定時點自上述第2類型應用程式接收度量資料,從而獲得上述第2度量集。
於一實施例中,上述第1類型應用程式可為基於用戶輸入而進行動作之前台(Foreground)應用程式,上述第2類型應用程式可為與用戶輸入無關地進行動作之後台(Background)應用程式。
於一實施例中,上述共同測量項目可包括網際網路速度、API呼叫延遲時間(Latency)、或為了管理特定軟體而預先確定之測量項目中之至少一者。
於一實施例中,該方法可進而包括如下步驟:共同使用預先創建之特定函數,自上述第1類型應用程式及上述第2類型應用程式各者獲得上述至少一個共同測量項目之資訊。
於一實施例中,上述第1度量集或上述第2度量集可包括藉由用戶而定義之測量項目之資訊。
於一實施例中,上述第1類型應用程式或上述第2類型應用程式可為與電子商務相關之應用程式,藉由上述用戶而定義之測量項目包括應用程式動作錯誤代碼、應用程式錯誤是否導致訂單失敗、用戶是否取消訂單、或每分鐘訂單數量中之至少一者。
於一實施例中,上述方法可進而包括如下步驟:利用隊列(Queue)清單來依序處理上述至少一個測量項目之資訊。
根據本發明之另一態樣,可揭示一種電腦可讀記錄媒體。一種非暫時性電腦記錄媒體記錄有藉由一個以上之處理器而執行時使上述一個以上之處理器實行動作之命令,其中,上述命令使上述一個以上之處理器以如下方式構成:獲得第1類型應用程式之第1度量(metric)集,獲得第2類型應用程式之第2度量集,基於上述第1度量集及上述第2度量集中包括之至少一個測量項目之資訊來匹配度量名稱及度量類型,從而產生匹配資料,將上述匹配資料傳輸至外部裝置。 [發明之效果]
根據本發明之各種實施例,可藉由提高已創建之代碼(即,預先創建之特定函數)之可再用性,從而縮短應用程式產生時間。
根據本發明之各種實施例,可對複數個應用程式應共同測量之測量項目之資訊進行綜合管理。
根據本發明之各種實施例,可減輕伺服器之運算負擔。
根據本發明之各種實施例,可容易地實行度量資料之流量管理。
本說明書中記載之各種實施例係以明確說明本發明之技術思想為目的而例示者,並不意欲將其限定為特定實施方式。本發明之技術思想包括本發明記載之各實施例之各種變更(modifications)、均等物(equivalents)、替代物(alternatives)及選擇性地組合各實施例之全部或一部分所得之實施例。又,本發明之技術思想之權利範圍並不限定於以下提出之各種實施例或對其之具體說明。
關於本發明中使用之用語,包括技術性或科學性用語,除非另外定義,否則應具有本發明所屬技術領域中具有常識者通常理解之含義。
關於本說明書中使用之如「包括」、「可包括」、「具備」、「可具備」、「具有」、「可具有」等表述,意味著存在對象特徵(例如:功能、動作或構成要素等),不排除其他追加性特徵之存在。即,如上所述之表述應理解為具有包含其他實施例之可能性之開放型用語(open-ended terms)。
關於本說明書中使用之單數型表述,除非另有提及,否則可包含複數型之含義,這同樣適用於申請專利範圍中記載之單數型表述。
關於本說明書中使用之「第1」、「第2」或「第一」、「第二」等表述,除非另有提及,否則係用以於指代複數個同類對象之情形時將某對象與其他對象進行區分,並非用以限定該等對象之順序或重要度。
本發明中使用之「A、B及C」、「A、B或C」、「A、B及/或C」或「A、B及C中至少一者」、「A、B或C中至少一者」、「A、B及/或C中至少一者」、「選自A、B及C中之至少一者」、「選自A、B或C中之至少一者」、「選自A、B及/或C中之至少一者」等表述可指列出之各個項目或列出之項目之所有可能的組合。例如,「選自A及B中之至少一者」可指(1)A,(2)A中之至少一者,(3)B,(4)B中之至少一者,(5)A中之至少一者及B中之至少一者,(6)A中之至少一者及B,(7)B中之至少一者及A,(8)A及B兩者。
本發明中使用之所謂「基於~」之表述,用於描述包含該表述之語句或文章中描述之對確定、判斷之行為或動作產生影響之一個以上的因素,該表述不排除對確定、判斷行為或動作產生影響之其他因素。
關於本說明書中使用之某個構成要素(例如:第1構成要素)「連接」或「連結」於另一構成要素(例如:第2構成要素)之表述,不僅可指上述某個構成要素直接連接或連結於上述另一構成要素,而且亦可指經由新的其他構成要素(例如:第3構成要素)而連接或連結。
本發明中使用之表述「以~方式構成(configured to)」,根據上下文,可具有「以~方式設定」、「具有~之能力」、「以~方式變更」、「以~方式製成」、「可進行~」等含義。該表述不限定於「硬體上特別設計」之含義,例如,所謂以執行特定動作之方式構成之處理器可指可藉由執行軟體而實行特定動作之通用處理器(generic purpose processor)。
以下,參照附圖,對本發明中記載之各實施例進行說明。於附圖及附圖說明中,對相同或實質上等同(substantially equivalent)之構成要素賦予相同之參照符號。又,於以下實施例之說明中,可省略對相同或對應構成要素之重複描述,但這並不意味著該構成要素不包括於該實施例中。
圖1係概略性地表示根據本發明之一實施例而電子裝置10對自設置於用戶終端之一個以上之應用程式21、22獲得之度量(metric)資料23進行處理之動作的例示圖。於本發明中,度量資料可用作如下之值之統稱用語,即,表示向用戶提供之服務、軟體、程式、或應用程式之性能或狀態之至少一個度量項目(metric item)之值。度量項目例如可為是否連接網際網路、網路速度等。
電子裝置10可為設置有應用程式之用戶終端。又,電子裝置10亦可為用戶終端外部之伺服器。以下,於本說明書內之若干實施例中,將電子裝置10假設為伺服器來對應用程式性能測量方法進行說明,但其僅為便於說明之假設,並不限制本發明,本說明書之揭示內容之應用程式性能測量方法亦可於設置有應用程式之用戶終端中實行。
電子裝置10可自第1類型應用程式21及第2類型應用程式22分別接收度量資料23,並藉由規定之方法對所接收到之度量資料23進行處理,從而確定第1類型應用程式21及第2類型應用程式22各自之狀態。第1類型應用程式21可指提供度量API(Application Programming Interface)之類型之應用程式。第1類型應用程式21可被稱為「長期運行(long-term running)應用程式」。與第1類型應用程式不同,第2類型應用程式22可為不提供響應於來自外部之度量資料傳輸請求之API之應用程式。第2類型應用程式22可被稱為「批次工件(batch job)應用程式」。
電子裝置10可藉由利用隊列(Queue)清單11、或包括預先確定之個數之線程(Thread)在內之線程池(thread pool)13,而對度量資料23進行處理。以下,對其進行具體說明。
圖2係表示本發明之一實施例之包括伺服器100、用戶終端200及通訊網300之系統之圖。伺服器100及用戶終端200可根據本說明書中揭示之應用程式性能測量技術,藉由通訊網300而彼此發送或接收資訊。
伺服器100可為利用應用程式之服務提供者之電子裝置。服務提供者可為利用本說明書中揭示之應用程式之服務之運營主體。伺服器100係向有線或無線連接之用戶終端200傳輸資訊或提供服務之電子裝置,例如可為應用程式伺服器、代理伺服器、雲端伺服器。
用戶終端200可指一個以上之用戶終端或兩個以上之用戶終端集合。本說明書之揭示內容之各種實施例中,於用戶終端200指示兩個以上之用戶終端集合之情形時,各用戶終端可稱為第1用戶終端200-1、第2用戶終端200-2、...、第n用戶終端200-n(n係2以上之自然數)。
用戶終端200可為利用伺服器100藉由應用程式來提供之服務的用戶之終端。用戶終端200例如可為智慧型手機、平板電腦(Tablet Computer)、PC(Personal Computer,個人電腦)、行動電話(Mobile Phone)、PDA(Personal Digital Assistant,個人數位助理)、音訊播放機(Audio Player)、可穿戴裝置(Wearable Device)中之至少一者。
於本說明書之揭示內容中,於說明一個裝置之構成或動作時,所謂「裝置」之用語可用作如下用語,該用語係用以指稱作為說明對象之裝置,所謂「外部裝置」之用語可用作如下用語,該用語係自作為說明對象之裝置之觀點來看,用以指稱外部存在之裝置。例如,於將伺服器100作為「裝置」進行說明之情形時,自伺服器100之觀點來看,用戶終端200可被稱為「外部裝置」。又,例如,於將用戶終端200作為「裝置」進行說明之情形時,自用戶終端200之觀點來看,伺服器100可被稱為「外部裝置」。即,伺服器100及用戶終端200各自可根據動作主體之觀點分別被稱為「裝置」及「外部裝置」、或分別被稱為「外部裝置」及「裝置」。
通訊網300可包括有線或無線通訊網。通訊網300可使資料於伺服器100及用戶終端200之間進行交換。有線通訊網例如可包括USB(Universal Serial Bus,通用串列匯流排)、HDMI(High Definition Multimedia Interface,高畫質多媒體介面)、RS-232(Recommended Standard-232,推薦標準-232)或POTS(Plain Old Telephone Service,簡易老式電話業務)等方式之通訊網。無線通訊網例如可包括eMBB(enhanced Mobile Broadband,增強型行動寬頻)、URLLC(Ultra Reliable Low-Latency Communications,超可靠低延遲通訊)、MMTC(Massive Machine Type Communications,大規模機器型通訊)、LTE(Long-Term Evolution,長期演進)、LTE-A(LTE Advance,先進長期演進)、NR(New Radio,新無線)、UMTS(Universal Mobile Telecommunications System,通用行動通訊系統)、GSM(Global System for Mobile communications,全球行動通訊系統)、CDMA(Code Division Multiple Access,分碼多重存取)、WCDMA(Wideband CDMA,寬頻分碼多重存取)、WiBro(Wireless Broadband,無線寬頻)、WiFi(Wireless Fidelity,無線保真)、藍牙(Bluetooth)、NFC(Near Field Communication,近場通訊)、GPS(Global Positioning System,全球定位系統)或GNSS(Global Navigation Satellite System,全球導航衛星系統)等方式之無線通訊。本說明書之通訊網300並不限於上述示例,而可不受限制地包括允許於複數個主體或裝置之間交換資料之各種種類之通訊網。
圖3係本說明書中揭示之內容之一實施例之伺服器100的方塊圖。伺服器100可包括一個以上之處理器110、通訊電路120或記憶體130作為構成要素。於某個實施例中,可省略伺服器100之構成要素中之至少一者、或將其他構成要素追加至伺服器100中。於某個實施例中,可附加地或替代地(in alternative to)整合一部分之構成要素而實現、或實現為單個或複數個個體。伺服器100內部或外部之構成要素中之至少一部分構成要素可藉由匯流排、GPIO(General Purpose Input/Output,通用目的輸入輸出)、SPI(Serial Peripheral Interface,串列周邊介面)或MIPI(Mobile Industry Processor Interface,行動產業處理器介面)等彼此連接,從而收發資料或信號。
一個以上之處理器110可表述為處理器110。若未於文中明確地進行不同之表述,則所謂處理器110之用語可指一個或一個以上之處理器之集合。處理器110可驅動軟體(例如,命令、程式等)而對連接於處理器110上之伺服器100之至少一個構成要素進行控制。又,處理器110可實行各種運算、處理、資料產生或加工等動作。又,處理器110可自記憶體130加載資料等,或將其儲存於記憶體130中。
通訊電路120可實行伺服器100與其他裝置(例如,用戶終端200或其他伺服器)之間之無線或有線通訊。例如,通訊電路120可實行eMBB、URLLC、MMTC、LTE、LTE-A、NR、UMTS、GSM、CDMA、WCDMA、WiBro、WiFi、藍牙、NFC、GPS、或GNSS等方式之無線通訊。又,例如,通訊電路120可實行USB(Universal Serial Bus)、HDMI(High Definition Multimedia Interface)、RS-232(Recommended Standard-232)或POTS(Plain Old Telephone Service)等方式之有線通訊。
記憶體130可儲存各種資料。儲存於記憶體130中之資料係由伺服器100之至少一個構成要素獲得、處理或使用之資料,可包括軟體(例如,命令、程式等)。記憶體130可包括揮發性或非揮發性記憶體。若未於文中明確地進行不同之表述,則所謂記憶體130之用語可指一個或一個以上之記憶體之集合。本說明書中提及之所謂「儲存於記憶體130中之命令(Instruction)之集合」或「儲存於記憶體130中之程式」之表述可用來指代用以控制伺服器100之資源之作業系統、應用軟體或中間軟體等,該中間軟體係將各種功能提供至應用軟體以使應用軟體能夠運用伺服器100之資源。於一實施例中,於處理器110實行特定運算時,記憶體130可儲存由處理器110實行並與特定運算對應之命令。
於一實施例中,伺服器100可將處理器110之運算結果之資料、由通訊電路120接收之資料、或記憶體130中儲存之資料等傳輸至外部裝置。外部裝置可為用以輸出(顯示或表示)接收到之資料之裝置。外部裝置例如可為用戶終端200。
圖4係本說明書中揭示之內容之一實施例之用戶終端200的方塊圖。用戶終端200可包括一個以上之處理器210、通訊電路220或記憶體230作為構成要素。又,用戶終端200可進而包括輸入部240或輸出部250中之至少一者。
處理器210可驅動軟體(例如,命令、程式等)而對連接於處理器110上之用戶終端200之至少一個構成要素進行控制。又,處理器210可實行各種運算、處理、資料產生或加工等動作。又,處理器210可自記憶體230加載資料等,或將其儲存於記憶體230。
通訊電路220可實行用戶終端200與其他裝置(例如,伺服器100或其他用戶終端)之間之無線或有線通訊。例如,通訊電路220可實行eMBB、URLLC、MMTC、LTE、LTE-A、NR、UMTS、GSM、CDMA、WCDMA、WiBro、WiFi、藍牙、NFC、GPS、或GNSS等方式之無線通訊。又,例如,通訊電路220可實行USB、HDMI、RS-232或POTS等方式之有線通訊。
記憶體230可儲存各種資料。儲存於記憶體230中之資料係由用戶終端200之至少一個構成要素獲得、處理或使用之資料,可包括軟體(例如,命令、程式等)。記憶體230可包括揮發性或非揮發性記憶體。若未於文中明確地進行不同之表述,則所謂記憶體230之用語可指一個或一個以上之記憶體之集合。本說明書中提及之所謂「儲存於記憶體230中之命令(Instruction)之集合」或「儲存於記憶體230中之程式」之表述可用來指稱用以控制用戶終端200之資源之作業系統、應用軟體或中間軟體等,該中間軟體係將各種功能提供至應用軟體以使應用軟體能夠運用用戶終端200之資源。於一實施例中,於處理器210實行特定運算時,記憶體230可儲存由處理器210實行並與特定運算對應之命令。
於一實施例中,用戶終端200可進而包括輸入部240。輸入部240可為將自外部接收之資料發送至用戶終端200所包括之至少一個構成要素的構成要素。例如,輸入部240可包括滑鼠、鍵盤或觸控板等。
於一實施例中,用戶終端200可進而包括輸出部250。輸出部250可顯示(輸出)用戶終端200中處理之資訊或將其傳輸(發送)至外部。例如,輸出部250可視覺地顯示用戶終端200中處理之資訊。輸出部250可顯示UI(User Interface,用戶介面)資訊或GUI(Graphic User Interface,圖形用戶介面)資訊等。於該情形時,輸出部250可包括液晶顯示器(Liquid Crystal Display,LCD)、薄膜電晶體液晶顯示器(Thin Film Transistor-Liquid Crystal Display,TFT-LCD)、有機發光二級體(Organic Light-Emitting Diode,OLED)、可撓式顯示器(Flexible Display)、三維顯示器(3D Display)、電子墨水顯示器(E-ink Display)中之至少一者。又,例如輸出部250可聽覺地顯示用戶終端200中處理之資訊。輸出部250可藉由音響裝置來顯示遵循任意音訊檔格式(例如,MP3、FLAC、WAV等)方式之音頻資料。於該情形時,輸出部250可包括揚聲器、頭戴耳機、耳機中之至少一者。
圖5係根據本發明之一實施例而伺服器100測量複數個應用程式之性能之動作之順序圖。
伺服器100可獲得第1類型應用程式之第1度量集(S510)。
於本說明書之揭示內容中,「第1類型應用程式」可指提供度量API(Application Programming Interface)之類型之應用程式。此處,「度量API」可指回傳測量項目之資訊之API。第1類型應用程式可提供用以響應於至少一個測量項目(例如,網際網路速度、API呼叫延遲等)之GET請求(request)之API。第1類型應用程式可為基於用戶輸入而進行動作之前台(Foreground)應用程式。具體而言,第1類型應用程式可為藉由用戶終端200之輸出部250等而與用戶進行交互作用(interaction),並與伺服器100收發資料之類型之應用程式。第1類型應用程式可為提供包括上述度量API在內之可自外部呼叫之各種API以作為前台應用程式進行動作之應用程式。
於本說明書之揭示內容中,「度量集」係度量資料(或測量指標資料)之集合,可指包括至少一個測量項目之集合。度量集可包括至少一個測量項目及各測量項目之值。以下,為了便於說明,一對測量項目及相應項目之值可稱為「測量項目之資訊」。
第1度量集可為包括與第1類型應用程式相關之至少一個測量項目之資訊之度量集。例如,伺服器100可藉由自與第1類型應用程式相對應之特定應用程式(以下,亦稱為「A」應用程式)接收對度量API之呼叫之響應,從而獲得第1度量集。第1度量集可包括至少一個測量項目之資訊(例如,網際網路速度之資訊、API呼叫延遲時間之資訊等)。具體而言,處理器110可呼叫用戶終端200中設置之「A」應用程式所提供之API中的回傳當前連接之網際網路之速度之度量API(例如,GET請求),並響應於此而自「A」應用程式接收網際網路速度之值。又,處理器110可呼叫用戶終端200中設置之「A」應用程式所提供之API中的回傳用以使應用程式提供服務之特定API(例如,於提供應用程式電子商務服務之應用程式之情形時為自外部之配送企業獲取當前配送資訊之API等)之呼叫延遲時間(Latency)之度量API,並響應於此而自「A」應用程式接收API呼叫延遲時間之值。
伺服器100可獲得第2類型應用程式之第2度量集(S520)。
於本說明書之揭示內容中,「第2類型應用程式」可指不提供度量API之類型之應用程式。例如,與第1類型應用程式不同,第2類型應用程式可為不提供響應於來自外部之度量資料傳輸請求之API之應用程式。第2類型應用程式可為與用戶輸入無關地進行動作之後台(Background)應用程式。具體而言,第2類型應用程式可為於用戶終端200中設置後根據用戶所允許之權限來收集用戶終端200之特定資料之應用程式。第2類型應用程式係後台應用程式,可為不提供度量API之類型之應用程式。第2類型應用程式可為於發生預先確定之特定事件(例如,發生錯誤)或經過規定週期時將度量資料傳輸至外部裝置(例如,伺服器100等)之應用程式。即,第2類型應用程式係不提供可自外部自由呼叫之度量API之應用程式,可為僅於由該應用程式定義之特定時點將所計算出之度量資料傳輸至外部裝置的應用程式。
第2度量集可為包括與第2類型應用程式相關之至少一個測量項目之資訊之度量集。例如,伺服器100可藉由在預先確定之特定時點自與第2類型應用程式相對應之特定應用程式(以下,亦稱為「B」應用程式)接收度量資料,從而獲得第2度量集。預先確定之特定時點可於產生「B」應用程式時或將其下載至用戶終端200時,設定為內定值。第2度量集可包括至少一個測量項目之資訊(例如,網際網路速度之資訊、API呼叫延遲時間之資訊等)。具體而言,處理器110可於預先確定之特定時點自用戶終端200中設置之「B」應用程式接收網際網路速度之值。又,處理器110可於預先確定之特定時點自用戶終端200中設置之「B」應用程式接收API呼叫延遲時間之值。
本說明書之揭示內容之第1度量集及第2度量集可分別包括至少一個共同測量項目之資訊。例如,共同測量項目可包括網際網路速度、API呼叫延遲時間(Latency)、或為了管理特定軟體而預先確定之測量項目中之至少一者。此時,於作為為了管理特定軟體而預先確定之測量項目之一例,第1類型應用程式及第2類型應用程式均使用所謂「Kafka」之資料處理平台之情形時,第1度量集及第2度量集可包括用以監控Kafka之當前狀態(例如,未處理資料之量、單位時間資料處理量等)之一個以上之指標作為共同測量項目。又,於作為為了管理特定軟體而預先確定之測量項目之另一例,第1類型應用程式及第2類型應用程式均適用所謂「Redis」之資料庫之情形時,第1度量集及第2度量集可包括用以監控Redis之當前狀態(例如,資料庫容量等)之一個以上之指標作為共同測量項目。又,於作為為了管理特定軟體而預先確定之測量項目之另一例,第1類型應用程式及第2類型應用程式均使用所謂「HikariCP」之資料庫管理程式之情形時,第1度量集及第2度量集可包括用以監控HikariCP之當前狀態(例如,連接池之性能等)之一個以上之指標作為共同測量項目。
於本發明之一實施例中,伺服器100可共同使用預先創建之特定函數,自第1類型應用程式及第2類型應用程式各者獲得至少一個共同測量項目之資訊。此處,預先創建之特定函數係原始碼(Source code)之集合,可指可共同應用於第1類型應用程式或第2類型應用程式之函數。例如,用以獲得網際網路速度之特定函數可以接收應用程式識別號、用戶終端識別號等作為輸入參數之方式預先產生。此時,伺服器100可藉由變更輸入參數地共同使用用以獲得網際網路速度之特定函數,而自第1類型應用程式及第2類型應用程式各者獲得網際網路速度之資訊。藉此,可藉由提高已創建之代碼(即,預先創建之特定函數)之可再用性,從而縮短應用程式產生時間。又,根據本發明,即便為如第1類型應用程式及第2類型應用程式之不同類型之應用程式,亦可藉由相同地使用針對各應用程式預先創建之特定函數,而對複數個應用程式應共同測量之測量項目之資訊進行綜合管理。
本說明書之揭示內容之第1度量集或第2度量集可包括由用戶定義之測量項目之資訊。例如,於第1類型應用程式及/或第2類型應用程式係與電子商務相關之應用程式之情形時,第1度量集或第2度量集可包括應用程式動作錯誤代碼、應用程式錯誤是否導致訂單失敗、用戶是否取消訂單、每分鐘訂單數量中之至少一者。應用程式動作錯誤代碼例如可指於應用程式實行特定動作時發生錯誤之情形時之相應錯誤之代碼(例如,401、404等)。應用程式錯誤是否導致訂單失敗例如可指如下測量項目值,該測量項目值於因應用程式之動作錯誤而導致用戶之訂單失敗之情形時具有值「1」,否則被賦予值「0」。用戶是否取消訂單例如可指如下測量項目值,該測量項目值於用戶直接取消訂單之情形時具有值「1」,否則被賦予值「0」。
伺服器100可基於第1度量集及第2度量集中包括之至少一個測量項目之資訊,確定第1類型應用程式及第2類型應用程式各自之狀態(S530)。例如,伺服器100可根據各應用程式之網際網路速度之資訊、API呼叫延遲時間資訊等,確定應用程式是否正常進行動作。具體而言,若度量集中包括之各測量項目之資訊中之特定測量項目之資訊出現異常,則處理器110可產生該應用程式存在錯誤之資訊,並通知伺服器100之用戶。
於本發明之一實施例中,伺服器100於對第1度量集及第2度量集中包括之至少一個測量項目之資訊進行處理時,可利用隊列(Queue)清單依序進行處理。處理器110可根據接收到第1度量集或第2度量集之時刻,將各度量集中包括之測量項目之資訊輸入至隊列清單中。例如,處理器110可將首先接收到之度量集中包括之測量項目之資訊優先輸入至隊列清單中。又,處理器110可根據各應用程式之優先級,將度量集中包括之測量項目之資訊輸入至隊列清單中。例如,於設定為第1類型應用程式之優先級高於第2類型應用程式之情形時,處理器110接收第1類型應用程式之第1度量集及第2類型應用程式之第2度量集兩者,即便先接收到第2度量集,若第2度量集尚未輸入至隊列清單中,則亦可將第1度量集優先輸入至隊列清單中。處理器110可自隊列清單依序導出並處理測量項目之資訊。即,處理器110可以先進先出(First-In-First-Out)方式對自不同應用程式接收之至少一個測量項目之資訊進行處理。於本發明中,上述隊列清單之大小可根據伺服器100管理之應用程式之個數或伺服器100之性能等而可變地確定。
處理器110可使用預先確定之個數之線程(Thread)來處理上述至少一個測量項目之資訊。關於用以處理測量項目之資訊之線程之預先確定的個數,可考慮用以管理服務之主線程之個數而設定為適當數量。例如,關於用以處理測量項目之資訊之線程之預先確定的個數,可考慮當前時間、服務情況、伺服器100運算量等而可變地確定。處理器110根據隊列清單依序處理測量項目之資訊,於存在當前可使用之可用線程(Thread)之情形時,可藉由自隊列清單導出測量項目之資訊並將其分配給可用線程,從而處理度量資料。
如上所述,根據利用隊列清單來處理至少一個測量項目之資訊的本發明之一實施例,即便在特定時間段自複數個應用程式集中接收測量項目之資訊,亦可於利用隊列清單調節流量之同時依序處理資訊,因此可減輕伺服器100之運算負擔。又,由於本發明使用隊列清單及預先確定之個數之線程來處理度量資料,因此可有效率地實行伺服器100之度量資料管理動作,而不損害基本服務動作之性能。
以下,對附加實施例進行說明,該附加實施例係如參照圖1於上文所敍述般實行本發明之應用程式性能測量方法之電子裝置10為用戶終端200之情形時的實施例。又,對於與上文關於電子裝置10為伺服器100之情形敍述之內容重複之內容進行省略,主要對其差異進行說明。
於本發明之應用程式性能測量方法在用戶終端200中實行之情形時,用戶終端200可對自各應用程式接收到之度量資料進行分類,並將各度量資料之分類結果發送至伺服器100。即,於用戶終端200實行應用程式性能測量方法之情形時,圖5之各步驟中之S510及S520可如上所述由用戶終端200實行。又,處理器210可以規定方式,將各度量集中包括之測量項目之資訊發送至伺服器100。具體而言,處理器210可於藉由處理器210管理之至少一個線程而對自第1類型應用程式及第2類型應用程式各者接收到之第1度量集及第2度量集進行處理後,將其發送至伺服器100。處理器210為了處理度量資料而使用之線程可為與用以驅動第1類型應用程式或第2類型應用程式之線程有所區別之線程。用以處理度量資料之線程(thread)之數量可根據驅動各應用程式之用戶終端200之情況或性能而可變地確定。
處理器210可將接收到之測量項目資訊之度量名稱(metric name)與度量類型(metric type)進行匹配,並將該匹配資料傳輸至伺服器100。伺服器100可藉由自處理器210接收與度量資料之分類結果相對應之匹配資料來減輕運算負擔。度量名稱可為上述預先創建之特定函數之名稱,並可根據作為測量對象之測量項目而預先確定。例如,度量名稱可預先確定為"order_succeed_metric"、"status_true_metric"、"status_false_metric"等。又,度量類型係用以對複數個測量項目進行分類之值,可根據度量名稱而預先確定並儲存於記憶體230中。處理器210可藉由參照記憶體230來確定與度量名稱匹配之度量類型並產生匹配資料。於測量項目之間度量類型不同之情形時,相應測量項目可以於視覺上不同之方式對管理者顯示、或於不同時點發送給管理者。又,於測量項目之間度量類型相同之情形時,相應測量項目可以於視覺上相同之方式對管理者顯示、或於相同時點發送給管理者。作為一例,度量資料可藉由伺服器100之顯示器(例如,儀錶板)而可視地顯示。度量類型例如可包括Counter、Gauge、Summary、Histogram等。
如上所述,於本發明之應用程式性能測量方法在用戶終端200中實行之情形時,用戶終端200可於驅動各應用程式之同時單獨處理表示各應用程式之性能之度量資料。藉此,可減輕伺服器100側之運算負擔。又,為了不影響由應用程式提供之基本服務(例如,電子商務之訂購功能)之性能或品質,用戶終端200可被分配單獨線程以非同步地進行度量資料之處理,因此具有便於管理度量資料之流量之效果。
本發明之方法可為藉由電腦而實現之方法。於本發明中,按照規定順序表示該方法之各步驟並進行了說明,但各步驟除了可依序實行以外,亦可按照由本發明任意組合之順序實行。於一實施例中,可並行、反覆或啟發性地實行至少一部分步驟。本發明並不排除對該方法進行改變或修正。於一實施例中,可省略至少一部分步驟、或添加其他步驟。
本發明之各種實施例可以機器(machine)可讀記錄媒體(machine-readable recording medium)中記錄之軟體之形式實現。軟體可為用以實現上述本發明之各種實施例之軟體。軟體可由本發明所屬之技術領域內之程式設計師根據本發明之各種實施例而推測出。例如,軟體可為機器可讀命令(例如:代碼或碼段)或程式。機器係可根據自記錄媒體呼叫之命令進行動作之裝置,例如可為電腦。於一實施例中,機器可為本發明之實施例之電子裝置10、伺服器100或用戶終端200。於一實施例中,機器之處理器可執行所呼叫之命令,而使機器之構成要素實行與該命令對應之功能。記錄媒體可指儲存由機器讀取之資料之所有種類之記錄媒體(recording medium)。記錄媒體可包括例如ROM(Read only memory,唯讀記憶體)、RAM(Random-access memory,隨機存取記憶體)、CD-ROM(Compact Disc Read-Only Memory,光碟唯讀記憶體)、磁帶、軟碟、光學資料儲存裝置等。於一實施例中,記錄媒體亦能夠以分散於由網路連接之電腦系統等中之形態實現。軟體可分散儲存於電腦系統等中來執行。記錄媒體可為非暫時性(non-transitory)記錄媒體。非暫時性記錄媒體係指與半永久或暫時性地儲存資訊無關地實際存在之有形媒體(tangible medium),不包括暫時(transitory)傳播之信號(signal)。
以上,根據各種實施例對本發明之技術思想進行了說明,但本發明之技術思想包括可於本發明所屬之技術領域內具有常識者所能理解之範圍內實現之各種置換、變化及變更。又,應理解此種置換、變化及變更可包括於隨附之發明申請專利範圍內。本發明之實施例可彼此組合。各實施例可根據情形之數量以各種方式進行組合,組合而成之實施例亦屬於本發明之範圍。
10:電子裝置 11:隊列清單 13:線程池 21:第1類型應用程式 22:第2類型應用程式 23:度量資料 100:伺服器 110:處理器 120:通訊電路 130:記憶體 200:用戶終端 200-1:第1用戶終端 200-2:第2用戶終端 200-n:第n用戶終端 210:處理器 220:通訊電路 230:記憶體 240:輸入部 250:輸出部 300:通訊網 S510:步驟 S520:步驟 S530:步驟
圖1係概略性地表示根據本發明之一實施例而電子裝置對自設置於用戶終端之一個以上之應用程式獲得之度量(metric)資料進行處理之動作的例示圖。 圖2係表示本發明之一實施例之包括伺服器、用戶終端及通訊網之系統之圖。 圖3係本說明書中揭示之內容之一實施例之伺服器的方塊圖。 圖4係本說明書中揭示之內容之一實施例之用戶終端的方塊圖。 圖5係根據本發明之一實施例而伺服器測量複數個應用程式之性能之動作之順序圖。
10:電子裝置
11:隊列清單
13:線程池
21:第1類型應用程式
22:第2類型應用程式
23:度量資料

Claims (18)

  1. 一種電子裝置,其包括:通訊電路,其與至少一個外部裝置通訊;一個以上之處理器;及一個以上之記憶體,其儲存有如下命令,該命令藉由上述一個以上之處理器執行時,使上述一個以上之處理器實行運算;上述一個以上之處理器以如下方式構成:獲得第1類型應用程式之第1度量集,獲得第2類型應用程式之第2度量集,基於上述第1度量集及上述第2度量集中包括之至少一個測量項目之資訊,確定上述第1類型應用程式及上述第2類型應用程式各自之狀態,其中上述第1度量集不同於上述第2度量集,上述第1度量集及上述第2度量集分別包括至少一個共同測量項目之資訊,及其中上述一個以上之處理器進一步經組態以:共同使用預先創建之特定函數,自上述第1類型應用程式及上述第2類型應用程式各者獲得上述至少一個共同測量項目之資訊。
  2. 如請求項1之電子裝置,其中上述第1類型應用程式係提供度量API之類型之應用程式,該度量API係回傳測量項目之資訊者,上述第2類型應用程式係不提供上述度量API之類型之應用程式。
  3. 如請求項2之電子裝置,其中上述一個以上之處理器藉由自上述第1類型應用程式接收對上述度量API之呼叫之響應,從而獲得上述第1度量集,藉由在預先確定之特定時點自上述第2類型應用程式接收度量資料,從而獲得上述第2度量集。
  4. 如請求項2之電子裝置,其中上述第1類型應用程式係基於用戶輸入而進行動作之前台應用程式,上述第2類型應用程式係與用戶輸入無關地進行動作之後台應用程式。
  5. 如請求項1之電子裝置,其中上述共同測量項目包括網際網路速度、API呼叫延遲時間、或為了管理特定軟體而預先確定之測量項目中之至少一者。
  6. 如請求項1之電子裝置,其中上述第1度量集或上述第2度量集包括藉由用戶而定義之測量項目之資訊。
  7. 如請求項6之電子裝置,其中上述第1類型應用程式或上述第2類型應用程式係與電子商務相關之應用程式,藉由上述用戶而定義之測量項目包括應用程式動作錯誤代碼、應用程式錯誤是否導致訂單失敗、用戶是否取消訂單、或每分鐘訂單數量中之至少一者。
  8. 如請求項1之電子裝置,其中上述一個以上之處理器利用隊列清單來依序處理上述至少一個測量項目之資訊。
  9. 如請求項1之電子裝置,其中上述一個以上之處理器使用預先確定之個數之線程來處理上述至少一個測量項目之資訊。
  10. 一種藉由電子裝置實行之方法,該電子裝置包括與至少一個外部裝置通訊之通訊電路、一個以上之處理器、及儲存有藉由上述一個以上之處理器而執行之至少一個命令之一個以上之記憶體,該方法包括如下步驟:獲得第1類型應用程式之第1度量集;獲得第2類型應用程式之第2度量集;及基於上述第1度量集及上述第2度量集中包括之至少一個測量項目之資訊,確定上述第1類型應用程式及上述第2類型應用程式各自之狀態,其中上述第1度量集不同於上述第2度量集,上述第1度量集及上述第2度量集分別包括至少一個共同測量項目之資訊,及其中上述方法進而包括如下步驟:共同使用預先創建之特定函數,自上述第1類型應用程式及上述第2類型應用程式各者獲得上述至少一個共同測量項目之資訊。
  11. 如請求項10之方法,其中上述第1類型應用程式係提供度量API之類型之應用程式,該度量API係回傳測量項目之資訊者, 上述第2類型應用程式係不提供上述度量API之類型之應用程式。
  12. 如請求項11之方法,其中獲得上述第1度量集之步驟包括如下步驟:藉由自上述第1類型應用程式接收對上述度量API之呼叫之響應,從而獲得上述第1度量集,獲得上述第2度量集之步驟包括如下步驟:藉由在預先確定之特定時點自上述第2類型應用程式接收度量資料,從而獲得上述第2度量集。
  13. 如請求項11之方法,其中上述第1類型應用程式係基於用戶輸入而進行動作之前台應用程式,上述第2類型應用程式係與用戶輸入無關地進行動作之後台應用程式。
  14. 如請求項10之方法,其中上述共同測量項目包括網際網路速度、API呼叫延遲時間、或為了管理特定軟體而預先確定之測量項目中之至少一者。
  15. 如請求項10之方法,其中上述第1度量集或上述第2度量集包括藉由用戶而定義之測量項目之資訊。
  16. 如請求項15之方法,其中上述第1類型應用程式或上述第2類型應用程式係與電子商務相關之應用程式, 藉由上述用戶而定義之測量項目包括應用程式動作錯誤代碼、應用程式錯誤是否導致訂單失敗、用戶是否取消訂單、或每分鐘訂單數量中之至少一者。
  17. 如請求項10之方法,其進而包括如下步驟:利用隊列清單來依序處理上述至少一個測量項目之資訊。
  18. 一種電腦可讀記錄媒體,其係記錄有藉由一個以上之處理器而執行時使上述一個以上之處理器實行動作之命令之非暫時性電腦記錄媒體,其中,上述命令使上述一個以上之處理器以如下方式構成:獲得第1類型應用程式之第1度量集,獲得第2類型應用程式之第2度量集,基於上述第1度量集及上述第2度量集中包括之至少一個測量項目之資訊來匹配度量名稱及度量類型,從而產生匹配資料,將上述匹配資料傳輸至外部裝置,其中上述第1度量集不同於上述第2度量集,其中上述第1度量集及上述第2度量集分別包括至少一個共同測量項目之資訊,及其中上述命令進一步經組態以使得上述一個以上之處理器:共同使用預先創建之特定函數,自上述第1類型應用程式及上述第2類型應用程式各者獲得上述至少一個共同測量項目之資訊。
TW112138011A 2022-11-28 2023-10-04 測量應用程式之性能之裝置及方法 TWI888940B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2022-0161693 2022-11-28
KR1020220161693A KR102617002B1 (ko) 2022-11-28 2022-11-28 애플리케이션의 성능을 측정하는 장치 및 방법

Publications (2)

Publication Number Publication Date
TW202424740A TW202424740A (zh) 2024-06-16
TWI888940B true TWI888940B (zh) 2025-07-01

Family

ID=89377554

Family Applications (2)

Application Number Title Priority Date Filing Date
TW112138011A TWI888940B (zh) 2022-11-28 2023-10-04 測量應用程式之性能之裝置及方法
TW114119910A TW202536652A (zh) 2022-11-28 2023-10-04 測量應用程式之性能之裝置及方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
TW114119910A TW202536652A (zh) 2022-11-28 2023-10-04 測量應用程式之性能之裝置及方法

Country Status (3)

Country Link
KR (2) KR102617002B1 (zh)
TW (2) TWI888940B (zh)
WO (1) WO2024117383A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201814512A (zh) * 2016-10-04 2018-04-16 聯發科技股份有限公司 基於場景的電子設備性能和功率管理方法及裝置
CN109324962A (zh) * 2018-08-17 2019-02-12 中国平安人寿保险股份有限公司 一种基于云物联技术的应用程序的测试方法及设备
US11119752B2 (en) * 2019-12-03 2021-09-14 FinancialForce.com, Inc. Scalably providing multiple application updates to multiple subscribers
CN113608982A (zh) * 2021-07-27 2021-11-05 远景智能国际私人投资有限公司 函数执行性能监测方法、装置、计算机设备及存储介质
CN114064450A (zh) * 2020-08-10 2022-02-18 腾讯科技(深圳)有限公司 应用程序测试方法、装置、电子设备及存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7895579B2 (en) * 2006-06-16 2011-02-22 Microsoft Corporation Automated method and system for collecting and reporting API performance profiles
US8219507B2 (en) * 2007-06-29 2012-07-10 Numenta, Inc. Hierarchical temporal memory system with enhanced inference capability
KR101812583B1 (ko) * 2011-07-21 2018-01-30 삼성전자주식회사 태스크 할당 장치, 태스크 할당 방법 및 컴퓨터로 읽을 수 있는 저장 매체
JP7398068B2 (ja) * 2018-10-02 2023-12-14 ファンクショナイズ,インコーポレイテッド ソフトウェアテスト
KR102365839B1 (ko) * 2020-08-12 2022-02-21 숭실대학교산학협력단 애플리케이션 성능 모니터링 방법 및 장치

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201814512A (zh) * 2016-10-04 2018-04-16 聯發科技股份有限公司 基於場景的電子設備性能和功率管理方法及裝置
CN109324962A (zh) * 2018-08-17 2019-02-12 中国平安人寿保险股份有限公司 一种基于云物联技术的应用程序的测试方法及设备
US11119752B2 (en) * 2019-12-03 2021-09-14 FinancialForce.com, Inc. Scalably providing multiple application updates to multiple subscribers
CN114064450A (zh) * 2020-08-10 2022-02-18 腾讯科技(深圳)有限公司 应用程序测试方法、装置、电子设备及存储介质
CN113608982A (zh) * 2021-07-27 2021-11-05 远景智能国际私人投资有限公司 函数执行性能监测方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
TW202424740A (zh) 2024-06-16
TW202536652A (zh) 2025-09-16
KR20240079187A (ko) 2024-06-04
KR102617002B1 (ko) 2023-12-27
WO2024117383A1 (ko) 2024-06-06

Similar Documents

Publication Publication Date Title
US11010215B2 (en) Recommending applications based on call requests between applications
CN109359118B (zh) 一种数据写入方法及装置
WO2018153207A1 (zh) 数据处理方法、服务器、终端及系统
US20140149558A1 (en) Cloud based application fragmentation
WO2019134340A1 (zh) 薪资计算方法、应用服务器及计算机可读存储介质
CN107924337A (zh) 分布式存储系统中的性能监测
EP2979239A1 (en) Unifying cloud services for online sharing
US10814229B2 (en) Fragment-based mobile device application streaming utilizing crowd-sourcing
CN112966201B (zh) 对象处理方法、装置、电子设备以及存储介质
US20220276845A1 (en) Systems and methods for consistent feature flag evaluation
CN112800363A (zh) 页面显示方法、装置、电子设备和计算机可读介质
TWI888940B (zh) 測量應用程式之性能之裝置及方法
CN115309730A (zh) 数据审核方法、装置、电子设备及存储介质
WO2025124273A1 (zh) 一种应用于分布式数据库的安全审计方法及相关设备
US20250123912A1 (en) Customization of application programming interfaces
CN110187987B (zh) 用于处理请求的方法和装置
CN115454576B (zh) 一种虚拟机进程管理方法、系统及电子设备
CN119127836A (zh) 一种数据库管理方法及相关装置
CN114328557B (zh) 数据处理方法、装置、电子设备和存储介质
CN114040381B (zh) 加密方法、解密方法、装置及电子设备
EP4105782A1 (en) Hardware accelerator service discovery
EP3063626A1 (en) Managing server membership
CN113821519B (zh) 一种数据处理方法以及领域驱动设计架构
KR102642735B1 (ko) Api 호출에 관한 정보를 제공하는 장치, 방법 및 기록매체
CN115167847A (zh) 应用日志采集方法、装置、设备及存储介质