Save The Web Project
“抽屉网”或将关停。 #慢讯
## 安装
### 使用 pipx
(可以同时运行 links 和 comments)
(另:如果您用 Docker,可以考虑使用 --tty 参数)
### 使用 pipx
pipx install --force --index-url https://git.saveweb.org/api/packages/saveweb/pypi/simple/ --pip-args='--extra-index-url https://pypi.tuna.tsinghua.edu.cn/simple' chouti
### 或使用 pippip install -U --index-url https://git.saveweb.org/api/packages/saveweb/pypi/simple/ --extra-index-url https://pypi.tuna.tsinghua.edu.cn/simple chouti
### 运行chouti_links # links 元数据
chouti_comments # 评论
(可以同时运行 links 和 comments)
(另:如果您用 Docker,可以考虑使用 --tty 参数)
👍3
Save The Web Project
## 安装 ### 使用 pipx pipx install --force --index-url https://git.saveweb.org/api/packages/saveweb/pypi/simple/ --pip-args='--extra-index-url https://pypi.tuna.tsinghua.edu.cn/simple' chouti ### 或使用 pip pip install -U --index-url https://git.saveweb.org/…
可能有内存泄漏,平均每完成一个任务,可能会漏 0.2~0.7KB 内存。
QoS 暂时调到 1T/s。
(20240529 16:19 updated: 又调回 4T/s 了)
也请正在运行的朋友回报一下你的内存占用、运行时间、完成的任务数量。
QoS 暂时调到 1T/s。
(20240529 16:19 updated: 又调回 4T/s 了)
也请正在运行的朋友回报一下你的内存占用、运行时间、完成的任务数量。
🤯6
Save The Web Project
可能有内存泄漏,平均每完成一个任务,可能会漏 0.2~0.7KB 内存。 QoS 暂时调到 1T/s。 (20240529 16:19 updated: 又调回 4T/s 了) 也请正在运行的朋友回报一下你的内存占用、运行时间、完成的任务数量。
昨天 profile 了一整天,python 级别的内存很稳定,objs 数量和大小在几个小时内都很稳定,没明显发现哪里有泄漏。
最后发现竟是 cpython _ssl 之下的锅,Python GC 销毁 Python Level 的 SSLContext 后,SSLContext 对应的 C Level 的不受 Python 管理的由 OpenSSL malloc 的内存并没有全部还给系统。(不是内存泄漏,不会 OOM,系统内存不足时会回收这些碎片内存)
https://github.com/python/cpython/issues/84904
所以:
我们并发很高 -> 频繁摧毁/建立 SSLContext -> BOOM
———
更新了脚本,现在每分钟会 malloc_trim 一次,内存占用应该不会飘高了。
———
update: 内存碎片化程度过高,malloc_trim 只能收回大部分碎片缓解问题,匿名页还是在涨,只要时间够,仍然会 OOM。
update: 实验了各种 jemalloc tcmalloc mimalloc,问题仍然没解决。
update: 社区有人说 asyncio + ssl 一直以来有各种大大小小的问题。
gc.get_objects() 最多也就拿到了总共20MB对象,但 rss 就是在缓慢上升到几百MB,让人摸不着头脑。最后发现竟是 cpython _ssl 之下的锅,Python GC 销毁 Python Level 的 SSLContext 后,SSLContext 对应的 C Level 的不受 Python 管理的由 OpenSSL malloc 的内存并没有全部还给系统。(
https://github.com/python/cpython/issues/84904
所以:
我们并发很高 -> 频繁摧毁/建立 SSLContext -> BOOM
———
更新了脚本,现在每分钟会 malloc_trim 一次,
———
update: 内存碎片化程度过高,malloc_trim 只能收回大部分碎片缓解问题,匿名页还是在涨,只要时间够,仍然会 OOM。
update: 实验了各种 jemalloc tcmalloc mimalloc,问题仍然没解决。
update: 社区有人说 asyncio + ssl 一直以来有各种大大小小的问题。
GitHub
SSLContext.load_verify_locations leaks memory on Linux · Issue #84904 · python/cpython
BPO 40727 Nosy @tiran, @asvetlov, @1st1, @Recursing Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state. Show more details GitHub f...
👍8
Save The Web Project
## 安装 ### 使用 pipx pipx install --force --index-url https://git.saveweb.org/api/packages/saveweb/pypi/simple/ --pip-args='--extra-index-url https://pypi.tuna.tsinghua.edu.cn/simple' chouti ### 或使用 pip pip install -U --index-url https://git.saveweb.org/…
chouti_links 即将完成爬取,请更新 chouti 包并运行 chouti_comments 。开始存档全部评论。
👍1
在跑 1.3.0/1.3.1/1.3.2 的可以停了,停了会加快其它跑 1.3.3 的收尾的速度。
目前队列里还有四百万任务需要 1.3.3 处理。
咱做好人,别抢跟新版本抢任务,误。
目前队列里还有四百万任务需要 1.3.3 处理。
👍2❤1
Save The Web Project
Photo
抽屉删除了 2014 年 7 月 14 日前的所有link。(约 6,150,407 篇)
在总计 42,468,932 个 links 中,至今仍存在的仅有 13,623,632 个。
采样发现,抽屉近几年几乎没有删过 link,可能是由于运营状况恶化而放松了内容把控?
评论采样结果也很有趣,近一年似乎没有删过评论。
在总计 42,468,932 个 links 中,至今仍存在的仅有 13,623,632 个。
采样发现,抽屉近几年几乎没有删过 link,可能是由于运营状况恶化而放松了内容把控?
评论采样结果也很有趣,近一年似乎没有删过评论。
Giweb: Git with a cup of web
chouti/links_sample.png at main
❤5
Save The Web Project
pip(x) install https://static.saveweb.org/huashijie-1.0.1-py3-none-any.whl huashijie_work 画世界。与上条消息是不同的项目,可与上面那个可以同时跑。(但单个项目不要多开) 源码: https://github.com/saveweb/huashijie_work
huashijie_work 已用 Golang 重写,吃上的群友都说 Go 好 Py 坏,建议迁移。https://git.saveweb.org/saveweb/huashijie_go/releases
——
docker 可用
icecodexi/saveweb:huashijie,注意需要传入 ARCHIVIST 环境变量。Giweb: Git with a cup of web
huashijie_go
👍5
最近那篇说中文互联网寄了的微信文章很火,我们想用实测说话。🫠🫠
大家好,请帮助我们测量 2014 年(十年前)的中文互联网资讯类链接的腐烂情况。
https://docs.google.com/spreadsheets/d/16XX9E6iUxWbWXoZNl7W_VJntL3aGSoX0hL76GJnZTyo/edit?usp=sharing
目前有 8k+ 抽样链接,但统计结果收敛之后就停。
大家好,请帮助我们测量 2014 年(十年前)的中文互联网资讯类链接的腐烂情况。
https://docs.google.com/spreadsheets/d/16XX9E6iUxWbWXoZNl7W_VJntL3aGSoX0hL76GJnZTyo/edit?usp=sharing
目前有 8k+ 抽样链接,但统计结果收敛之后就停。
❤6
#安全警告 #GitHub
如果你有 GitHub 组织,并且将 Member privileges 的 Base permissions 手动设为了 No permission (默认是 Read)。那么您组织的 Owner 名单(包括 Private Owner)就可以被通过一种妙妙地方式泄漏出来(Private Member 名单不会被泄漏)。
几天前我们无意间发现了这个小 bug,报给 GitHub 了,但现在还没收到回复。
建议各位用 Team/Repo 细粒度划分权限的组织暂时将 Base permissions 设为 Read。
(不信邪的可以在评论区发下您的组织名 )
update: GitHub 已确认此 bug 。
update: GitHub 已修复。
如果你有 GitHub 组织,并且将 Member privileges 的 Base permissions 手动设为了 No permission (默认是 Read)。那么您组织的 Owner 名单(包括 Private Owner)就可以被通过一种妙妙地方式泄漏出来(Private Member 名单不会被泄漏)。
几天前我们无意间发现了这个小 bug,报给 GitHub 了,但现在还没收到回复。
建议各位用 Team/Repo 细粒度划分权限的组织暂时将 Base permissions 设为 Read。
(
update: GitHub 已确认此 bug 。
update: GitHub 已修复。
🌚16