zoukankan      html  css  js  c++  java
  • openresty快速安装

    Blog:博客园 个人

    概述

    OpenResty® 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。

    OpenResty® 通过汇聚各种设计精良的 Nginx 模块(主要由 OpenResty 团队自主开发),从而将 Nginx 有效地变成一个强大的通用 Web 应用平台。这样,Web 开发人员和系统工程师可以使用 Lua 脚本语言调动 Nginx 支持的各种 C 以及 Lua 模块,快速构造出足以胜任 10K 乃至 1000K 以上单机并发连接的高性能 Web 应用系统。

    OpenResty® 的目标是让你的Web服务直接跑在 Nginx 服务内部,充分利用 Nginx 的非阻塞 I/O 模型,不仅仅对 HTTP 客户端请求,甚至于对远程后端诸如 MySQL、PostgreSQL、Memcached 以及 Redis 等都进行一致的高性能响应。

    组成

    OpenResty并不是个“单块”(Monolithic)的程序,而是由众多设计精良的组件集合而成的,这些组件可以灵活组装或拆卸,共同搭建起了完整的高性能服务器开发环境。

    核心组件:

    • Nginx
    • LuaJit:Lua语言解释器
    • ngx_lua:处理http协议,让lua程序嵌入在Nginx里运行
    • stream_lua:处理tcp/udp协议

    image-20210515111930008

    安装

    采用源码安装。

    安装依赖

    yum -y install readline-devel pcre-devel openssl-devel gcc gcc-c++ postgresql-devel geoip-devel
    

    下载解压

    cd /opt
    wget https://openresty.org/download/openresty-1.19.3.1.tar.gz
    tar zxf openresty-1.19.3.1.tar.gz
    

    编译安装

    cd openresty-1.19.3.1
    # 若不指定路径,默认会安装在/usr/local/openresty
    ./configure --prefix=/opt/openresty 
                --with-luajit 
                --without-http_redis2_module 
                --with-http_iconv_module 
                --with-http_postgres_module 
    	    --with-http_ssl_module 
    	    --with-http_v2_module 
    	    --with-http_realip_module 
    	    --with-http_geoip_module 
    	    --with-http_gzip_static_module 
    	    --with-http_stub_status_module
    # 根据实际核心数配置
    make -j8 && make install
    

    验证

    新增一个location:

    location /hello_lua {
    	default_type 'text/plain';
    	content_by_lua 'ngx.say("hello, lua")';
    }
    

    启动nginx

    /opt/openresty/bin/openresty
    

    验证

    [root@test ~]# curl 127.0.0.1/hello_lua
    hello, lua
    

    ngx_lua相关指令

    参考:https://github.com/openresty/lua-nginx-module#directives

  • 相关阅读:
    【CentOS】CentOS7开放及查看端口
    【nginx】配置https 证书生成的方法
    【MacOs】 Royal TSX SSH 和 FTP 中文乱码
    【PHP】thinkphp3.2.5
    【TCP/IP】入门学习笔记 五
    【TCP/IP】入门学习笔记 四
    HTTP
    【PHP】高并发和大流量的解决方案(思路)
    react多级路由 重定向与404定义
    react自定义导航组件 路由参数
  • 原文地址:https://www.cnblogs.com/Rohn/p/14771971.html
Copyright © 2011-2022 走看看