V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  ox180  ›  全部回复第 3 页 / 共 4 页
回复总数  80
1  2  3  4  
2019-07-26 14:17:54 +08:00
回复了 fyxtc 创建的主题 程序员 看了 Flutter 的 80%的官方文档内容,感觉很好
哪位大佬来一个美颜的 sdk ??
2019-04-16 15:59:30 +08:00
回复了 zhongchengyong 创建的主题 程序员 机器学习/深度学习岗位对学历要求是否严格?
观望。。。
2018-09-11 08:50:53 +08:00
回复了 bbbai 创建的主题 程序员 预算 3000,需求明确求推荐笔记本电脑
2018-09-09 09:25:19 +08:00
回复了 smh2208 创建的主题 Python Python web 后端进阶项目
@smh2208 如果纯后端的话,Java 会是一个非常不错的选择,如果不是非 Python 不学的话,以 Java 作为谋生手段更好...真无奈,而像一楼说到的那些,其实和语言本身没有太多关联性,祝好运
2018-08-08 12:52:27 +08:00
回复了 chai2010 创建的主题 Go 编程语言 《Go 高级编程》初稿完成
点赞
2018-07-26 08:49:57 +08:00
回复了 KeatingSmith 创建的主题 Python Flask 自带的服务器是怎样处理请求的?
@gnozix 如上描述
2018-07-24 17:59:04 +08:00
回复了 KeatingSmith 创建的主题 Python Flask 自带的服务器是怎样处理请求的?
问题一:
由于 Flask 代码中默认启用了多线程,如下:

```python
# 大致在 936 行
options.setdefault('use_reloader', self.debug)
options.setdefault('use_debugger', self.debug)
options.setdefault('threaded', True) # here

cli.show_server_banner(self.env, self.debug, self.name, False)

from werkzeug.serving import run_simple

try:
run_simple(host, port, self, **options) # 此处启动 server
finally:
# reset the first request information if the development server
# reset normally. This makes it possible to restart the server
# without reloader and that stuff from an interactive shell.
self._got_first_request = False
```

然后再往下走,此处忽略,然后最终到达:

```python
def make_server(host=None, port=None, app=None, threaded=False, processes=1,
request_handler=None, passthrough_errors=False,
ssl_context=None, fd=None):
"""Create a new server instance that is either threaded, or forks
or just processes one request after another.
"""
if threaded and processes > 1:
raise ValueError("cannot have a multithreaded and "
"multi process server.")
elif threaded:
return ThreadedWSGIServer(host, port, app, request_handler,
passthrough_errors, ssl_context, fd=fd)
elif processes > 1:
return ForkingWSGIServer(host, port, app, processes, request_handler,
passthrough_errors, ssl_context, fd=fd)
else:
return BaseWSGIServer(host, port, app, request_handler,
passthrough_errors, ssl_context, fd=fd)
```
所以默认使用的是多线程方式,所以解决了问题 1



问题二:


-w 表示启动多少个 worker,简单来讲就是启动几个 flask app 副本,一种简单实现方式:


```python

# 伪代码
def start(app, worker=4, *args, **kwargs):

workers = [Process(target=app, args=()) for _ in range(worker))
for _worker in workers:
_worker.start()
# 如果你看 sanic,其实也是这个实现方式
```

所以关于 gunicorn,我的理解就是启动-w 个 flask 程序,如你描述那就是 4 个 flask 进程,至于是不是单进程多线程方式,那是另外一个问题了....
可以自己开发
2018-04-28 09:19:22 +08:00
回复了 junnplus 创建的主题 Go 编程语言 Go 新 logo 了解一下
我还是喜欢之前的
2018-04-27 10:06:06 +08:00
回复了 1500176279 创建的主题 Python 大佬们, flsak 入门有什么建议?比如有那些号资源推荐
推荐狗书,看完后顺带看下官网文档,深入理解下各个环节,基本就 ok 了
2018-04-27 09:57:18 +08:00
回复了 GoPHP 创建的主题 Ubuntu Ubuntu 18.04 抢先更新体验报告!
赶紧上图
2018-04-26 09:24:21 +08:00
回复了 nulun 创建的主题 程序员 是不是刚毕业待遇就是低一些
果然人比人气死人,这种帖子下次我就不手贱点进来了。
2018-04-24 22:56:02 +08:00
回复了 Fn2018 创建的主题 Python [上海] 招 Python Web 或爬虫,包住。
Django
2018-04-23 13:16:59 +08:00
回复了 miniyao 创建的主题 Python 用 type 作为数据表的字段名,会有什么隐患和冲突吗?
type_
2018-04-20 13:23:57 +08:00
回复了 Meli55a 创建的主题 Python Python 多进程
@orangeade 足够方便
2018-04-20 09:00:50 +08:00
回复了 locktionc 创建的主题 奇思妙想 问问大家,戴口罩又把鼻子露出来的人是什么心态?
哇,小姐姐
2018-04-18 15:00:16 +08:00
回复了 est 创建的主题 Python 准备了 3 年的新版 pypi 昨晚上线,不负众望的一上线就挂了 :doge:
重点不在 pypi new warehouse 上,而是在🐶
2018-04-17 10:50:50 +08:00
回复了 firhome 创建的主题 程序员 请教一下各位 Jenkins / git 冲突的问题怎么解决?
关于出现冲突,应该前端解决吧,解决冲突完,提交代码仓库,然后通过钩子推给 jenkins,jenkins 再去做其他事情就行了。不需要手动点下 jenkins....
2018-04-12 19:21:21 +08:00
回复了 alvy 创建的主题 Python 关于 Python 的导入
@Akikiki 你举个例子
1  2  3  4  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2903 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 31ms · UTC 13:47 · PVG 21:47 · LAX 06:47 · JFK 09:47
Developed with CodeLauncher
♥ Do have faith in what you're doing.