PyWebIO
PyWebIO copied to clipboard
结果中会随机遗漏一些输出
感谢开发者!这个工具真的很好用。 目前我在使用的时候遇到了一个问题,我在部署这个应用后发现结果的展示中会遗漏一些东西。 我写了一些 put_xxx 的代码,但是返回的结果好像会随机遗漏一些内容,我不知道怎么解决。 我目前使用了 flask 框架,使用 Gunicorn 部署,我将 Gunicorn 的 worker 设置成了 1,因为我看到官方文档中提到只能启动一个进程(这里我也不太确定是否可以解决请求发到错误的进程的这个问题)。 我对 web 不是很了解,对有些输出会被遗漏的这个问题我完全没有头绪,你们有任何线索吗? 再次感谢开发者做出了这么简单好用的工具!
代码中有没有用到scope?如果将内容输出到一个不存在的scope,将会不产生任何输出。
如果不是的话,请提供一段可以复现的代码以便进一步排错
感谢回复 没有用到 scope,我在本地测试的时候不会出现遗漏的情况,部署到服务器上之后才会有。所以我之前猜测是我部署的时候产生的问题。
有可能是因为pywebio在flask server下,是使用的http轮训的方式实现server和浏览器的通讯的,某些请求的http响应可能因为网络原因没有成功发送给浏览器,造成输出遗漏。
建议直接在服务器上使用内置的 start_server() 启动服务。如果想要实现高并发,可以启动多个实例,通过nginx来进行负载均衡(这部分后面会出一个具体的教程加到文档里)
最近的几个版本的pywebio有几个相关的修复,可以尝试升级一下pywebio版本