V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  abersheeran  ›  全部回复第 33 页 / 共 86 页
回复总数  1711
1 ... 29  30  31  32  33  34  35  36  37  38 ... 86  
2021-10-15 09:16:26 +08:00
回复了 balabalaguguji 创建的主题 Go 编程语言 很喜欢 Echo 框架
@liuhan907 Golang 是做不到你想要的这个,忍忍或者换语言😏
2021-10-15 00:40:08 +08:00
回复了 balabalaguguji 创建的主题 Go 编程语言 很喜欢 Echo 框架
@balabalaguguji 哈哈哈,其实如果没有给指定分组增加中间件的功能,还可以用 PATH 来绕开,只不过比较麻烦。我当时也是灵机一动,觉得这个能解决中间件的适用范围问题就加上了。
2021-10-15 00:38:28 +08:00
回复了 balabalaguguji 创建的主题 Go 编程语言 很喜欢 Echo 框架
@liuhan907 用中间件,把数据挂到 context 上不也一样吗?像依赖 Annotation 来自动注入的应该就 Java 和 Python 了吧。
2021-10-14 20:47:59 +08:00
回复了 balabalaguguji 创建的主题 Go 编程语言 很喜欢 Echo 框架
好家伙,看到分组中间件、路由中间件我犹豫了一下,想着不会是那个意思吧,结果一查还真是。和我在一个 Python Web 框架里设计的,不谋而合……哈哈哈,和业界典范想到一起了还挺开心。

https://index-py.aber.sh/stable/route/#_5
https://index-py.aber.sh/stable/route/#_13
2021-10-14 17:08:16 +08:00
回复了 JerningChan 创建的主题 Python 请教个 pycharm 远程调试代码的问题
建议用代码同步工具同步上去……调试在本地
2021-10-14 17:04:52 +08:00
回复了 x86 创建的主题 问与答 德国人是不是很喜欢吃水饺?
爱吃饺子的德国人喜欢吃水饺,其他则不然。
2021-10-12 14:56:12 +08:00
回复了 sujin190 创建的主题 Python 分享一下完全不依赖 asyncio 也支持异步语法的库
我查到了 https://github.com/snower/TorMySQL/blob/master/tormysql/platform/asyncio.py#L83

原来内部还是异步的……只是用 greenlet 把 Coroutine 转成了 Greenlet 。
2021-10-12 14:51:56 +08:00
回复了 sujin190 创建的主题 Python 分享一下完全不依赖 asyncio 也支持异步语法的库
@sujin190 啥?我上面说的是把那个函数包装一个同步 SQL 查询,然后丢进异步 Web 框架里测试的结果,还不如直接在异步框架里跑同步 SQL 查询快,如果用多线程包装的异步调用,那并发能达到四倍。

TorMySQL 我没试,我只有 pg 环境,所以我才问你,你确定这么写能真正的把同步 SQL 查询包装成异步的以提高并发吗?
2021-10-12 14:07:00 +08:00
回复了 sujin190 创建的主题 Python 分享一下完全不依赖 asyncio 也支持异步语法的库
@sujin190 不是,我的意思是 TorMySQL 你确定是一个能有效使用的 MySQL 异步驱动吗?如果这个比直接调用同步函数还慢,那 TorMySQL 岂不是仅挂了一个空壳?
2021-10-12 11:00:58 +08:00
回复了 sujin190 创建的主题 Python 分享一下完全不依赖 asyncio 也支持异步语法的库
async def async_call_method(func, *args, **kwargs):
ioloop = asyncio.get_running_loop()
future = ioloop.create_future()

def finish():
try:
result = func(*args, **kwargs)
if future._callbacks:
ioloop.call_soon(future.set_result, result)
else:
future.set_result(result)
except Exception as e:
if future._callbacks:
ioloop.call_soon(future.set_exception, e)
else:
future.set_exception(e)

child_gr = greenlet.greenlet(finish)
child_gr.switch()

return await future


我还试了你在 TorMySQL 里的函数,单纯用这个函数调用同步函数,比直接调用同步函数还慢一点。
2021-10-12 10:59:14 +08:00
回复了 sujin190 创建的主题 Python 分享一下完全不依赖 asyncio 也支持异步语法的库
@sujin190 #15 我深入研究了一下,发现你说的这个不就是把 asyncio 重新实现了一遍吗?我以为切换过程是自动的,结果是手动的。那这个的意义在哪儿? greenlet 的效率比 generator 也高的有限吧。
2021-10-11 14:39:49 +08:00
回复了 shyrock 创建的主题 Python 阅读 Python 代码的困难
是的,这正是动态类型语言的弱点。所以 JavaScript 有了 TypeScript,Python 有了 Type hint 。

Type hint 的例子 https://github.com/abersheeran/baize,几乎没有 Any,很接近静态类型语言了,读起来应该会比较简单。
@jianhaochende 对。我想了一下,如果你真要在 h11 里实现,只能在 sendfile 之后生成等长度的空白 bytes 丢给 h11,性能会差很多,不过还是要比一点点读文件去发送要快。你可以试试。
@haoliang os.sendfile 不会阻塞。
看到你这个帖子之后我想起来之前 uvicorn 的维护者问我有没有空帮忙实现这个扩展,刚刚写了一下 https://github.com/encode/uvicorn/pull/1210 。你参考参考吧。
GitHub 上向我们提问的原来是你……这个扩展是我设计的,设计之初我想的是追求极致的性能——用 C 、Rust 实现的服务器接受一个文件描述符远比接受一个 PyObject 要更方便处理。

这里你应该用 os.sendfile 而不是 loop.sendfile
不会中文建议去东南亚哈。中国现在没有租界,普通人不会中文吃个饭都费劲,他不可能顿顿去服务员能熟练用英式英语对话的饭店吧。买菜那更别说了,大爷大妈说普通话都够呛,就别指望英式英语了。
2021-09-26 21:33:50 +08:00
回复了 wuwukai007 创建的主题 Python 看了 Django4.0 发行说明 感觉有点失望
@stimw 我再多说几句。我认为没有任何价值观或者所谓的政治正确是永远全部正确、永远全部错误,哪怕是反社会人格,从天道角度来看它也有存在的原因,虽然我个人很反对这种我认为不正确的价值观与政治正确,但我认为只要一个东西有很多人支持就必然有存在的原因和价值。不过这也不是我认同反社会的借口,我支持或反对一个价值观,必然是从我自己的利益和思维出发。但客观上来讲那些我反对的东西并不一定没有存在价值,所以你说的这个“扭曲的价值倾向”我认为是不存在的。只能说是“我反对的价值倾向”。这个我是谁?谁来凭自己的喜好定,就不好说了。

所以我说的“唯技术论”是指技术团队聚在一起的时候只要好好搞你的技术就行了,别的事你们私下怎么搞都没问题,支持或者反对那是另外一回事,但不要污染这个技术团队。
1 ... 29  30  31  32  33  34  35  36  37  38 ... 86  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   811 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 31ms · UTC 22:46 · PVG 06:46 · LAX 15:46 · JFK 18:46
Developed with CodeLauncher
♥ Do have faith in what you're doing.