laodao
V2EX  ›  问与答

问一个静态页面性能问题哦?

  •  
  •   laodao · Mar 27, 2016 · 2254 views
    This topic created in 3730 days ago, the information mentioned may be changed or developed.

    问一个服务器性能问题哦。我现在有一个 html 页面。用 nginx 直接访问性能肯定很好。但是现在这个页面要检测一下 ip 才能访问。所以需要首先用 Node.js 或者 php 检测下 ip ,之后这个后端语言读取 html 页面内容,输出。 nginx , node.js 和 php 在完成这件事的性能差别能有多大。如果一天一百万 ip 的情况下。

    11 replies    2016-03-27 20:15:43 +08:00
    xia0chun
        1
    xia0chun  
       Mar 27, 2016 via iPhone
    为什么不用动态域名?
    bazingaterry
        2
    bazingaterry  
       Mar 27, 2016 via iPhone
    单纯检测 ip nginx 也有相应的模块吧?
    046569
        3
    046569  
       Mar 27, 2016
    使用 ngx_lua 或 ngx_mruby 来开发.LZ 的需求类似 WAF,如果简单的 IP 屏蔽直接用 ngx_http_access_module 就好了...
    lecher
        4
    lecher  
       Mar 27, 2016 via Android
    一百万一天的 PV ,平均下来峰值不超过二十每秒,只要不是非常耗性能的检测,任何语言都可以处理。
    halfcrazy
        5
    halfcrazy  
       Mar 27, 2016
    好像看过一个 benchmark , netty 比 openresty 在输出静态页上要快
    laodao
        6
    laodao  
    OP
       Mar 27, 2016
    @lecher 差不多一百万 ip 。 pv 可能在一千万。关键是高峰期在晚上。之前晚上高峰期数据库就因为内存挂了。其实没用数据库。但是一到高峰期数据库就给整挂了。
    laodao
        7
    laodao  
    OP
       Mar 27, 2016
    @046569 恩恩,目前这种方式也在考虑。主要是不懂得 lua 。要是 nginx 支持 node 了。那就比较好了。
    lecher
        8
    lecher  
       Mar 27, 2016 via Android
    单机处理千万 PV 的静态页面,主要看检测 IP 这个算法到底怎么样了。
    如果考虑未来业务攀升的扩展, PHP 应该可以淘汰了,它开辟进程处理业务完成之后销毁变量这套 gc 机制不太适合这种业务。新浪之前用过 PHP 处理业务,也扛得住,就是性能差点服务器费用要高一些。
    同类的业务,用常驻内存的模型 go 、 openresty 的成功案例比较多。都是 qps 万级别的性能。
    如果熟悉 nodejs , nodejs 也是可选方案, nodejs 的性能比 go 差,但是优于 Python tornado 。

    Nginx 有支持 js 的版本:
    https://www.nginx.com/blog/nginscript-why-our-own-javascript-implementation/
    https://www.nginx.com/resources/wiki/nginScript/
    不过这是个实验版本,敢冒险可以试试。
    zlink
        9
    zlink  
       Mar 27, 2016 via Android
    @lecher 峰值能算平均的吗?😓
    abelyao
        10
    abelyao  
       Mar 27, 2016 via iPhone
    是检测单个 IP ,还是 IP 段,还是多个 IP 还是有区别的吧…
    laodao
        11
    laodao  
    OP
       Mar 27, 2016
    @lecher 恩恩,谢谢
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2997 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 58ms · UTC 09:28 · PVG 17:28 · LAX 02:28 · JFK 05:28
    ♥ Do have faith in what you're doing.