美文网首页
关于内存快照的上传下载和分析

关于内存快照的上传下载和分析

作者: well4050 | 来源:发表于2019-08-15 22:14 被阅读0次

    1、基本流程

    上传:手机端点按钮生成内存快照,自动上传到服务器

    下载:Jenkins定时触发下载程序,从服务器获取最新的内存快照文件名称,并下载,并通知服务器删除该文件。

    分析:下载程序下载内存快照文件到本地后,调用Unity编辑器模式下的静态函数,分析该内存快照,生成.json文件。

    2、Jenkins配置相关

    安装好Jenkins后(https://jenkins.io/zh/doc/pipeline/tour/getting-started/),新建Item,类型为Freestyle Project。

    点这个project的“配置”,

    在“构建触发器”部分,勾选“Build periodically”,填“日程表”为“H/2 * * * *”,表示每2分钟触发一次(已经是最小时间间隔),也可以配置为其他数字。

    在“构建”部分,点“增加构建步骤”,“Execute Windows Batch Command”,填写downloader.bat的完整路径,保存。

    3、服务器部分

    使用xampp,打开xampp-control.exe控制面板,点start Apache,其他不用开。

    根据配置的端口号,把防火墙的该端口号打开。

    把php.ini里的upload_max_filesize和post_max_size的值改大一些。这里设置了upload_max_filesize=1024M,post_max_size=1024M。

    设置虚拟目录snapshot,用来存放快照文件,方法见搜索引擎。

    期间可能还会遇到其他问题,搜索引擎解决。

    三个php文件:

    SnapshotUpload.php:用来接收手机端上传的快照文件。可以通过类似 http://61.129.46.203:8081/SnapshotUpload.php 格式的URL进行访问。

    $_REQUEST['Name']、$_REQUEST['OperatingSystem']、$_REQUEST['Version']分别用来获取手机端程序里的WWWForm.AddField()添加的三个字段,name是快照文件名,另外再生成.info文件用来保存OperatingSystem、Version等信息。

    GetLatestSnapshotName.php:通过它可以获取最新的快照文件名。有个小细节是,限定了要同时有xx.snap和xx.info存在。

    DeleteSnapshot.php:删除指定的快照文件。

    4、处理下载和分析的程序

    downloader.bat:

    用于下载的批处理文件。

    其中,“D:\aa\profiler.exe -batchmode -localPath D:\bb -analyzeOutputPath D:\cc”,D:\aa是profiler.exe所在目录,D:\bb是下载的快照文件存放的目录,D:\cc是分析快照文件后输出的.json文件存放的目录。

    profiler.exe:

    用Unity API写的下载程序,下载完快照文件后,会触发snapshotAnalyze.bat(需要把它放在profiler.exe所在的目录下),用于分析内存快照。

    snapshotAnalyze.bat:

    其中,“D:\cc\unity.exe -projectPath D:\dd -batchmode -executeMethod "CustomProfiler.Editor.Menu.LoadSnapshotCMD" -quit -snapshotPath %1 -outputPath %2”,

    D:\cc是unity.exe所在目录,D:\dd是分析内存快照的Unity工程目录(内存快照分析只能在编辑器模式下执行,所以采用这种方式);CustomProfiler.Editor.Menu.LoadSnapshotCMD是执行快照分析的静态函数;

    %1表示从调用者profiler.exe传入的内存快照文件路径,%2表示表示从调用者profiler.exe传入的即将要输出的分析结果.json文件路径。

    把上面提到的4个路径(D:\aa,D:\bb,D:\cc,D:\dd)修改为实际路径即可。

    相关文章

      网友评论

          本文标题:关于内存快照的上传下载和分析

          本文链接:https://www.haomeiwen.com/subject/nlftsctx.html