客户的云主机配置不高 已经搭了几个服务了
springboot,flask,php,dotnet core 。选哪个呢?
1
tanjnr 2020-11-10 13:51:33 +08:00 via iPhone
Php,我的单核 1G,部署完应用还剩 300M+内存
|
3
putaozhenhaochi 2020-11-10 14:12:09 +08:00 6
dotnet core
|
4
Rekkles 2020-11-10 14:13:11 +08:00
PHP 呗 一天环境一周开发半天上线 内存 1G 够跑
|
5
HuHui 2020-11-10 14:23:02 +08:00
go gin
|
6
azev OP @putaozhenhaochi 多谢 这个有点意外 是自身经验吗?
|
7
xman99 2020-11-10 14:29:41 +08:00
小项目 php 还不错
|
8
renmu123 2020-11-10 14:31:45 +08:00 via Android 1
看你多小,我推荐 fastapi,贼快贼爽
|
9
icyalala 2020-11-10 14:33:19 +08:00
速度快省内存当然是 go
|
10
wuzhanggui 2020-11-10 14:37:35 +08:00
我也推荐 fastapi,我的小站全是用它写的,写小项目超快
|
11
imjamespond 2020-11-10 14:42:17 +08:00
c,内存可以小于 1M
|
12
tanjnr 2020-11-10 14:44:06 +08:00 via iPhone
这跟框架关系不大,我用的自研框架。
|
13
ashong 2020-11-10 14:44:09 +08:00 via iPhone
civet
|
14
rogwan 2020-11-10 14:44:19 +08:00 via Android
@wuzhanggui 你用 fastapi 前端搭什么框架好?
|
15
lixuda 2020-11-10 14:51:58 +08:00
flask
|
16
tanjnr 2020-11-10 14:53:29 +08:00 via iPhone
@azev 楼上推荐的 fastapi 也不错的,你要是全新开发,用这个 fastapi 挺好。我用的自研框架是写了很久的,一套代码比较成熟,功能比较完整的 mvc 库。对我来说,在此基础上开发效率较高。
|
17
wuzhanggui 2020-11-10 15:04:33 +08:00 1
@rogwan 我用的 vue,好用呐
|
18
Kilerd 2020-11-10 15:09:59 +08:00
rust 啊
做工慢,运行速度快,占用内存还少 |
19
lithbitren 2020-11-10 15:23:56 +08:00 1
rust 用的好的话各项指标都会超过 go,但主要是碰到很多问题根本找不到答案,就算是英文资料也不够多,不管是 actix/hyper/warp,很多需要小小提示一下就能解决的简单需求也不一定找得到结果,底层很多东西更是搞不清楚原理,能编译通过就不错了。不像 java/python/go 无论是肤浅的问题还是有深度的问题,基本都能找到解决方案,所以个人还是推荐 fastapi 和 gin,不过也看多小的应用了,实际上就算是 flask/django 面对大多数小应用也是没问题的,java 熟的也可以直接上 springboot,开发速度也很快,其他没用过不太懂。
|
20
3dwelcome 2020-11-10 15:26:48 +08:00 via Android
怎么没人说用 nodejs,低配置单核首选。
|
21
ShuangChenyue 2020-11-10 15:27:52 +08:00
go 吧
|
22
mmdsun 2020-11-10 15:38:59 +08:00 via Android
这几个框架 springboot 最好用。但 Java 资源占用太大了。
推荐 dotnet core api 吧,和 springboot 差不多。但占用小很多。 |
23
crclz 2020-11-10 15:48:01 +08:00
.Net core
|
24
p1094358629 2020-11-10 15:50:40 +08:00
jfinal
|
25
cmdOptionKana 2020-11-10 15:54:26 +08:00
不是太懂 dotnet core, 印象中好像和 Java 一样需要一个类似于 jvm 的东西吧?如果是的话也不省内存。
然后 flash(python) 如果不做优化,占用内存应该比 Go 大。 php 要看你用什么框架,这个内存占用受框架影响比较大。 |
26
sagaxu 2020-11-10 15:55:03 +08:00 via Android
springboot 起码需要 0.1G 内存,稍微带点逻辑 0.2G 起步,要跑的欢快至少要 0.5G
|
27
cmdOptionKana 2020-11-10 16:03:32 +08:00 2
看了一下我服务器上正在跑的四个用 Go 写的小网站(没有访问量的自用网站),分别占用 0.6M, 0.8M, 1.0M, 4.2M
|
28
darktutu 2020-11-10 16:05:06 +08:00
|
29
GiantHard 2020-11-10 16:15:57 +08:00 via Android
省内存这点首先排除 Spring Boot,我个人偏好静态类型,所以接着排除 flask 跟 PHP,建议 Go 跟 ASP.NET Core 二选一
|
31
Rwing 2020-11-10 16:26:32 +08:00 2
假定你这个应用只是输出一个 helloworld
内存占用从小到大:go < .net core ≈ flask < spring 不知道你说的速度是指什么? 如果是运行性能,从快到慢:.net core ≈ go < spring < flask 如果是开发效率,从快到慢:.net core ≈ spring < flask < go 综上所述,考虑. net core 吧 😊 部分数据参考 https://www.techempower.com/benchmarks/#section=data-r19&hw=ph&test=plaintext php 个体间差异太大不纳入统计 |
32
libook 2020-11-10 16:38:28 +08:00
技术上基本上是个无底洞,你可以不断优化,就看你觉得值得投入多少。
省内存,那么主流的有垃圾回收机制的语言就不占优势了;要快的话,通常编译成机器码的会比虚拟机或解释器型的语言好一些,当然也有例外。 但看省内存和速度快这两个方面的话 Rust 语言写的程序可能会比较符合要求,当然 C++也可以,就是写出好程序比较考验功力。 不过个人经验看来即便云主机配置再低,跑几个小服务用啥技术栈也都没啥大问题。 以上都是针对有动态业务逻辑的 Web 服务,如果你只是 host 几个静态文件的话,Nginx 各方面都很不错。 |
33
zoharSoul 2020-11-10 16:43:11 +08:00
@cmdOptionKana #27 这也太小了吧
什么框架啊? |
34
jj123456 2020-11-10 18:03:08 +08:00
多小的 web 应用?
|
35
brokenQ 2020-11-10 18:18:49 +08:00
litespeed
|
36
namelosw 2020-11-10 18:41:39 +08:00 via iPhone
Rust
|
37
Cbdy 2020-11-10 18:42:36 +08:00 via Android
试试 Node.js
|
38
locoz 2020-11-10 18:46:32 +08:00 via Android
fastapi 确实挺爽的,但是省内存的话还是用 go 的吧,知名的几个都可以
|
39
cmdOptionKana 2020-11-10 18:51:27 +08:00
@zoharSoul Go 做小网站用不用框架都行,标准库基本够用了,我就用标准库。
其中一个项目是用来临时保存文字备忘、临时保存文件的网站,有点类似于 firefox send, 但做成了单用户系统(而不是公用型),同时提供了简单的命令行功能(可以从手机或电脑发送文本消息,然后在服务器用命令行接收),这几天打算整理一下就发布。 |
40
ghjacky 2020-11-10 18:57:21 +08:00
自己的 vps 512m 内存,go+vue 做了个博客,跑有 nginx 、ss 、mysql,其他都是系统服务,内存使用 190m
|
42
cocoabeans 2020-11-10 20:07:45 +08:00
sanic
|
43
ourslay 2020-11-10 21:01:21 +08:00 via iPhone
quarkus native
|
44
bugsnail 2020-11-10 21:03:27 +08:00
|
45
lbp0200 2020-11-10 21:21:48 +08:00
节省内存考虑
golang>dotnet core> flask> springboot> php 现实是,根本没有访问量,所以你这个伪需求,用啥都一样 |
47
xionger 2020-11-10 22:10:51 +08:00
flask
|
48
debuggerx 2020-11-10 22:16:29 +08:00
go+标准库
|
49
Jackeriss 2020-11-10 23:49:53 +08:00 via iPhone
首先排除 spring boot 。。。时候剩下的熟悉哪个用哪个
|
50
aaronlam 2020-11-10 23:55:28 +08:00
推荐 Nodejs
|
51
reeco 2020-11-10 23:58:47 +08:00
springboot + openj9 内存占用也很省的,放弃 spring boot 用 vertx 之类的,能更省一点
|
52
thet 2020-11-11 00:04:16 +08:00 via iPhone
肯定 go 呀,开发快 特别省内存,用标准库开发就行,性能又好
|
53
MintZX 2020-11-11 04:22:01 +08:00 via iPhone
小项目当然是 ruby on rails 啊,按天算的开发周期
|
54
lancelock 2020-11-11 08:55:36 +08:00 via iPhone
|
55
96412hj 2020-11-11 09:34:02 +08:00
```go
package main import "github.com/gin-gonic/gin" func main() { r := gin.Default() r.GET("/ping", func(c *gin.Context) { c.JSON(200, gin.H{ "message": "pong", }) }) r.Run() // listen and serve on 0.0.0.0:8080 (for windows "localhost:8080") } ``` |
56
zarte 2020-11-11 09:54:52 +08:00
当然是 php 咯,go 你修改了还要编译下。
|
57
yincrow 2020-11-11 10:14:54 +08:00
纯 HTML 速度快又省内存
|
58
mauve 2020-11-11 10:35:32 +08:00
JAMStack 最省内存,性能基本不存在上限,因为不相关,访问速度和 CDN 的速度一样
|
59
mingsz 2020-11-11 11:13:11 +08:00 1
node 或 go
|
60
JJstyle 2020-11-11 11:18:48 +08:00
```php
<?php header('Content-type: application/json'); echo json_encode(['message' => 'pong']); ``` $ php -S 0.0.0.0:80 论快,我大 PHP 服过谁? |
61
xxxy 2020-11-11 12:18:52 +08:00
nodejs 吧,非常省事
|
62
acmore 2020-11-11 13:42:42 +08:00
开发效率上的话,PHP, Flask / FastAPI, Express, Spring Boot CLI 等都可以几乎以单文件进行编写和部署,要找一个最快的方案的话,如 60 楼所说,PHP 最快。
|
63
whusnoopy 2020-11-11 17:01:48 +08:00
你会啥选啥,如果需要多花你三五天去调试搭环境啥的,这个钱省出来直接去买个高配点的云主机不好么,非得去抠这一点,一个靠谱点的研发岗,一周的薪资开销还不够买个好点的云主机?能用的久再考虑优化吧,也许没多久这个应用就下掉不要了
|
64
cxsz 2020-11-11 17:44:29 +08:00
fastapi 挺好用
|