hi-nginx-1.4.2发布,多项重要更新

简介: 支持多种编程语言混合开发web应用的通用服务器hi-nginx-1.4.2已经发布了。此次发布包含多项重要更新:支持python2和3,通过编译选项--with-http-hi-python-version删除boost.

支持多种编程语言混合开发web应用的通用服务器hi-nginx-1.4.2已经发布了。

此次发布包含多项重要更新:

  1. 支持python2和3,通过编译选项--with-http-hi-python-version
  2. 删除boost.python依赖,优化python3兼容性,性能有所提高
  3. 支持lua和luajit,通过编译选项--with-http-hi-lua-version
  4. 为python专门定制了hi.py框架,单一入口,类似bottle或者flask一样,对性能有一定影响,但还是比bottle和flask快得多
  5. 为php7专门定制了类似hi.py的微型框架,单一入口,类似bottle或者flask,对性能没什么影响

hi.py示例:

 1 from hi import hi
 2 app =hi()
 3 
 4 @app.route(r'^/test/?$',['GET','POST'])
 5 @app.route(r"^/$",['GET'])
 6 def hello_world(req,res,param):
 7     res.header('Content-Type','text/plain;charset=utf-8')
 8     res.content('hello,world')
 9     res.status(200)
10 
11 @app.route(r"^/client/?$",['GET','POST'])
12 def client(req,res,param):
13     res.content('{}<br>{}<br>{}<br>{}<br>{}'.format(req.client(),req.method(),req.uri(),req.user_agent(),req.param()))
14     res.status(200)
15 
16 @app.route(r"^/hello/(?P<who>\w+)?$",['GET'])
17 def hello(req,res,param):
18     res.content('{}={}'.format('who',param['who']))
19     res.status(200)
20 
21 
22 
23 if __name__ == '__main__':
24     app.run(hi_req,hi_res)

php7示例代码:

require_once 'hi/servlet.php';
require_once 'hi/route.php';

class index implements \hi\servlet {

    public function handler(\hi\request $req, \hi\response $res) {
        $app = \hi\route::get_instance();
        $app->add('{^/$}', array('GET'), function ($rq, $rs, &$param) {
            $rs->content = 'hello,world';
            $rs->status = 200;
        });
        
        $app->add('{^/who/(?P<name>\w+)/?$}', array('GET'), function ($rq, $rs, &$param) {
            $rs->content = 'hello,'.$param['name'];
            $rs->status = 200;
        });

        $app->add('{^/phpinfo/?$}', array('GET'), function($rq, $rs, &$param) {
            ob_start();
            phpinfo();
            $rs->content = ob_get_contents();
            $rs->status = 200;
            ob_end_clean();
        });
        $app->run($req, $res);
    }

}

 

简介

它既是 web 服务器,也是 application 服务器。 

它是 NGINX 的超集。 

它性能强劲,易于开发,部署方便。 

它支持多种语言混合开发 web 应用:

  • C++

  • Python

  • Lua

  • Java

  • PHP

目录
相关文章
|
运维 监控 应用服务中间件
【运维知识进阶篇】zabbix5.0稳定版详解3(监控Nginx+PHP服务状态信息)(二)
【运维知识进阶篇】zabbix5.0稳定版详解3(监控Nginx+PHP服务状态信息)(二)
252 0
|
7月前
|
前端开发 JavaScript 应用服务中间件
经验大分享:nginx从仅支持80到支持80和443
经验大分享:nginx从仅支持80到支持80和443
249 0
|
运维 监控 应用服务中间件
【运维知识进阶篇】zabbix5.0稳定版详解3(监控Nginx+PHP服务状态信息)(一)
【运维知识进阶篇】zabbix5.0稳定版详解3(监控Nginx+PHP服务状态信息)
260 0
|
运维 监控 PHP
【运维知识进阶篇】zabbix5.0稳定版详解3(监控Nginx+PHP服务状态信息)(三)
【运维知识进阶篇】zabbix5.0稳定版详解3(监控Nginx+PHP服务状态信息)(三)
125 0
|
网络协议 安全 应用服务中间件
Nginx 实战系列之二:Nginx 优化中在 Nginx 侧 和 Linux 系统侧必须要调整优化的参数详细和最佳推荐配置
Nginx 实战系列之二:Nginx 优化中在 Nginx 侧 和 Linux 系统侧必须要调整优化的参数详细和最佳推荐配置
|
tengine 缓存 负载均衡
重识Nginx - 01 Nginx 主要应用场景及版本概述
重识Nginx - 01 Nginx 主要应用场景及版本概述
102 0
|
域名解析 缓存 网络协议
Nginx 拓展&优化
Nginx 拓展&优化
|
JSON Java 应用服务中间件
GIS开发:nginx发布常用数据
GIS开发:nginx发布常用数据
380 0
|
Kubernetes Shell 应用服务中间件
K8S 安装及部署 Nginx 记录文档
K8S 部署文档记录 本文旨在对通过基于 Virtual Box 和 Vagrant 安装 CentOS虚拟机,在虚拟机中安装 K8S 集群并部署 Nginx 做一次记录,仅供参考。 K8S 部署文档记录 环境 虚拟机信息 安装基础环境 master node1 更新 CentOS 主机名 IP 映射 K8S 安装前期准备 1.
13327 0
|
应用服务中间件 nginx 网络协议
nginx各版本变化说明
nginx各版本变化说明 使用nginx cache,想要配置cache数据自动清理时间,发现一个参数 clean_time ,但发现很早这个参数就从稳定版本中 清除了。目前来看,只能用purge指令控制。
2064 0