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 1
@huichao Python 流行框架的基准测试里,Flask 也就比 Django 快一点,比其他的都慢多了,可是 Django 功能多啊,真给 Flask 加那么多东西,比 Django 还慢。简单来说,Flask 就是最慢的 Python Web 框架。
|
4
viiii 2020-12-18 15:24:10 +08:00 2
要简单 + 速度快, 建议看一下 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 1
我维护过公司的一个 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 1
大点的多大 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 1
@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 2020-12-18 17:16:53 +08:00
我自己的小项目用的是自己魔改的 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 1
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 1
@Jackeriss 我觉得 Flask 流行起来的部分原因是,入门很简单,按教程要求写个函数,用修饰器绑定路由看起来也很漂亮,完了一个 py 文件就能跑起来,这样把很多人引上贼船。还好我不在意这个,用 Django 省事不折腾。
|