内容字号:默认大号超大号

段落设置:段首缩进取消段首缩进

字体设置:切换到微软雅黑切换到宋体

消息队列_腾讯云盘怎样_返现

2021-07-21 03:34 出处:欧普曼云计算 人气: 评论(0

前文

这次是关于性能问题分析方法的博客。

本次将对基本指南和SAP SQL Anywhere所有版本中可使用的日志获取方法进行说明。

问题的划分

试着总结了问题分析的对应方针。

注)请将此作为1例进行考虑。

这个按这个顺序来处理会比较好,但是实际上为了尽快解决,同时进行的情况比较多。这种情况会给最终用户添麻烦。为了减少那个,应该考虑怎么做才能减少整体的手续。

将数据库原样保存,SQL Anywhere中只要不是使用Interactive SQL直接执行SQL的使用方法,性能问题大部分情况下都会作为应用的性能问题向终端用户报告。

本报告分为指整个应用程序和特定处理两种。*①

但是,并不是直接捕捉终端用户的报告,而是需要确认和分析其是否正确。*②

这需要更详细的听力,实际测量应用程序的处理时间等。这个工作本身在之后报告性能改善时的"改善前"项目中使用,所以不是无用的工作吧。分清是真的整体问题还是一部分问题是很重要的。

整体来说较慢的情况下,原本硬件和网络资源就不足,物联网流量卡,或者应用程序构成和数据库结构存在问题。如果说特定的处理慢的话,就把那个处理再分开。*③

终端用户所能看到的处理说到底只是应用程序上的处理。例如,如果是按下某个按钮来显示检索结果的处理,应用程序内部会播放针对按下按钮的处理程序→SQL语句的执行→结果的接受→结果的显示这样的处理。其他还有"DB的连接断开""应用程序内的其他处理"等。有必要调查其中处理需要多长时间。为了使这个简单,应用方面应该准备好可以输出包括时间在内的日志的模式。也有使用应用开发环境的调试器的方法,但是不太现实吧。

当应用程序侧没有日志的输出功能时,请拔出该处理中执行的SQL,发发淘客神器,通过Interactive SQL执行,并测量处理时间。虽然缺乏正确性,但大致上是标准。

Interactive SQL中的处理时间可能会有助于判断通过取得等顺序处理输出结果时的判断。

该代码时reader.Read()从数据库中逐行获取"SELECT Surname FROM Employees"的结果,并将光标移到下一行。while循环结束是到达结果行的最后时。

在上述代码的情况下,注释输出的"某些处理"部分很重要。

Interactive SQL中的测量结果与实际代码上的处理速度太不同时,应怀疑该结果的处理部分。另外,如果出现某个特定的行的话,不全行都要读完,根据逻辑的不同,手游返利,很难判断。还是最好在开发时加入像

那样取得日志的机构。

SAP SQL Anywhere方面也准备了便于判别该问题的机构,但要与应用程序的代码进行对照,如果不单独进行该处理,则很难判断。

这样做的话,就可以判断问题是应用程序还是数据库方面来对应了。在使用数据库的应用程序中,处理速度是应用程序侧处理和数据库侧处理的合并。

对了对了对了对了,上面的"不现实吧"就结束了,正如上次博客中所说的那样,作为SQL Anywhere的特征,数据库文件只需复制就可以在其他机器上使用。如果能得到客户的数据库文件(的复印件),就可以利用该数据库文件进行问题解析。因为在开发环境中也能使之动作,所以可以使用调试器。

请求Logging

所有版本都可以使用的SAP SQL Anywhere侧的处理Logging方法有"要求Logging"。如何在文本文件中逐次记录SQL的执行。

使用请求Logging有作为SAP SQL Anywhere启动时的选项设定的方法和对sa server option系统过程中启动中的数据库服务器设定的方法两种。

启动时的选项如下所示。这是在Ver.17的网络引擎(dbsrv)中的例子,个人引擎(dbeng)也可以运行,通过改变17的部分,其他版本也可以运行。

请在当前使用的其他选项后添加该-zr和-zo。

虽然不是必须的,但使用时推荐在-zo中设置日志的输出位置。如果没有指定此项,将向在-o中指定输出目标的消息日志输出请求日志。另外,数据分析和大数据,将扩展名设为".log"会与数据库文件的日志文件混淆,会造成故障,所以不太推荐。

-zr获取哪个日志。如果是一般的应用程序的话,我觉得"SQL、PROCEDURES、TRIGGERS"比较好。NONE是不取得日志的设定,但是不会用-zr设定吧。(相当于不加-zr)

通过sa server option系统程序设定时,如上述情况,如下所示。

这将通过Interactive SQL等连接数据库来执行。

上一句相当于-zo,怎么成为淘客,-zr设定为下一句。

顺序应如上所述先设定RequestLogiFile。这是程序的处理,请注意与SQL语句的规则相同,使用Windows时要像\一样重复表示路径的\(圆形标记)。

此外,启动时可以通过指定-zr选项开始,用CALLsa server option("RequestLogging"、"NONE")停止。(在运行数据库的同时仅停止请求Logging的方法。)

输出的日志如下。

说实话,我不太清楚。但是仔细看的话,我想你会知道实行的SQL是包含SELECT语句输出的。作为此时的重要点,也会输出SELECT语句因为是从文件的开头到后面处理的,所以取得前后关系。还记录了应用程序未明确执行的SQL Anywhere、Interactive SQL、SQL Central(Sybase Central)和驱动程序类内部执行的SQL。可以列举

只需取得所执行的SQL语句即可继续查看该输出的日志,但已准备了分析用的系统程序,因此最好通过该程序查看。

请求日志的分析

请启动Interactive SQL并连接到适当的数据库。样品的demo.db但是也可以。(当然也可以是取得了日志的数据库)然后(如果是上述取得的日志)执行以下SQL语句。

这将分析在sa get request简介系统程序中获取的请求日志,并将结果输出到临时表中的SATMP request time和SATMP request简介。(用SELECT语句阅览。)

在我的情况下,这3个句子经常是一起执行的。并且为了使最重视的列降序,追加了ORDER BY。这是我的情况,所以不需要ORDER BY。

执行后,结果集返回2个:。(请注意画面下方的标签。)

结果集1为SATMP request time的SELECT结果。也就是请求日志分析的结果。结果中最重要的是

分享给小伙伴们:
本文标签: 消息队列腾讯怎样返现

相关文章

评论

发表评论愿您的每句评论,都能给大家的生活添色彩,带来共鸣,带来思索,带来快乐。

签名: 验证码: 点击我更换图片

评论列表