guochao 最近的时间轴更新
guochao

guochao

V2EX 第 448797 号会员,加入于 2019-10-24 09:37:55 +08:00
guochao 最近回复了
说实话,价格和任何其他的特点是冲突的。便宜的就要牺牲太多东西。

之前在坚果云工作了几年,网盘存储要钱,同步盘流量烧钱,计算靠人力优化架构和堆服务器,都是成本。要做 p2p 类的东西还可能涉及到政策限制。是做企业的不是做慈善的,很难有又便宜的服务。

建议就是根据需要把资源分到不同的地方,百度云或者自建存储存媒体,坚果云或者 icloud 或者 dropbox 存文档,git 托管代码。
赞。氛围很不错的
21 天前
回复了 RandomAccess 创建的主题 Python 关于 Python event loop
简单说 python 的 event loop 是一个单进程单线程单个 loop 执行 coroutine 的过程。asyncio.run 就是一个创建 loop 并且 run until complete 的过程,new event loop 又建了一个,没有必要。

解决办法就是让整个程序的入口是一个 async 函数,在 async 函数中配置程序,新建各种实例,启动应用。在__main__里面 asyncio.run(entrypoint())就行。然后在任何其他地方都不要 new_event_loop 或者 asyncio.run

如果要执行一个 coroutine 但是不等待结束,可以 asyncio.ensure_future 或者 3.7 以上的新 API asyncio.create_task,这两个函数都是在 get_event_loop()返回的 loop 上执行对应的函数,会返回一个 Task
如果要在一个 coroutine 中执行一个 coroutine 并且等待结束,那就直接 await 。
如果要执行一个同步过程,可以用 run_in_executor,返回一个 Future
35 天前
回复了 EdisonChen666 创建的主题 Linux Linux 发送邮件到 qq 邮箱的问题
#7 +1

补充一下。现在各个厂商之间有 IP 白名单和各种机制,白名单内发信和白名单外发信拦截的规则有非常大的不同,自建邮件服务有很大可能性会被别人当成垃圾邮件拦下来或者干脆无法到达。但是手工发信很多时候的确是满足不了需求,所以有了 sendgrid sendmail mailgun 这类服务。这些服务提供接口发信(一般是 smtp+http api ),同时也会审查你的行为,如果有不合理的发信行为可能会 ban 帐号,以此维护自己和其他服务的白名单关系、提高发信到达率。

QQ 邮箱这种给最终用户的,可以加个客户端密码**用 smtp 登录上去**,从自己的帐号给自己或者别人发,有频率和数量限制,少量的一般没有问题。如果要大量发信,建议找个这种发信服务,会好很多
38 天前
回复了 missz 创建的主题 Node.js puppeteer 运行一段时间后无法启动
@WishMeLz 可能性有几个,一个是这玩意儿依赖 X,是不是什么库没有装。另一个是 chromium 带了几种沙箱实现,是不是这几种沙箱都不能正常工作,不能正常工作的话会失败。

@missz 想起来忘了说的一个问题。你加了'--no-sandbox',建议还是不要这个。在代码里面修一下 sandbox 的权限,sandbox 文件的 owner 需要是 root ( puppeteer 解压以后是当前用户,需要 chown ),并且需要 chmod u+s 来让当前用户下执行的程序自动切换到 root (用来配置沙箱环境限制子进程)。而且,对,推荐用 @Areym #2 提到的开标签页做事儿。
38 天前
回复了 missz 创建的主题 Node.js puppeteer 运行一段时间后无法启动
我原来遇到过 chrome 标签无法自己关闭的情况,所以后来是用了 cgroup 啊、timeout 啊之类的工具,来清理 chrome 进程。

你上面贴的信息不足以得到为什么启动不了进程的原因。原因有很多,比如说资源不够了( pid,mem,……)。我没读过 chromium 实现,但是有没有可能是用了同一个 profile ?用同样的参数能不能手动启动一个 headless chromium ?

建议先自己再调研一下
建立 net_cls cgroup,对 cgroup 进行 mark,在 route 中使用 mark 建立路由

如果需要的话可以用 systemd-slice 对一组 exec 进行 mark 。或者自己写脚本。

除此之外,还可以用这个方法对单独的进程设置防火墙或者施行 traffic shaping

ref:
这篇博客描述了大概的做法: https://www.evolware.org/?p=369
防止博客崩掉贴上 Archive: https://web.archive.org/web/20201112024042/https://www.evolware.org/?p=369
Arch Wiki - cgroups: https://wiki.archlinux.org/index.php/Cgroups
man pages - cgroups: https://man7.org/linux/man-pages/man7/cgroups.7.html
man pages - ip-route: https://man7.org/linux/man-pages/man8/ip-route.8.html
关于   ·   帮助文档   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1143 人在线   最高记录 5497   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 51ms · UTC 22:15 · PVG 06:15 · LAX 14:15 · JFK 17:15
♥ Do have faith in what you're doing.