anyproxy icon indicating copy to clipboard operation
anyproxy copied to clipboard

anyproxy占用内存问题

Open jiangyunjun opened this issue 7 years ago • 6 comments

anyproxy占用内存问题

const AnyProxy = require('anyproxy'); const options = { port: 8001, webInterface: { enable: false }, throttle: 10000, forceProxyHttps: true, silent: true, dangerouslyIgnoreUnauthorized: true }; const proxyServer = new AnyProxy.ProxyServer(options); proxyServer.start();

用法如上,在长时间使用后,anyproxy代理线程占用的内存越来越大。 查看堆快照,发现web版界面中的很多内容留在了堆里,并且无法被GC掉。 请问这个问题该怎么解决?###

jiangyunjun avatar Nov 13 '18 09:11 jiangyunjun

我也有同样的问题,尤其是跑了两三天之后,能直接撑爆小容量的整个硬盘

szdemen avatar Nov 17 '18 05:11 szdemen

我也有同样的问题,尤其是跑了两三天之后,能直接撑爆小容量的整个硬盘

我的是内存问题,如果是持久化的文件太多的话,可以选择手动清除或者脚本定时清除,路径为:用户路径/.anyproxy/cache

jiangyunjun avatar Nov 19 '18 06:11 jiangyunjun

@jiangyunjun 是的,目前AnyProxy会将部分文件缓存到cache目录而非内存,如果是长时间运行需要手动清理

@szdemen 手动清理适用于你的场景吗

codingfishman avatar Nov 24 '18 03:11 codingfishman

@codingfishman 我遇到的应该是内存泄漏的问题,就算不去编写rule,5000个请求大概会使anyproxy进程的内存上升10M左右(经历GC后),长时间使用会造成代理进程内存越来越大。

jiangyunjun avatar Nov 26 '18 03:11 jiangyunjun

@jiangyunjun 内存的增长是由于request的recorder造成的,就算你使用file来保存request记录,内存还是会不停增长,因为nedb会在内存中保存index,所以要想完全解决内存增长的问题,只能修改代码把recorder禁止掉

shusl avatar Dec 25 '18 15:12 shusl

@jiangyunjun 是的,目前AnyProxy会将部分文件缓存到cache目录而非内存,如果是长时间运行需要手动清理

@szdemen 手动清理适用于你的场景吗

anyproxy 在运行过程中直接清理cache目录会有什么影响吗?

sandheart avatar Jan 19 '19 12:01 sandheart