我有一个控制器,正在向仪表板页面获取一些信息。由于我们使用的是waterline的populate()函数(我们使用的是sails.js),因此它必须处理大量信息,这实际上是在调用整个数据库。除了需要重写模块以提高性能外,我想知道为什么它没有使用更多的可用CPU和RAM来更快地工作。我正在监视Cloud VPS服务器上的CPU和RAM使用情况,并且一直仅使用少于10%的CPU和少于50%的RAM。所以我的问题很简单:为什么即使渲染需要15秒以上的时间,控制器也不使用更多的CPU?
答案 0 :(得分:2)
通常,Node.js(或Sails.js)会尽力使用尽可能多的CPU和RAM,以实现完美性能。
因此,不要考虑CPU资源,而是尝试修改一些代码。也许您有一些循环需要很多时间才能执行,或者您正在发送大量要在视图中呈现的数据。
如果不需要的话,也不要使用 <%-暴露LocalsToBrowser()%> 。否则,您会发现自己将局部变量发送到客户端(用户的浏览器),这会花费很多时间。