草庐IT

Feign的性能优化

全部标签

javascript - 如何在单页(Web)应用程序上进行 "end-client"性能测试?

我们正在评估如何在single-pageapplication(SPA)上测试性能这在很大程度上依赖于JavaScript和动态内容(通过Ajax更新)。流行的负载测试工具,如ApacheJMeter或Gatling能够通过发送HTTP请求用很少的硬件产生巨大的负载。但它们不处理任何Javascript代码。我们想衡量客户端感知的性能,即坐在浏览器前的最终用户感知的性能(包括所有渲染和JavaScript开销)。我们考虑了以下备选方案:使用SeleniumGrid在多台机器上同时运行测试脚本。每个实例都将在运行时收集的延迟数据提交到中央存储库。与上面类似,只是只启动了一个Seleniu

javascript - EmberJS 和 Rails 4 API 的性能问题

我有一个由Rails4RESTAPI提供支持的EmberJS应用程序。该应用程序目前运行良好,但根据正在执行的查询类型,它变得非常缓慢。目前API输出如下:"projects":[{"id":1,"builds":[1,2,3,4]}]当用户有很多项目,其中有很多构建在它们之间拆分时,就会出现问题。EmberJS当前查看builds键,然后向/builds?ids[]=1&ids[]=2发出请求,这是我想要的那种行为。这个问题可能有两个解决方案之一。更新Rails以更有效地加载build_ids更新EmberJS以支持不同的构建查询选项1:更新Rails我已经尝试了各种关于预加载和使用

javascript - setPrototypeOf 对新对象的性能影响是什么?

MDN暗示使用.setPrototypeOf()会对代码的future性能产生不良影响。我还阅读了一些关于为什么更改对象的[[Prototype]]会降低性能的问题。但是没有一个答案真正解释了后台发生的事情。所以我想知道这是否也适用于新对象。我特别喜欢做这样的事情:varMyPrototype={method1:function(){...},method2:function(){...},...};varnewObject=Object.setPrototypeOf({property:1,property2:'text'},MyPrototype);不幸的是,您不能使用Object

javascript - Google map v3 性能问题

我遇到了googlemapsv3api的大量性能问题,并且在搜索此问题时找不到任何有类似问题的人。这个问题可以在任何浏览器上看到,但我在这里关注Chrome。症状:当我放大或缩小map时,FPS速率会急剧下降,从而导致极其糟糕的体验。我的代码:我使用他们的文档和最简单的示例实现了谷歌地图。SimpleMaphtml,body{height:100%;margin:0;padding:0;}#map{height:100%;}varmap;functioninitMap(){map=newgoogle.maps.Map(document.getElementById('map'),{ce

javascript - 处理大型集合时优化 jQuery 选择器/addBack()

我使用jQuery有意从一个可能很大的html表中的元素中删除css类。请参阅下文,了解我这样做的原因。目前我是这样做的:vartableElements=$("#TreeListElemente").find("*").addBack();tableElements.removeClass("dxtldxtl__B2dxtl__B0dxtlSelectionCelldxtlHeaderdxtl__B3dxtlControldx-wrapdxtl__IMdxeHyperlink");表格有时很大并且有很多元素。我想加快页面加载/DOM操作。IE的内置Javascript分析器告诉我,尤

javascript - 为什么 V8 不能优化 try-catch-finally?

为什么V8无法优化try-catch-finallyblock,而其他著名的运行时(SpiderMonkey、Chakra)似乎对此没有问题? 最佳答案 除了问题的优先级相对较低外,没有特别的原因。这会在某个时候进行优化看看这个chromiumv8issue1065如果您以v8为目标,您可以将try-catch移动到单独的函数,但只有当它是一个真正的性能问题时才应该这样做,否则它只是过早的优化。"Programmerswasteenormousamountsoftimethinkingabout,orworryingabout,th

javascript - Redux 中的性能和 mergeProps

在我的redux容器中,我必须派发相当复杂的操作,从商店中获取大量属性。在不破坏性能的情况下,我无法找到解决问题的正确模式。让我们以仅包含发送消息的发送按钮的容器为例:(对于这样一个小例子,以下任何一种方法都可以很好地工作,我只是想说明我在更大的容器中遇到的问题。)天真的方法-将所有参数传递给组件functionmapStateToProps(state){return{user:selectors.selectedUser(state),title:selectors.title(state),message:selectors.message(state),};}functiond

javascript - 响应长键值对组件的性能影响

字符串的长度如何应用于从某些数据集创建的某些组件集合,如下所示:{this.state.list.map(item=>{consturl=item.url;return();})}有什么限制吗?具有长键值对性能有何影响?背景。有时我们需要创建很长的项目列表(例如带有大量参数编码的url),并且只有合适/唯一的东西才能用作自然键是这个很长的东西。 最佳答案 您用于key的字符串的长度不应影响性能。Javascript中的字符串是不可变的,另外现代Javascript引擎使用字符串实习,这意味着当您的解释器正在检查是否'/some/ur

javascript - FullCalendar - 我应该期望什么级别的事件呈现性能?

我正在使用$('#CalendarPlugin').fullCalendar('renderEvent',{});在FullCalendar中渲染100个事件,在一个循环中被调用100次。我在计算机上看到的浏览器性能(Core26600@2.4GHz和4GBRAM)Chrome:3秒Firefox:6秒IE9:6秒这是预期的性能水平吗?有没有更快的方法来加载和呈现事件?将它们添加到FullCalendar后,可以在月份之间移动并更快地重新呈现它。只是使用renderEvent初始加载它们很慢。 最佳答案 开发人员正致力于1.4.4版

javascript - 使用 Closure Compiler 简单优化从函数内部删除调试代码

我正在寻找一种从函数中删除调试代码的方法,以便我可以将测试Hook添加到闭包中。我读了GoogleClosureCompileradvanced:removecodeblocksatcompiletime并测试了使用以下命令删除调试代码:/**@define{boolean}*/varDEBUG=true;if(DEBUG){console.log('removeme');}使用--define='DEBUG=false'的简单优化将其减少为varDEBUG=!1;。这同样适用于此:/**@const*/varDEBUG=false;if(DEBUG){console.log('rem