![]() | 1 abersheeran 2020-12-18 14:42:38 +08:00 你这是多想不开,要用关系型数据库的项目用 Django 一把梭啊。其他项目用 bottle/starlette 速度快、代码简单易读。 |
![]() | 2 huichao OP 因为已经有前端, 计划做个前后端分离,vue.js + flask (api) 这样的方式, 可是项目功能比较多 不知道 flask 并发如何?主要喜欢 flask 的简单,以后维护起来容易。 |
![]() | 3 abersheeran 2020-12-18 15:20:40 +08:00 ![]() @huichao Python 流行框架的基准测试里,Flask 也就比 Django 快一点,比其他的都慢多了,可是 Django 功能多啊,真给 Flask 加那么多东西,比 Django 还慢。简单来说,Flask 就是最慢的 Python Web 框架。 |
![]() | 4 viiii 2020-12-18 15:24:10 +08:00 ![]() 要简单 + 速度快, 建议看一下 FASTAPI 如果想最简单实践, 最快出产品, django+rest API 足够了, 性能嘛....业务量真的需要? |
![]() | 5 johnsona 2020-12-18 15:24:18 +08:00 python 写 rest 接口的话,用 drf 或者你想试试 fastapi 也可以,用 flask 的话,就像一楼说的。不过你没经历过坏,你估计也感受不到 drf 的香 |
6 ytymf 2020-12-18 15:32:19 +08:00 flask 可不简单,找插件试错的时间,django 都做完了。 |
7 acmore 2020-12-18 15:32:47 +08:00 简单 ≠ 易于维护,因为项目的复杂很多时候在于项目本身,框架的作用在于能更好地掌控复杂性,复杂的框架往往在掌控复杂性上做了更多事情。 说人话就是复杂的项目用复杂的框架,简单的项目用简单的框架。 |
![]() | 8 CismonX 2020-12-18 15:33:41 +08:00 ![]() 我维护过公司的一个 flask 项目,10w 行的屎山 听说他们最近打算拿 spring boot 重构。。还好我早就不在那个组了 |
![]() | 10 jtsai 2020-12-18 15:37:06 +08:00 不喜欢 python 的 orm |
![]() | 11 johnsona 2020-12-18 15:38:36 +08:00 很多人说性能问题,大可不必,真有这个量,不会舍不得花钱的,上集群部署,数据库有压力,django 的 orm 支持分库,不存在问题 |
12 uptonking 2020-12-18 15:40:01 +08:00 via iPhone all in js 不香吗,node 服务端框架 nestjs 高仿 java 的 spring,用来做 crud 的 rest api 很容易 |
![]() | 14 tabris17 2020-12-18 15:49:15 +08:00 flask 慢得要命,而且配套还不完善,很多插件都是 N 年不维护了 |
![]() | 15 maocat 2020-12-18 16:03:15 +08:00 会 看过一些大点 flask 写的项目( apache superset,宝塔面板 ) 公司自己内部弄了一套 flask 的脚手架(其实就是把 flask 拼装成 django),fork 了一些库加了很多功能(大多数只用一次), 然后开始填业务上的屎 上面的人都还在比较框架的快慢,我更赞同 #11 的说法 当业务发展到一个量级的时候,服务架构才是应对性能问题的最好方法 |
16 hyqCrystal 2020-12-18 16:04:22 +08:00 ![]() 大点的多大 springboot springcloud 不好使吗 |
![]() | 17 huichao OP 这个前后端分离的设计是为了重写很久之前(大概 10 年前用 asp.net 做的)一个 web 系统,里面功能比较多,客户要保留,我大概看了一下有 4 千多个(添加,修改,删除,查询,报表等等)功能操作。这个可能也算个中型的项目了,现在在选择后端用什么写。主要得开发速度快, 易维护,以后肯定会加多新业务或功能。 |
![]() | 18 charmToby 2020-12-18 16:20:33 +08:00 可以试试 FastAPI,感觉比 Flask 好用多了。 |
![]() | 19 Jackeriss 2020-12-18 16:27:15 +08:00 via iPhone flask 是真不行,不知道为啥会流行,好像现在也并不流行。。。 |
20 ShuoHui 2020-12-18 16:38:30 +08:00 via iPhone Flask 写了好几个项目,看到这个帖子心惊肉跳的感觉Python 还有什么框架吗 |
![]() | 21 rexyan 2020-12-18 16:45:00 +08:00 via Android 不建议,太灵活 |
![]() | 22 coloz 2020-12-18 16:46:53 +08:00 fastapi 更适合写 api |
![]() | 23 windfarer 2020-12-18 16:55:44 +08:00 Django 香得很 |
![]() | 24 abersheeran 2020-12-18 17:08:31 +08:00 ![]() @ShuoHui 如果你喜欢微框架,那么推荐 bottle / starlette ( fastapi )。否则只推荐 Django 。 |
![]() | 25 sidegem 2020-12-18 17:13:44 +08:00 一直在用 flask 看了楼上的回复瑟瑟发抖 |
![]() | 26 abersheeran 2020-12-18 17:15:39 +08:00 @Jackeriss 运营。Flask 的作者自己都说过,决定开源项目流行度的,最重要的不是代码怎么样而是运营。“没人真的会认真去看你是否实现了你宣传的”。 |
![]() | 28 YUX PRO 我自己的小项目用的是自己魔改的 flask 本地(m1 mba)压测 能跑 20000+ Requests/sec 方法就是增加进程来应对高并发 但是正在搞的下一个项目妥妥 fastapi |
![]() |   30 fanjianhang 2020-12-18 17:22:06 +08:00 via Android 用过,不是很香 |
![]() | 31 huichao OP @chenqh 是的。看他们的 source code 算出来的。 看来试试 Django 和 fastapi 了要,Django 有过一个项目,fastapi 还没做过,python 也都是刚开始用不到 2 年,如果 python 很多问题我可能会用回 php 了,可 php 现在在走下坡路,要考虑下个 10 年 。python 可以的,我看好 python 。 |
![]() | 32 westoy 2020-12-18 17:24:53 +08:00 @Jackeriss django 当时和他们的主业务耦合太紧了, 自由度很低, 而且性能有点差。 当时有种说法就是你用 django 去写 django 合适的项目, 你会非常舒服, 但反之会很痛苦。 turbogears 和 pylons 又三天两头变, 而且依赖的三方库很多很散, 安装包冲突装不上,官方教程的案例跑不通是常有的事 flask 属于折中, 自由度高, 而且依赖的 wekzeug 、jinja 之类的又都是 pocoo 自己的, 可靠性也强, 文档也写的好 |
33 iceneet 2020-12-18 17:26:42 +08:00 没必要吧 何必折磨自己 用 django 不更好 |
34 hongweiliuruige 2020-12-18 17:26:48 +08:00 ![]() nestjs + typeorm + react-hook/vue3 ts 全栈不香吗,,要性能有性能,要可维护 ts 大法好,要将来招人 js 程序员最多。。 |
![]() | 35 abersheeran 2020-12-18 17:29:20 +08:00 @YUX asyncio 的 ORM 没有好用的吧……hhh,如果不在乎这方面,asyncio 那挺好的。 |
![]() | 36 Jackeriss 2020-12-18 17:30:06 +08:00 @westoy #32 你说的对,但是到了 asyncio 和前后端分离时代 Flask 就没多大优势了,fastAPI 是完美替代品。 |
37 brendanliu 2020-12-18 17:33:29 +08:00 就没有人提 sanic 么 |
![]() | 39 TypeError 2020-12-18 17:35:24 +08:00 via Android Python 里一直用 tornado 不过之后估计换 Go + Gin 了 |
![]() | 40 ericwood067 2020-12-18 17:38:49 +08:00 之前自己的小项目是用 flask 写的,看了大家的推荐,是时候试试 fastAPI 了。。 |
41 vagra 2020-12-18 22:35:46 +08:00 flask 确实慢。十倍地慢! 我用 calibre-web 搭了个网站,这就是 flask 开发的,测速,比另外几个 php 的网站慢了 10 倍。 |
42 dayeye2006199 2020-12-19 05:16:46 +08:00 flask 项目需要会代码组织,否则写在若干个巨大无比的文件,会出现上面提到的几万行的情况。 组织需要动脑筋,不想动脑筋,就 django rest 这一套把,糙快猛,代码质量一般不会太差。 |
43 darknoll 2020-12-19 10:37:29 +08:00 用这玩意儿不如用 node |
![]() | 44 exploreexe 2020-12-19 11:23:08 +08:00 @CismonX #8 10w 行的屎山 这形容可太真实了 哈哈哈 |
![]() | 45 nonduality 2020-12-19 11:51:09 +08:00 ![]() @Jackeriss 我觉得 Flask 流行起来的部分原因是,入门很简单,按教程要求写个函数,用修饰器绑定路由看起来也很漂亮,完了一个 py 文件就能跑起来,这样把很多人引上贼船。还好我不在意这个,用 Django 省事不折腾。 |