CN106909431A - 定位函数性能问题的方法及装置 - Google Patents

定位函数性能问题的方法及装置 Download PDF

Info

Publication number
CN106909431A
CN106909431A CN201510974603.6A CN201510974603A CN106909431A CN 106909431 A CN106909431 A CN 106909431A CN 201510974603 A CN201510974603 A CN 201510974603A CN 106909431 A CN106909431 A CN 106909431A
Authority
CN
China
Prior art keywords
function
performance issue
code
program
performance
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN201510974603.6A
Other languages
English (en)
Inventor
贺三元
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced New Technologies Co Ltd
Advantageous New Technologies Co Ltd
Original Assignee
Alibaba Group Holding Ltd
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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201510974603.6A priority Critical patent/CN106909431A/zh
Publication of CN106909431A publication Critical patent/CN106909431A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/43Checking; Contextual analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了定位函数性能问题的方法和装置,该方法首先获取程序的代码;确定程序的代码中存在性能问题的函数,并生成存在性能问题的函数的日志;从所述日志中获取关键信息,所述关键信息包括存在性能问题的函数的标识;根据所述关键信息定位存在性能问题的函数的代码来源。本申请能够定位出存在性能问题的程序代码以及代码的责任人。

Description

定位函数性能问题的方法及装置
技术领域
本申请涉及定位函数的性能问题的技术,尤其涉及定位函数性能问题的方法及装置。
背景技术
程序开发人员经常需要了解程序中的函数调用是否存在性能问题。目前存在对函数性能进行测试的***工具,例如苹果公司所开发的***调试工具Instrument。该工具可以输出一对运行结果的日志图标,根据整个应用程序运行消耗时间分布和百分比,通过人工大量的分析可以定位可能存在性能问题的函数。由此可知,***调试工具是对***所运行的程序提供通用性的整体检测,因此很难区分出***内部函数、第三方代码库的函数以及当前应用程序代码的函数,从而无法自动获知程序开发人员所关心的应用程序中实际代码性能是否存在问题,且需要人工参与分析才能通知到性能问题的代码的责任人。
发明内容
本申请提供定位函数性能问题的方法及装置,能够定位出存在性能问题的程序代码以及代码的责任人。
根据本申请实施例的第一方面,提供一种定位函数性能问题的方法,该方法包括步骤:
获取程序的代码;
确定程序的代码中存在性能问题的函数,并生成存在性能问题的函数的日志;
从所述日志中获取关键信息,所述关键信息包括存在性能问题的函数的标识;
根据所述关键信息定位存在性能问题的函数的代码来源。
根据本申请实施例的第一方面,提供一种定位函数性能问题的装置,包括:
性能测试模块,用于获取程序的代码,确定程序的代码中存在性能问题的函数,并生成存在性能问题的函数的日志;
提取模块,用于从所述日志中获取关键信息,所述关键信息包括存在性能问题的函数的标识;
定位模块,用于根据所述关键信息定位存在性能问题的函数的代码来源。
本申请的各步骤是针对某个程序的代码中各函数逐个测试分析,且直接输出包含性能问题的函数的日志,各个程序代码的日志相互独立,因此可以将所关注的程序与***程序和其他第三方代码库的程序的日志分开,直观的确定存在性能问题的单个函数,并从日志中提取该函数的关键信息,通过关键信息从代码***中找到该函数所在的程序代码的来源,从而可以定位到具体的责任人。
附图说明
图1为本申请实施例中定位函数性能问题的方法的流程图;
图2a为本申请实施例中应用实例的场景图;
图2b为本申请实施例中应用实例的服务M的流程图;
图3为本申请实施例中定位函数性能问题的装置的硬件架构图;
图4为本申请实施例中定位函数性能问题的装置的软件逻辑框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
针对在很多环境中程序运行时定位性能问题存在困难的情况,本申请提出定位函数性能问题的方法及装置。
本申请可适用于多种智能设备。智能设备常见的可以是手机、平板电脑、电脑、智能耳机、智能电视、智能手表等设备。
程序常见的运行于操作***中,本申请所适用的操作***可以是IOS***、Android***、Windows***、Unix***等。
程序可以是应用程序,例如客户端软件的应用程序(导航App、音乐App、购物App等),以及操作***所运行的应用程序(可以是短信服务程序、电话服务程序等)。
参见图1,本申请定位函数性能问题的方法的流程如下所述。
S101,获取程序的代码;
S102,确定程序的代码中存在性能问题的函数,并生成存在性能问题的函数的日志;
S103,从存在性能问题的函数的日志中获取关键信息,关键信息包括存在性能问题的函数的标识;
S104,根据关键信息定位存在性能问题的函数的代码来源。
作为一个实施例,可以通过自行编写的脚本来执行本申请图1中的流程,因此可以不需要编译。脚本可以例如Python、vbscript、javascript、installshieldscript、ActionScript等。当然,不排除通过其他高级语言执行的情况。
确定存在性能问题的函数的方式可以存在多种方式,例如,可以获取函数的运行时长,根据函数的运行时长判断该函数是否存在性能问题,或者可以程序运行时调用***的API接口获取CPU的占用情况,根据函数对CPU占用情况来判断该函数是否存在性能问题等。
以通过运行时长判断函数是否存在性能问题为例,当需要测试某个程序的函数的性能时,脚本可以从程序的代码***中获取程序的代码,记录函数的开始时间和结束时间。代码***中可以存放程序开发人员所编写的程序的代码的文件名、函数标识(可以包括类标识和方法标识),以及识别程序开发人员的标识信息(例如程序开发人员的账户)等信息。记录时间的方式可以是在程序的代码编译前,识别函数的函数头(即函数的入口)和结束位置,***记录开始时间和结束时间的语句。
函数运行的过程可以是通过脚本将程序代码编译后,将程序代码内各函数链接成可运行的执行程序,运行该程序,当执行到某个函数时,记录该函数的开始运行的时间,当退出该函数时记录函数的结束时间。根据所标记的开始时间和结束时间可以计算出该函数的运行时长。
在获得函数的运行时长后,确定该函数是否存在性能问题的方式可以存在多种,例如,可以设定一个第一预设值,如果运行时长超过这个第一预设值则认为该函数存在性能问题等。
从上述描述可以看出,本申请可以获得某个程序代码中每个函数的运行时长,因此方便了解单个函数的耗时情况,能够准确定位到具体的程序代码以及具体的函数,方便直观,有别于现有技术Instrument等***工具无法直观的区分单个函数,需要获取dsym函数描述文件后经过分析才可以获得哪个程序代码的哪个函数的运行状态存在异常。
另外,本申请所获得的函数的运行时长可以包括线程的切换时间,解决了在***性能测试工具中无法记录线程运行时长的问题。这是由于本申请是在程序本身的代码中***记录开始时间和结束时间的语句,以便记录该程序代码运行时的***时间,因此程序在运行时不会像***工具在测试程序性能时受到CPU分配给每个线程的时间片的影响,从而不被线程的切换时间所干扰。
作为一个实施例,如果确定函数的性能存在问题,则将该函数的日志输出,当然也可以根据业务需求,输出该程序代码的所有函数的日志,或输出该程序代码的特定函数的日志。
输出的日志中可以只包括该程序本身的函数,当然如果设计需要,也可以输出***相关的函数或者调用的第三方程序的函数。
为了能够定位到代码来源,所输出的日志中包含的关键信息至少包含存在性能问题的函数的标识,另外,还包括函数的运行时长、函数的运行时间、函数的文件名等信息中的一项或多项信息,函数的标识中可以包含该函数的类标识和方法标识。
作为一个实施例,可以根据设计的需要从日志中取出满足设定条件的函数的关键信息,例如,如果需要对日志中输出的每个函数重新优化处理,则逐一读出日志的各个函数的关键信息。再例如,虽然日志中的函数的运行时长超出了第一预设值,但如果目前需要定位的性能问题函数是针对第二预设值(这个第二预设值可以大于第一预设值),则可以通过Grep脚本根据设定的第二预设值从存在性能问题的函数的日志中获取满足条件的关键信息。
可以将提取出的存在性能问题函数的关键信息在代码***中进行查找,可以找到该函数的代码来源,例如该函数的代码所相关的程序开发人员的账户,发送通知提醒,可以将相关的日志一并发给该程序开发人员。
在一个例子中,程序开发人员在收到通知后可以对出现性能问题的函数进行优化,优化后的函数代码重新提交到代码***。本申请中执行步骤S101至S104的脚本可以周期性的或不定期的从代码***中获取程序的代码。获取的规则可以根据设计需求而定。脚本可以是被运行成一个服务的形式,***可以按照预定规则执行此脚本,例如,如果需要对某些程序进行多次重复性能测试,则无论该程序是否在之前的测试中存在性能问题的函数,均从代码***中多次获取该程序的代码进行测试。或者可以在脚本检查代码***中的代码的更新时间是否晚于上次编译的时间,如果是,则执行步骤S102至S104,如果不是,则忽略该程序的代码。
另外,在获得存在性能问题的函数的关键信息后,还可以根据关键信息对存在性能问题的函数归类,根据归类结果对存在性能问题的函数统计和分析。例如,可以将函数名作为关键字,统计包含该函数名的程序,以方便了解调用容易出现性能问题的函数,也可以通过统计函数名定位到相关的程序开发人员,对程序开发人员的代码质量进行监控等等。
以下是一个应用实例中对一个应用程序的性能测试和定位性能存在问题的函数的过程。
图2a是本应用实例的场景图。
图中在S200阶段,程序开发人甲、乙、丙等人将各自程序的代码提交到代码***S中。
在S201阶段,代码***S记录程序开发人员的账户信息、程序的文件名等信息。甲所提交的程序代码A中的函数a1、a2、a3、a4;乙所提交的程序代码B中的函数b1、b2、b3;丙提交的程序的代码C中的函数c1、c2、c3、c4、c5。
服务M是本申请执行定位函数性能问题的方法的脚本,在S202阶段,服务M被运行,测试程序的各函数的性能,并输出存在性能问题的函数的日志。过程参见图2b并进行如下描述。
S2021,服务M从代码***S中获取程序代码A;
S2022,检查该程序代码是否被编译过;
S2023,如果已经被编译过,则判断在代码***S中登记的时间是否晚于该程序代码上次的编译时间,如果未被编译过,或者程序代码A是上次编译后重新递交的新代码,则识别每个函数的函数头和函数结束位置;
S2023,在每个函数的函数头和函数结束位置***标记时间的语句;
S2024,将程序代码A进行编译和链接的打包操作;
S2025,运行打包后的程序A,记录每个函数的开始时间和结束时间;
S2026,根据函数的开始时间和结束时间计算各函数的运行时长;
S2027,将每个函数的运行时长与预设时长对比,判断是否超出预定时长,预设时长为90ms;
S2028,将运行时长超过预设时长的函数输出日志,日志中包含该函数的运行时长、函数名、运行时间、程序代码A的文件名。
S2029,通过运行Grep脚本,从输出的日志搜索运行时长超过150ms的函数名;
S2030,将提取出的函数名在代码***S中查找匹配字段,定位到上传该代码文件的账户;
S2031,向该账户发通知邮件,可以将日志一并发给该账户。
S202阶段服务M对程序代码B和程序代码C的处理过程可参照图2b,不再赘述。
服务M所输出的存在性能问题的日志程序代码A的日志和程序代码B的日志。程序代码A中存在性能问题的函数为a1,程序代码B中存在性能问题的函数为b2、b3。
在S203阶段,服务M向甲和乙发送通知邮件。
甲和乙对存在性能问题的函数进行优化,优化后提交到代码***S,代码***S收到新提交的程序代码后所做的处理以及服务M再次获取程序代码后所做的处理不再赘述。
与前述定位函数性能问题的方法的实施例相对应,本申请还提供了定位函数性能问题的装置的实施例。
本申请定位函数性能问题的装置的实施例可以应用在计算机设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在计算机设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图3所示,为本申请定位函数性能问题的装置所在计算机设备的一种硬件结构图,除了图3所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的计算机设备通常根据该计算机设备的实际功能,还可以包括其他硬件,对此不再赘述。
请参考图4,定位函数性能问题的装置400,包括:
性能测试模块401,用于获取程序的代码,确定程序的代码中存在性能问题的函数,并生成存在性能问题的函数的日志;
提取模块402,用于从日志中获取关键信息,所述关键信息包括存在性能问题的函数的标识;
定位模块403,用于根据所述关键信息定位存在性能问题的函数的代码来源。
在一个实施例中,性能测试模块401还可以用于:
记录函数的开始时间和结束时间;
根据所述开始时间和结束时间计算函数的运行时长。
另外,性能测试模块401确定存在性能问题的函数可以包括:
如果函数的运行时长超过第一预定值,则确定函数是存在性能问题的函数。
关键信息还可以包括以下至少一项:
函数的运行时长、函数的文件名、函数的运行时间、提交所述程序的代码的账户名。
在一个实施例中,提取模块402从存在性能问题的函数的日志中获取关键信息可以包括:
通过Grep脚本根据第二预定值从存在性能问题的函数的日志中获取关键信息。
定位模块403还可以用于确定存在性能问题的函数的代码来源后,发送通知提醒。
另外还可以包括统计模块(图中未示出),用于从根据所述提取模块获取的关键信息对存在性能问题的函数归类,根据归类结果对存在性能问题的函数统计和分析。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (15)

1.一种定位函数性能问题的方法,其特征在于,该方法包括步骤:
获取程序的代码;
确定程序的代码中存在性能问题的函数,并生成存在性能问题的函数的日志;
从所述日志中获取关键信息,所述关键信息包括存在性能问题的函数的标识;
根据所述关键信息定位存在性能问题的函数的代码来源。
2.根据权利要求1所述的方法,其特征在于,所述方法通过脚本执行。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在程序的代码中记录各个函数的开始时间和结束时间;
根据所述开始时间和结束时间计算各个函数的运行时长。
4.根据权利要求3所述的方法,其特征在于,确定存在性能问题的函数包括:
如果所述函数的运行时长超过第一预定值,则确定所述函数是存在性能问题的函数。
5.根据权利要求1所述的方法,其特征在于,所述关键信息还包括以下至少一项:
函数的运行时长、函数的文件名、函数的运行时间、提交所述程序的代码的账户名。
6.根据权利要求1所述的方法,其特征在于,从存在性能问题的函数的日志中获取关键信息包括:
通过Grep脚本根据第二预定值从存在性能问题的函数的日志中获取关键信息。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:确定存在性能问题的函数的代码来源后,发送通知提醒。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:根据所述关键信息对存在性能问题的函数归类,根据归类结果对存在性能问题的函数统计和分析。
9.一种定位函数性能问题的装置,其特征在于,包括:
性能测试模块,用于获取程序的代码,确定程序的代码中存在性能问题的函数,并生成存在性能问题的函数的日志;
提取模块,用于从所述日志中获取关键信息,所述关键信息包括存在性能问题的函数的标识;
定位模块,用于根据所述关键信息定位存在性能问题的函数的代码来源。
10.根据权利要求9所述的装置,其特征在于,所述性能测试模块还用于:
在程序的代码中记录函数的开始时间和结束时间;
根据所述开始时间和结束时间计算函数的运行时长。
11.根据权利要求10所述的装置,其特征在于,所述性能测试模块确定存在性能问题的函数包括:
如果所述函数的运行时长超过第一预定值,则确定所述函数是存在性能问题的函数。
12.根据权利要求9所述的装置,其特征在于,所述关键信息还包括以下至少一项:
函数的运行时长、函数的文件名、函数的运行时间、提交所述程序的代码的账户名。
13.根据权利要求9所述的装置,其特征在于,所述提取模块从存在性能问题的函数的日志中获取关键信息包括:
通过Grep脚本根据第二预定值从存在性能问题的函数的日志中获取关键信息。
14.根据权利要求9所述的装置,其特征在于,所述定位模块还用于确定存在性能问题的函数的代码来源后,发送通知提醒。
15.根据权利要求9所述的装置,其特征在于,还包括统计模块,用于从根据所述提取模块获取的关键信息对存在性能问题的函数归类,根据归类结果对存在性能问题的函数统计和分析。
CN201510974603.6A 2015-12-22 2015-12-22 定位函数性能问题的方法及装置 Pending CN106909431A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510974603.6A CN106909431A (zh) 2015-12-22 2015-12-22 定位函数性能问题的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510974603.6A CN106909431A (zh) 2015-12-22 2015-12-22 定位函数性能问题的方法及装置

Publications (1)

Publication Number Publication Date
CN106909431A true CN106909431A (zh) 2017-06-30

Family

ID=59200110

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510974603.6A Pending CN106909431A (zh) 2015-12-22 2015-12-22 定位函数性能问题的方法及装置

Country Status (1)

Country Link
CN (1) CN106909431A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108108283A (zh) * 2017-12-21 2018-06-01 五八有限公司 标签添加方法、装置、计算机可读存储介质及设备
CN108549600A (zh) * 2018-03-29 2018-09-18 珠海市魅族科技有限公司 一种性能分析方法及装置、服务器和可读存储介质
CN108595319A (zh) * 2018-03-30 2018-09-28 阿里巴巴集团控股有限公司 函数选取方法和服务器
CN109491907A (zh) * 2018-11-05 2019-03-19 网易(杭州)网络有限公司 一种卡顿检测方法、装置、电子设备和存储介质
CN110941553A (zh) * 2019-11-22 2020-03-31 山东英信计算机技术有限公司 一种代码检测方法、装置、设备及可读存储介质
CN111427755A (zh) * 2020-03-10 2020-07-17 苏州浪潮智能科技有限公司 一种分布式文件***的io分析方法、装置、设备和介质
CN112328259A (zh) * 2020-11-26 2021-02-05 北京五八信息技术有限公司 一种编译时长的处理方法和装置
WO2021190354A1 (zh) * 2020-03-26 2021-09-30 华为技术有限公司 一种采集追踪trace调用链的方法和电子设备
CN113778516A (zh) * 2021-09-15 2021-12-10 山东派盟网络科技有限公司 一种优化性能的方法、装置及设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101320350A (zh) * 2008-07-17 2008-12-10 金蝶软件(中国)有限公司 一种性能监控方法及装置
CN101770422A (zh) * 2008-12-30 2010-07-07 鸿富锦精密工业(深圳)有限公司 软件Bug追踪方法及其计算机***
CN105045714A (zh) * 2015-07-25 2015-11-11 北京金山安全软件有限公司 一种应用软件启动时长的测试方法、装置及终端

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101320350A (zh) * 2008-07-17 2008-12-10 金蝶软件(中国)有限公司 一种性能监控方法及装置
CN101770422A (zh) * 2008-12-30 2010-07-07 鸿富锦精密工业(深圳)有限公司 软件Bug追踪方法及其计算机***
CN105045714A (zh) * 2015-07-25 2015-11-11 北京金山安全软件有限公司 一种应用软件启动时长的测试方法、装置及终端

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108108283A (zh) * 2017-12-21 2018-06-01 五八有限公司 标签添加方法、装置、计算机可读存储介质及设备
CN108549600A (zh) * 2018-03-29 2018-09-18 珠海市魅族科技有限公司 一种性能分析方法及装置、服务器和可读存储介质
CN108595319A (zh) * 2018-03-30 2018-09-28 阿里巴巴集团控股有限公司 函数选取方法和服务器
WO2019184597A1 (zh) * 2018-03-30 2019-10-03 阿里巴巴集团控股有限公司 函数选取方法和服务器
CN108595319B (zh) * 2018-03-30 2020-08-04 阿里巴巴集团控股有限公司 函数选取方法和服务器
CN109491907A (zh) * 2018-11-05 2019-03-19 网易(杭州)网络有限公司 一种卡顿检测方法、装置、电子设备和存储介质
CN110941553A (zh) * 2019-11-22 2020-03-31 山东英信计算机技术有限公司 一种代码检测方法、装置、设备及可读存储介质
CN111427755A (zh) * 2020-03-10 2020-07-17 苏州浪潮智能科技有限公司 一种分布式文件***的io分析方法、装置、设备和介质
CN111427755B (zh) * 2020-03-10 2022-07-26 苏州浪潮智能科技有限公司 一种分布式文件***的io分析方法、装置、设备和介质
WO2021190354A1 (zh) * 2020-03-26 2021-09-30 华为技术有限公司 一种采集追踪trace调用链的方法和电子设备
CN112328259A (zh) * 2020-11-26 2021-02-05 北京五八信息技术有限公司 一种编译时长的处理方法和装置
CN113778516A (zh) * 2021-09-15 2021-12-10 山东派盟网络科技有限公司 一种优化性能的方法、装置及设备

Similar Documents

Publication Publication Date Title
CN106909431A (zh) 定位函数性能问题的方法及装置
Zhang et al. Robust log-based anomaly detection on unstable log data
US11663405B2 (en) Machine learning applications for temporally-related events
Batista et al. Applying one-sided selection to unbalanced datasets
US10884893B2 (en) Detecting software build errors using machine learning
Kim et al. Dealing with noise in defect prediction
Grano et al. Exploring the integration of user feedback in automated testing of android applications
Kim et al. Crash graphs: An aggregated view of multiple crashes to improve crash triage
Beyer et al. Automatically classifying posts into question categories on stack overflow
Ni et al. Cost-effective build outcome prediction using cascaded classifiers
CN109886290A (zh) 用户请求的检测方法、装置、计算机设备及存储介质
CN109936561A (zh) 用户请求的检测方法、装置、计算机设备及存储介质
US20120150825A1 (en) Cleansing a Database System to Improve Data Quality
WO2019200705A1 (zh) 自动生成完形填空试题的方法以及装置
CN108207119B (zh) 对损坏网络连接的基于机器学习的识别
CN109783365A (zh) 自动化测试方法、装置、计算机设备及存储介质
CN110162360A (zh) 智能帮助方法、装置及计算机可读存储介质
WO2020096665A2 (en) System error detection
US20150089296A1 (en) Derivation of generalized test cases
CN107392018A (zh) 应用程序脱壳方法及装置
US20180293160A1 (en) Comparing software projects having been analyzed using different criteria
Hu et al. Deep self-taught learning for detecting drug abuse risk behavior in tweets
WO2017074401A1 (en) User interaction logic classification
CN113360376A (zh) 埋点测试方法和装置
CN110502591A (zh) 一种数据提取方法、装置及设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20200922

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20200922

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Applicant before: Alibaba Group Holding Ltd.

TA01 Transfer of patent application right
RJ01 Rejection of invention patent application after publication

Application publication date: 20170630

RJ01 Rejection of invention patent application after publication