草庐IT

性能分析

全部标签

javascript - Web Worker 性能降低 20 倍

我似乎无法在任何地方找到明确的答案。我有一个非常简单的POC,可以以同步和异步方式计算相同的函数。worker.jsonmessage=function(e){vars=newDate().getTime();i=0;varavg=Math.random();while(i索引.htmlvarmw=newWorker("worker.js");mw.onmessage=function(e){console.log('Workersays:'+e.data);};functionav(j){vars=newDate().getTime();i=0;varavg=Math.random(

javascript - 通过 CPU 交易 RAM(性能问题)

我正在使用一个处理文件的程序,我可以做几件事,比如重命名它们、读取它们的内容等。今天我按如下方式初始化它:returnnewPromise((resolve,reject)=>{glob("path/for/files/**/*",{nodir:true},(error,files)=>{files=files.map((file)=>{//propertieslikefullname,basename,extension,etc.});resolve(files);});});因此,我读取特定目录的内容,返回数组中的所有文件,然后使用Array.map遍历数组并更改具有属性的对象的路

javascript - 测试压缩 JavaScript 代码的性能增益

我使用了5个JavaScript压缩器来压缩一个JavaScript库(JSMin、YUI压缩器、Packer、闭包编译器和UglifyJS)现在我知道闭包编译器是减少文件大小的赢家。但是,我也想测试性能提升。执行此操作的好方法是什么?我制作了一个简单的测试页面,它使用了该库的所有公共(public)方法。有没有工具可以测试这个测试页面的页面速度?例如。在浏览器上运行X次并返回平均加载速度。感谢您的回答! 最佳答案 没必要说得太复杂:vartime=newDate();...morescripts...document.write(

java - 适用于网络的高性能pdf查看器

我需要一个高性能的解决方案来在没有任何插件的情况下在网页上显示*.pdf文件(每个文件100〜250Mb,扫描的文档)。Icepdf没有所需的选项,例如兑现,自动设置质量,缩略图预修复。此外,它仅具有基本的WebUI组件。最适合在客户端使用javascript,在服务器端使用java的解决方案,但也欢迎使用其他技术。 最佳答案 您可以在服务器端使用AcrobatSDK(这需要在Windows上运行服务器)。在Servlet中,您可以提取每个页面和一个JPG文件,然后显示它。您将需要构建用于导航的控件。除此之外,我不认为您要的东西存在

javascript - 如何在 React 16 中进行性能分析

React文档声明react-addons-perf不适用于React16,但Chrome'sbuilt-intoolsprovideequivalentfunctionality。我还没有发现这种情况。例如,假设我犯了一个经典错误,即没有在元素列表(democodeisonGitHub)中包含正确的key:render(){constitems=this.state.items.map((item,index)=>)returnAdditem{items};}key={index}问题将导致每个ListItem在我将项目添加到列表时重新呈现。使用React15perf工具,我可以很容

javascript - 等待一个已经完成的 Promise 的性能开销是多少?

在做代码审查时,我最近遇到了这样的代码块:constpromises=[];constdata=[];for(letpieceofpieces){for(letchunkofpiece){promises.push(execute(chunk));//executereturnsapromisewhichisnotyetfulfilled}data=awaitPromise.all(promises);}这里的pieces是一个数组的数组。请注意,由于某些限制,我们无法立即等待所有Promise,因此需要进行这种分块。在我的反馈中,我写道这似乎是一种反模式,因为我们也在等待Promis

javascript - PhoneGap 应用程序的最佳分析?

在phonegap应用程序中跟踪用户操作的最佳方式是什么?我正在使用PhoneGapBuild来构建一个纯JS/CSS/HTMLSenchaTouch应用程序,所以我无法访问其他任何东西。GoogleAnalytics仅适用于连接的事件,我相信我的大部分应用程序使用都是在网络之外进行的。有哪些解决方案?我愿意为值得使用的东西付费。 最佳答案 由于接受的答案无效,因为该插件不再存在,我只想提及我为此目的检查过的插件。实际上有3个(还有一些处于测试阶段):https://github.com/phonegap-build/GAPlugi

Javascript 分析代码操作(G. Analytics)

为了我的工作,我正在做一个关于GoogleAnalytics有效性的研究项目(主要是关于flippa上经过验证的报告)-->看看是否有可能完全伪造G.Analytics(一个简单的Yes不会削减它)!我修改了G.Analytics代码如下:var_gaq=_gaq||[];_gaq.push(['_setAccount','UA-19629541-5']);_gaq.push(['_setAllowHash',false]);_gaq.push(['b._setAccount','UA-19629541-5']);_gaq.push(['b._setAllowHash',true]);

javascript - 如何对一个JS数组进行批量排序(为了性能)

我有一个JS应用程序需要对一个大数组进行复杂的排序然后显示它。使用内置的array.sort(cb)方法处理我的数据最多可能需要1秒。这足以让我的UI变得卡顿。因为UI的高度仅足以在屏幕上显示已排序数组的一个子集,而其余部分位于滚动条下方或已分页,所以我有了一个想法。如果我创建一个遍历大型数组的算法并快速排序,使得前N项完全排序,但数组中的其余项排序不完全,会怎样?每次我运行我的算法时,它都会从上到下对数组进行更多排序。这样我就可以将我的处理分解成block并拥有流畅的用户界面。在最初的几秒钟内,数组不会被完美排序,但缺陷会在滚动条下方,因此不会被注意到。我天真的解决方案是编写我自己的

javascript - Chrome 开发工具的性能分析结果中的监听器

我一直在使用Chrome开发工具分析React应用程序,我发现Listener数量呈线性增长。看看下面的截图。Listeners为橙色。我将其缩小为在p标签内呈现一个简单的倒计时值。剩余时间每1000毫秒使用setInterval函数生成一次,然后在p标记内进行格式化和渲染。我使用create-react-app创建了一个简单的React应用程序,并修改了App.js的App组件内的代码以每秒更新Date.now()的值,当我运行时分析器,我得到了相同的结果。classAppextendsComponent{state={text:'',};loop(){this.setState({