`
liangyuliang0335
  • 浏览: 6419 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

关于nodejs 插件 jsdom内存泄漏,应该注意的问题

阅读更多

 

在我开发的网站 [爱比物价跟踪]http://www.etao3c.com时,使用nodejs用于数据抓取,其中用到的解析页面的插件有jsdom, jquery, 刚开始数据量不是很大的时候,抓取没有遇到任何的问题,后来,需要抓取的页面很多(万级别以上),程序就开始包内存溢出, 

之后,去google找答案,说是jquery的问题,没有办法我就把jquery去掉了,但是跑了一会,发现还是报统一的错误,最后发现是jsdom的问题,

就是说在使用完dom的时候,没有回收相应的垃圾信息,所以需要,我们自己在调用jsdom.evn使用完dom后,调用一下window.close,只要gc就可以收集垃圾内存

 

大家可以在执行node 加入--trace_gc 看 一下内存清空,就一目了然

 

0
1
分享到:
评论
3 楼 by5739 2012-04-24  
liangyuliang0335 写道
by5739 写道
请问你做这个的时候jquery和jsdom的版本是多少?我现在用最新版本,2个都报错,运行不了


这个和版本没有什么关系,只是你要记住在是jsdom的时候,要手动window.close,这样就可以释放内存了

http://cnodejs.org/topic/4f7102de8a04d82a3d1c1edb 你可以看一下这个

谢谢哈...我这边还是跑不起来..代码里面报错..我换了一个叫select的module去解析页面了..
2 楼 liangyuliang0335 2012-04-23  
by5739 写道
请问你做这个的时候jquery和jsdom的版本是多少?我现在用最新版本,2个都报错,运行不了


这个和版本没有什么关系,只是你要记住在是jsdom的时候,要手动window.close,这样就可以释放内存了

http://cnodejs.org/topic/4f7102de8a04d82a3d1c1edb 你可以看一下这个
1 楼 by5739 2012-04-21  
请问你做这个的时候jquery和jsdom的版本是多少?我现在用最新版本,2个都报错,运行不了

相关推荐

    nodejs插件:Jenkins nodejs插件

    Jenkins的NodeJS插件 为NodeJS和npm软件包提供Jenkins集成。 下载与安装 您可以下载并从“管理插件”菜单安装它,或直接从“插件更新中心”安装此插件。 主要特点 提供NodeJS自动安装程序,可以根据需要创建任意...

    global-jsdom:在Node.js中启用DOM

    全局jsdom 在Node.js中启用DOM global-jsdom将document , window和其他DOM API注入到您的Node.js环境中。 这使您可以在Node.js中运行浏览器测试。 在global设置的特定属性直接来自您已安装的jsdom版本。安装要求> =...

    nodeJs内存泄漏问题详解

    随着node,react同构等技术地广泛运用,node端内存泄漏等问题应该引起我们的重视。为什么node容易出现内存泄漏以及出现之后应该如何排查,下面通过一个简单的介绍以及例子来说明。 首先,node是基于v8引擎基础上,其...

    SublimeText 3 Nodejs 插件

    "SublimeText 3 Nodejs 插件" 主要是为了帮助 SublimeText 3 用户更好地进行 Node.js 开发。这些插件通常包含以下功能: 1. **自动完成**:提供智能提示,自动补全 Node.js 的内置模块、方法和变量,节省编码时间。...

    nodejs图片合成源代码,gm插件

    nodejs利用gm插件合成图片源码片段

    Node.js-优秀实用的VSCode插件集合

    以下是一些针对Node.js开发和其他杂项的优秀且实用的VSCode插件,它们能够帮助你优化编程体验。 1. **ESLint**: 这个插件对JavaScript代码进行实时静态分析,检查语法错误、潜在问题,并遵循特定的编码规范。它可以...

    看我如何搞定Nodejs内存泄漏问题

    突然发现,我竟然不知道怎么排查nodejs的内存泄漏,吓死宝宝了!花时间看了一下相关资料(google真好,外果仁真屌),看来这部分也已经有比较完善的方法论+工具了。所以这篇文章记录一下自己从不懂到入门的经历~~我希望...

    creator nodejs js笔记

    【标题】:“creator nodejs js笔记” 这篇笔记主要聚焦在CocosCreator游戏开发环境中,如何结合Node.js和JavaScript进行高效能的应用程序开发。Node.js是一个开放源代码、跨平台的JavaScript运行环境,它允许...

    nodejs环境搭建.docx

    1. 将包含jsdom相关文件的压缩包解压到一个目录,例如`C:\nodejs\jsdom_files`。 2. 打开Cygwin,通过`cd`命令进入`C:\nodejs\jsdom_files`目录。 3. 输入`npm install`命令,这会安装jsdom及其依赖,如果看到成功的...

    NodeJS-212.5080.16.zip

    标题中的"NodeJS-212.5080.16.zip"可能指的是Node.js的一个特定版本,版本号为212.5080.16,通常这样的版本号代表着软件的更新迭代,包含了性能优化、新功能添加或已知问题修复。 PyCharm是一款非常流行的Python...

    [nodejs,js]天气预报,nodejs抓取页面,js正则提取数据

    [nodejs搭建,express框架,nodejs简单页面抓取,JS正则,canvas光晕效果] 在线:http://wangxinsheng.herokuapp.com/weather [heroku服务器访问国内好像很慢。。。所以抓取页面也特别慢] nodejs抓取页面,js正则提取数据

    browser-env:使用jsdom模拟全局浏览器环境

    请注意,只有DOM是模拟的,如果您要运行需要更多高级浏览器功能的模块(例如localStorage ),则需要分别进行polyfill。 使用browser-env@2支持较旧的Node.js版本。 :exclamation_mark: 重要的提示 此模块将属性...

    cmake跨平台编译nodejs的C++扩展

    node.js扩展之cmake编译(linux+windows)-跨平台版。node-gyp到底干了些什么呢?其实干的事情和cmake、makefile是一抹一样的,所以他能干的事情,cmake依然可以,今天就介绍一种非常方便简单的nodejs的C++扩展编写...

    nodejs cytoid.js

    nodejs cytoid.js

    Nodejs导出Excel带图片,Nodejs后台导出带图片Excel

    Nodejs导出Excel带图片,Nodejs后台导出带图片Excel 本资源内有说明及使用安装等详细步骤,以及引入插件 由于nodejs导出Excel带图片的资源比较少,我也是找了许久才知道怎么写的,这里发布个收费的,望各位见谅!

    Idea 配置前端web nodejs项目

    Idea 配置前端 Web Nodejs 项目需要按照一定的步骤进行配置,包括安装 Nodejs 插件、配置环境变量、检查 Nodejs 版本、配置 npm 镜像源和项目的运行和 debug。只有按照正确的步骤配置项目,才能确保项目的正常运行。

    nodejs的http请求html/css/js

    对于CSS和JS文件,我们可以直接将它们保存到本地,或者在内存中处理。例如,获取CSS文件后,可以使用PostCSS这样的库进行转换或优化;获取JS文件后,可以使用Acorn或Esprima等库进行语法分析。 六、第三方库:axios...

    jsdom:各种Web标准JavaScript实现,用于Node.js

    jsdom jsdom是许多Web标准(特别是WHATWG 和标准)的纯JavaScript实现,可与Node.js一起使用。 通常,该项目的目标是模拟Web浏览器的子集,从而足以用于测试和抓取实际的Web应用程序。 jsdom的最新版本需要Node.js...

    NodeJS中文文档精编.pdf 全文免费

    Node 只对 ES 标准进行了实现,所以在 NodeJS 中不包含 DOM 和 BOM,当然也不能操作 DOM 和 BOM。 NodeJS 的特点是单线程的,传统的服务器都是多线程的,但是 Node 的服务器是单线程的。这使得 NodeJS 能够轻松地...

Global site tag (gtag.js) - Google Analytics