V2EX fantix 的所有回复 第 1 页 / 共 2 页
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX    fantix    全部回复第 1 页 / 共 2 页
回复总数  39
1  2  
2022-06-15 06:40:12 +08:00
回复了 fantix 创建的主题 Python 新项目再轮 asyncio 实现: kLoop
@mayli 我大概明白了,正如你说的,我也觉得应该是可以优化的[1],或者将来可以[2],就是可能写起来比较费劲。另外,作为抽象化的库,kLoop 我认为可以从两方面做批量优化:1 、单次主循环内批量操作:当 I/O 请求比较密集的时候,一次循环有机会批量提交处理几十上百个请求,每个请求可能都是由多个 SQE 链接实现,这样一次循环就能省几百 syscall ; 2 、提高抽象层级,直接做 HTTP 静态文件服务器[狗头]。以上还都是臆想,有待实现验证测评。

[1]: https://lwn.net/Articles/863071/
[2]: https://lwn.net/Articles/847951/
2022-06-13 07:00:26 +08:00
回复了 fantix 创建的主题 Python 新项目再轮 asyncio 实现: kLoop
@mayli 好像可以创建一对 pipe ,先把 header 写进去,然后提交两个 splice(2) 任务(无须 link ?),一个连文件另一个连 socket 。这个不是 asyncio 层面的,但类似于计划中 kLoop 的 `loop.sendfile()` 实现,我还没试过,希望能帮上忙。
2022-06-12 03:53:56 +08:00
回复了 fantix 创建的主题 Python 新项目再轮 asyncio 实现: kLoop
@haoliang 感谢夸奖! trio 是好东西,异常扔得特别干净

@14 嗯惭愧……那个 PR 确实拖了好几年才做完……
2022-06-12 03:38:31 +08:00
回复了 fantix 创建的主题 Python 新项目再轮 asyncio 实现: kLoop
@mayli 感谢分享!我赞同您提到的三点:1 、直接使用 io_uring 或者甚至是包装过的 liburing 来做业务逻辑,编程体验并不直观; 2 、深度利用队列需要一定技巧,比如可能需要在 SQ 提交之前修改顺序,才能将需要链接的元素排在一起,因为目前链接功能只能把挨在一起的几个元素连起来; 3 、io_uring 并不提供流量控制功能,需要调用者自己搞。

需要为其他读到这里的同学澄清的是,这些在 kLoop 中属于实现细节,参与开发的同学确实需要面对底层接口的复杂性,以及处理好各种接口异常,比如用发送队列做重试以提供高阶流量控制等等;然而,对于 kLoop 使用者而言,这些复杂性应该是封装在统一的 asyncio 接口之下的,比如用户只需调用 `loop.sendfile()`,而不需要考虑这个操作实际上可能链接了多个 io_uring 任务,包括创建管道、两次 splice 来连接文件和网络,以及流量控制所需要的重试(还没实现,大致猜测),以最高效的方式利用 io_uring 来完成任务。
2022-06-11 10:15:48 +08:00
回复了 fantix 创建的主题 Python 新项目再轮 asyncio 实现: kLoop
@lixile draw.io ,好像现在叫 diagrams.net ,可以脱机当本地应用使
有幸在本书成书后的开发阶段抢先阅读过,非常认同“基础编程素养”和“编程理念”的部分,结合案例讲技巧,非常值得收藏。
2022-02-23 10:13:33 +08:00
回复了 fantix 创建的主题 数据库 graph-relational model 怎么翻译最合适?
@cmdOptionKana 很有道理!其实英文的 graph-relational 本身就没那么精准,那么叫图-关系模型应该也方便对照。
2022-02-23 00:30:52 +08:00
回复了 fantix 创建的主题 数据库 graph-relational model 怎么翻译最合适?
@adoal 是的是的,就怕这个。但是又不想翻译的太生硬……有什么好的建议吗?直接用英文 graph-relational 其实也挺好……
2022-02-16 06:37:59 +08:00
回复了 fantix 创建的主题 数据库 EdgeDB 1.0 正式发布
@so1n 谢谢肯定!新年快乐
2022-02-15 20:21:56 +08:00
回复了 fantix 创建的主题 数据库 EdgeDB 1.0 正式发布
@so1n 因为 V 站牛人太多,我竟看不出你到底是捧是踩,也不敢感谢也不敢解释,那我还是给你拜个晚年吧!元宵节快乐!
2022-02-14 22:08:11 +08:00
回复了 fantix 创建的主题 数据库 EdgeDB 1.0 正式发布
有个朋友做了个 AWS 里的 HA EdgeDB: https://github.com/aaronbrighton/cdk-edgedb-demo
2022-02-14 21:57:55 +08:00
回复了 fantix 创建的主题 数据库 EdgeDB 1.0 正式发布
@tabris17 嗯,你和 #35 @expexp 大体上是一个意思:现有体制很难动摇,开发者有学习成本和风险、运维有维护成本和单点风险,等等这确实都是实际存在的困难,也是 EdgeDB 愿意去挑战的,新事物总是有早期使用者和大众接受期(如果幸运的话),好在早期使用者对 EdgeDB 给出的反馈是非常鼓舞人心的,因为 EdgeDB 确实解决了很多 SQL 体系中的问题,比如无须再使用 ORM 和 pgBouncer/pg-Pool 等,EdgeDB 的成本和风险对他们来说是可以接受的,这也是 EdgeDB 敢于走向大众的原因。另:EdgeDB 的 HA 是我做的,有 bug 我来修……
2022-02-13 23:55:49 +08:00
回复了 fantix 创建的主题 数据库 EdgeDB 1.0 正式发布
@tabris17 好问题!有多个原因,主要是方便支持多种编程语言,以及对 I/O 更好的掌控,同时还带来了支持更多功能的可能性,比如共享连接池和 CLI 相关的许多提升 DX 的工作流。理论上如果你只用 Python asyncio 写服务的话,可以内嵌一个 EdgeDB 模块,但节省不了太多资源,反而影响了 DX 和心情。
2022-02-11 23:46:24 +08:00
回复了 fantix 创建的主题 数据库 EdgeDB 1.0 正式发布
@devtiange
1 )可以的,用 `--backend-dsn` 参数指定一个 PostgreSQL 的 DSN 就行,初次运行会创建内置库和 schema ,稍慢。https://www.edgedb.com/docs/guides/deployment/docker#edgedb-server-backend-dsn
2 )可以有不同套路,传说中的 serverless 可以直接用 HTTP 向 EdgeDB 发送 EdgeQL 请求( https://www.edgedb.com/docs/clients/90_edgeql/index#edgeql-over-http ),另外如果是 REST 的话,可以用 query_json() 直接让 EdgeDB 返回 JSON 字符串,后端无需处理直接回传给前端,节省额外的处理和序列化的工夫。接下来还在计划一种在 EdgeDB Server 中执行用户 WebAssembly 的功能,也可以用来做后端。
2022-02-11 22:34:02 +08:00
回复了 fantix 创建的主题 数据库 EdgeDB 1.0 正式发布
@feilaoda 有趣的语法~那生成 SQL 时是怎么知道要 join 哪个表的呢?是另有 schema 定义吗?
2022-02-11 22:17:23 +08:00
回复了 fantix 创建的主题 数据库 EdgeDB 1.0 正式发布
@sunng87 哟那可不敢当,只是 0.13 时写过点 zeromq 的东西而已
2022-02-11 22:12:13 +08:00
回复了 fantix 创建的主题 数据库 EdgeDB 1.0 正式发布
@kaellzt777 这确实是一个 bug !已提交修复 PR: https://github.com/edgedb/edgedb-cli/pull/656

不过你可以先试试加上 --tlsv1.2:
curl --proto '=https' --tlsv1.2 -sSf https://sh.edgedb.com | sh
2022-02-11 21:49:54 +08:00
回复了 fantix 创建的主题 数据库 EdgeDB 1.0 正式发布
2022-02-11 21:37:42 +08:00
回复了 fantix 创建的主题 数据库 EdgeDB 1.0 正式发布
@bnm965321 对的,来 EdgeDB 一年了。好像确实没有直接提供 Relay 风格的 schema , 不过看代码应该不难加。不过,你说的 GUI 是类似 https://github.com/edgedb/edgedb-studio 这样的吗?
2022-02-11 20:45:24 +08:00
回复了 fantix 创建的主题 数据库 EdgeDB 1.0 正式发布
@Braisdom 期待看到您设计的新查询语言!适配现有数据库确实也是实实在在的需求,但 EdgeDB 还是选择了另外一条路线。
1  2  
关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1292 人在线   最高记录 6679       Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 22ms UTC 17:15 PVG 01:15 LAX 09:15 JFK 12:15
Do have faith in what you're doing.
ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86