OpenResty是个什么鬼?

2022-09-11 17:46:44 浏览数 (1)

OpenResty是个什么鬼?

等一下,OpenResty 是个什么鬼?

  • OpenResty是一个强大的 Web 应用服务器,Web 开发人员可以使用 Lua 脚本语言调动 Nginx 支持的各种 C 以及 Lua 模块,更主要的是在性能方面,OpenResty可以 快速构造出足以胜任 10K 以上并发连接响应的超高性能 Web 应用系统。

优点

  • OpenResty 的目标是让你的 Web 服务直接跑在 Nginx 服务内部,充分利用 Nginx 的非阻塞 I/O 模型,不仅仅对 HTTP 客户端请求,甚至于对远程后端诸如 MySQL,PostgreSQL,~Memcaches 以及 ~Redis 等都进行一致的高性能响应。 所以对于一些高性能的服务来说,可以直接使用 OpenResty 访问 Mysql或Redis等,而不需要通过第三方语言(PHP、Python、Ruby)等来访问数据库再返回,这大大提高了应用的性能。

OpenResty安装

环境说明

  • 本教程是基于ubuntu16.04.7安装OpenResty。
代码语言:javascript复制
vagrant@ubuntu-xenial:~$ cat /etc/issue
Ubuntu 16.04.7 LTS n l

编译安装

  • 安装地址文档
代码语言:javascript复制
#安装导入 GPG 公钥时所需的几个依赖包
 sudo apt-get -y install --no-install-recommends wget gnupg ca-certificates
 #导入我们的 GPG 密钥:
 wget -O - https://openresty.org/package/pubkey.gpg | sudo apt-key add -
 # 使用arch命令查看Ubuntu的内核
   arch
 # x86_64 或 amd64 系统
  echo "deb http://openresty.org/package/ubuntu $(lsb_release -sc) main" 
      | sudo tee /etc/apt/sources.list.d/openresty.list
 # arm64 或 aarch64 系统
  echo "deb http://openresty.org/package/arm64/ubuntu $(lsb_release -sc) main" 
      | sudo tee /etc/apt/sources.list.d/openresty.list
  #更新 APT 索引
   sudo apt-get update
  #安装openresty软件包
   sudo apt-get -y install openresty
  # 设置PATH
    PATH=/usr/local/openresty/nginx/sbin:$PATH
    export PATH

简单使用

logs 目录用于存放日志,conf 用于存放配置文件。

代码语言:javascript复制
mkdir /home/www
cd /home/www/
mkdir logs/ conf/

conf 目录下创建一个 nginx.conf 文件

代码语言:javascript复制
worker_processes  1;
error_log logs/error.log;
events {
 worker_connections 1024;
}
http {
 server {
     listen 9000;
     location / {
         default_type text/html;
         content_by_lua '
             ngx.say("<p>Hello, World!</p>")
         ';
     }
 }
}

启动 (如果没有任何输出,说明启动成功,-p 指定我们的项目目录,-c 指定配置文件。)

代码语言:javascript复制
nginx -p `pwd`/ -c ./conf/nginx.conf

测试 (curl http://localhost:9000/)

代码语言:javascript复制
<p>Hello, World!</p>

0 人点赞