• 请不要在回答技术问题时复制粘贴 AI 生成的内容
asuraa
V2EX  ›  程序员

超小型 vps web 服务器语言和框架怎么选择?

  •  
  •   asuraa · Mar 16, 2022 · 8172 views
    This topic created in 1694 days ago, the information mentioned may be changed or developed.

    之前跟风买了一些很弱鸡的小服务器 超售严重的 1 核心 外加 128m 的内存 这种小服务器想做个简单的动态 web 网站 用什么语言和框架比较合适? php 原生撸? java 是不考虑了 这点内存不够启动 jvm 的 或者是 go 之类的?

    69 replies  •  2022-03-20 18:54:23 +08:00
    kidonng
    kidonng
    Mar 16, 2022 via Android
    1
    能不动态尽量别动态吧...JVM 和 Go 肯定别了,可以考虑 Lua 或者 JS
    数据库 sqlite ,也上不了更多东西了
    kkocdko
    kkocdko
    Mar 16, 2022❤️1
    2
    看你会什么咯,看你提到了 php ,那就用 php 好了。
    内存占用大致排序:Java>NodeJS>Golang/PHP>Rust/C/C++
    panzhc
    panzhc
    Mar 16, 2022❤️2
    3
    Openresty 用 Lua 连接 Sqlite ,有 Web 开发框架。
    westoy
    westoy
    Mar 16, 2022
    4
    拿来 FQ 或者反代吧, 除非完全不在乎数据啊, 不然超卖不止卖内存和 CPU 的, 还能超卖硬盘的, 别硬盘光了直接写入出错数据炸掉.....
    Tink
    Tink
    Mar 16, 2022 via Android
    5
    nginx 反代,源站再买一台
    geekvcn
    geekvcn
    Mar 16, 2022❤️9
    6
    直接扔了吧,免费主机都比这配置强。或者搭建备用梯子
    Kasumi20
    Kasumi20
    Mar 16, 2022
    7
    上 Rust
    pengtdyd
    pengtdyd
    Mar 16, 2022
    8
    我说 C 应该没人反对吧
    cybird
    cybird
    Mar 16, 2022
    9
    这点内存。。直接上 CPP 或者 Rust 吧,别想着 java 、NodeJS 之类的了
    learningman
    learningman
    Mar 16, 2022❤️2
    10
    64m 都有人能 nginx+mysql+php-cgi ,相信自己(
    wonderfulcxm
    wonderfulcxm
    Mar 16, 2022 via iPhone
    11
    我以前搬瓦工就这种配置,放了个 Wordpress ,PHP 可以,mysql 不太行,调到最低配置运行一段时间都会 oom ,为此还专门写了个监控脚本重启 mysql
    shiny
    shiny
    PRO
    Mar 16, 2022
    12
    并发不高的话也不是不能用,做下 swap ,调低空闲时的进程数。访问量大的时候就卡一点。
    misaka19000
    misaka19000
    Mar 16, 2022
    13
    python 啊,Flask 加 sqlite
    kran
    kran
    Mar 16, 2022 via Android
    14
    可以 uwsgi+lua
    debuggerx
    debuggerx
    Mar 16, 2022 via Android
    15
    dart+pg 可以
    fkmc
    fkmc
    Mar 16, 2022 via iPhone
    16
    rust sqlite
    yungo8
    yungo8
    Mar 16, 2022 via Android
    17
    go 可以的,数据库 sqlite 。
    实在不行就装个 frps 反代你家的服务呗
    IvanLi127
    IvanLi127
    Mar 16, 2022 via Android
    18
    除了做反向代理,就只能做内网穿透了。。。建议家里架服务 ,用这 vps 反向代理
    ByteCat
    ByteCat
    Mar 16, 2022❤️1
    19
    可是现在已经 2202 年了(
    十年前我这么玩过
    knightdf
    knightdf
    Mar 16, 2022
    20
    nginx+lua
    JustSong
    JustSong
    Mar 16, 2022 via Android
    21
    Go + SQLite
    BrettD
    BrettD
    Mar 16, 2022 via iPhone
    22
    Go 就算了,在 AWS T4g nano 用 Caddie 服务一个静态网站居然占了几百兆内存然后被 OOM kill 了,换成 nginx 之后内存占用才只有 7MB 。
    tozp
    tozp
    Mar 16, 2022
    23
    这点内存还是别整动态网站了,用 Hugo 生成个静态的吧,够用了。
    woorz
    woorz
    Mar 17, 2022
    24
    良心云这么良心,不支持一下?
    Dart
    Dart
    Mar 17, 2022
    25
    好奇买这么小的干嘛?还超瘦。
    asuraa
    asuraa
    OP
    Mar 17, 2022
    26
    @ByteCat 好玩啊

    @woorz 我买的 ruvds 的俄罗斯小机器

    @Dart 买来玩啊。
    asuraa
    asuraa
    OP
    Mar 17, 2022
    27
    @knightdf lua 写起来太蛋疼了 感觉很弱鸡
    smallgoogle
    smallgoogle
    Mar 17, 2022
    28
    无脑 php ?
    janxin
    janxin
    Mar 17, 2022
    29
    反正静态内容无脑 Nginx ;

    需要动态内容,PHP 可以; Go 量小也行,但是访问多了容易 OOM ; Java 就不用说了,肯定 OOM ; Node 也肯定 OOM 。
    defunct9
    defunct9
    Mar 17, 2022❤️1
    30
    我的小 vps ,跑了 journey(go 写的兼容 node ghost 的博客),quagga(bgp peer ),trojan-go (你懂得),很好用
    bthulu
    bthulu
    Mar 17, 2022
    31
    上 C 语言或者汇编
    0o0O0o0O0o
    0o0O0o0O0o
    Mar 17, 2022 via iPhone
    32
    这种我可能只考虑写一些 iptables 规则…
    ersic
    ersic
    Mar 17, 2022❤️1
    33
    语言都差不多,关键是数据库,本机的话估计只能 sqlite 了
    knightdf
    knightdf
    Mar 17, 2022
    34
    @luodaoyi 弱鸡倒不弱鸡,就是轮子很少
    momocraft
    momocraft
    Mar 17, 2022
    35
    有的路由器都比这内存多
    zyq2280539
    zyq2280539
    Mar 17, 2022
    36
    PHP
    ihciah
    ihciah
    Mar 17, 2022❤️1
    37
    都用这种机器了肯定不在意性能,那 swap 记得拉满。
    OoGKoO
    OoGKoO
    Mar 17, 2022
    38
    Nginx+Gunicorn+Python Flask
    sadfQED2
    sadfQED2
    Mar 17, 2022 via Android
    39
    @bthulu 汇编写网站可还行
    hwdef
    hwdef
    Mar 17, 2022❤️2
    40
    nginx 也大,,,上 lighttpd
    fstab
    fstab
    Mar 17, 2022
    41
    你可能需要 debian8+caddy1+php5.6+sqlite
    我除了跑几个 typecho ,还有内存安装个 x-ui 。
    fstab
    fstab
    Mar 17, 2022
    42
    fstab
    fstab
    Mar 17, 2022❤️1
    43
    我买了个 gullo 的 128m 内存小鸡,按照上面的教程,搭建了环境还挺好用,
    内存占用也不高,caddy1 默认支持 ipv6 ,而且功能还很多,比 lighttpd 用起来简单多了。
    [![qC84II.png]( https://s1.ax1x.com/2022/03/17/qC84II.png)]( https://imgtu.com/i/qC84II)
    nbweb
    nbweb
    Mar 17, 2022
    44
    128M 内存跑过:debian+php+mysql+nginx ,完全没啥问题,挂个小流量博客也不是不行。
    Q4h7388nR28s95fa
    Q4h7388nR28s95fa
    Mar 17, 2022
    45
    https://redbean.dev/

    试一下,lua+sqlite ,最近看到某个 lua 大咖基于这个写了一个 web 框架( https://github.com/pkulchenko/fullmoon ),才发现有这么超级小的项目。
    Xusually
    Xusually
    Mar 17, 2022
    46
    OpenResty / Nginx+Lua
    C/CPP + CGI
    PHP 搞个低配的脚手架或者原生开撸
    zyy314680012
    zyy314680012
    Mar 17, 2022 via Android
    47
    脚本语言问题都不大吧
    NXzCH8fP20468ML5
    NXzCH8fP20468ML5
    Mar 17, 2022❤️1
    48
    go 的内存占用不大吧,如果只是个人网站,就 go 好了。
    如果对外公开 API ,Rust
    mmdsun
    mmdsun
    Mar 17, 2022
    49
    go 或者 c# 这两占用都很低。CloudNative 持很好。
    squirrelBdg
    squirrelBdg
    Mar 17, 2022
    50
    内网穿透 自己开隧道
    AstroProfundis
    AstroProfundis
    Mar 17, 2022
    51
    完全可以跑得起 wordpress, 把 mysql 和 php 的配置压一下,不要承受太高并发没什么问题
    momooc
    momooc
    Mar 17, 2022 via Android
    52
    别动态了,静态还能用一下。
    natforum
    natforum
    Mar 17, 2022
    53
    一个基于 OpenResty 的 lua 的 web 框架
    https://github.com/sumory/lor
    chavyleung
    chavyleung
    Mar 17, 2022
    54
    我跑个题,申请 oracle 永久免费的 4c16g 不香吗,为什么要为为难自己。
    docx
    docx
    Mar 17, 2022 via Android
    55
    办法肯定有,但请不要折磨自己
    Kaiyuan
    Kaiyuan
    Mar 17, 2022
    56
    我在跑 Wordpress ,PHP 闲置 5 线程以下。
    BrettD
    BrettD
    Mar 17, 2022 via iPhone
    57
    @chavyleung oracle 那个“免费主机”坑爹的,运气不好的话毫无征兆就被删机丢数据了
    findex
    findex
    Mar 17, 2022❤️1
    58
    lighttpd + cpp/php 简单自己用一下是没啥问题的
    Java, Python, Go 这类的就不要想了。
    建议适当调整 swap 分区,设置 swappiness 为 75%💁🏼
    128MB 内存和我买的几十块的路由器一样内存😂
    findex
    findex
    Mar 17, 2022
    59
    @BrettD oracle 删库但不跑路,毕竟免费,oracle 自己说了算。
    patx
    patx
    Mar 17, 2022
    60
    python+aiohttp
    Zhouisme
    Zhouisme
    Mar 17, 2022 via Android
    61
    这机器我曾买过,搭建过 blog 。php SQLite Nginx typecho

    用 Go/C++就很棒,简单的动态直接不用框架了。把 html 打包进二进制里运行就好了。一定要加 swap 。用 golang 连 Nginx caddy 都不用,比较香吧,关键写的快呀。
    xsen
    xsen
    Mar 17, 2022
    62
    nginx + go ( db 用 sqlite )没问题
    java/node 之类就别考虑了
    patrickyoung
    patrickyoung
    Mar 17, 2022 via iPhone
    63
    64M 跑 LNMP 和 wordpress 都可以
    hallDrawnel
    hallDrawnel
    Mar 17, 2022❤️1
    64
    Go 可以,因为我在路由器里跑 Go 写的 dnscrpty proxy 都没有问题
    stevefan1999
    stevefan1999
    Mar 17, 2022❤️1
    65
    肯定是跑 Rust

    話説你不如換個服務器啦 kora
    duke807
    duke807
    Mar 17, 2022
    66
    極小且省事的方式是:
    使用 busybox httpd 做 web 服務器(需要 https 的話可以搭配使用 stunnel )
    使用 shell 腳本做 cgi (需要上傳大文件的話可以用 qdecoder/examples/upload.c 做 cgi )

    稍微寬裕一點 shell 腳本升級爲 python 腳本,busybox httpd 也可升級爲 apache
    nicevar
    nicevar
    Mar 17, 2022
    67
    Go 不行的,随便跑点东西就挂了,10 多年前很多 vps 都是这种配置,那个年代做垃圾站,很多用 php+access ,还是可以的,跑 MySQL 太吃力,虽然能跑,但是容易挂。
    asuraa
    asuraa
    OP
    Mar 20, 2022
    68
    @HiCode 这个不错 哈哈我喜欢
    asuraa
    asuraa
    OP
    Mar 20, 2022
    69
    @chavyleung 折腾一下 无聊的 java 工作中增添一些乐趣
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2168 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 114ms · UTC 16:03 · PVG 00:03 · LAX 08:03 · JFK 11:03
    ♥ Do have faith in what you're doing.