本篇内容主要讲解“什么是openResty”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“什么是openResty”吧!
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 等都进行一致的高性能响应。
对于一些常见的 Linux 发行版本(Ubuntu、Debian、CentOS、RHEL、Fedora、OpenSUSE、Alpine 和 Amazon Linux), OpenResty® 提供 官方预编译包。确保你首先用这种方式来安装。
对于 Mac OS X 或 macOS 用户,强烈推荐您使用 homebrew 包管理工具安装 OpenResty。可以直接使用下面 这一条命令:
brew install openresty/brew/openresty
如果你之前是从 homebrew/nginx
安装的 OpenResty,请先执行:
brew untap homebrew/nginx
如果您还没有下载 OpenResty 的源码包, 请到 Download 页下载。
首先,您可以根据下面的示例安装和构建OpenResty。
tar -xzvf openresty-VERSION.tar.gz cd openresty-VERSION/ ./configure make sudo make install
示例中的 VERSION
替换成 OpenResty的版本号, 比如 1.11.2.1
。 如果您在构建过程中需要对于细节更加灵活的控制,请您继续阅读。
安装成功后,我们就可以使用 openresty 直接输出 html 页面。
首先我们可以创建一个工作目录:
mkdir /home/www cd /home/www/ mkdir logs/ conf/
其中 logs 目录用于存放日志,conf 用于存放配置文件。
接着,我们在 conf 目录下创建一个 nginx.conf 文件 代码如下:
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>") '; } } }
如果你熟悉 nginx 的配置,应该对以上代码就很熟悉。这里我们将 html 代码直接写在了配置文件中。
默认情况下 openresty 安装在 /usr/local/openresty 目录中,启动命令为:
cd /home/www /usr/local/openresty/nginx/sbin/nginx -p `pwd`/ -c conf/nginx.conf
如果没有任何输出,说明启动成功,-p 指定我们的项目目录,-c 指定配置文件。
Nginx
是一个高性能的HTTP和反向代理服务,也是一个IMAP/POP3/SMTP
服务。
1、处理响应请求很快
2、高并发连接
3、低的内存消耗
4、具有很高的可靠性:
5、高扩展性
6、热部署
nginx 只有一个master
进程和已配置个数的 worker
进程,master
进程把请求交给 worker
去处理,一个worker
在可能出现阻塞的地方会注册一个事件就放过去了(epoll模型),会继续处理后续的请求(非阻塞),当这个事件处理完之后会通过callback
来通知worker
继续处理那条请求后续的事情(事件驱动),单个worker
可以处理大量请求而不会轻易让整个系统卡住。
master
管理进程与worker
工作进程的分离设计,使得 Nginx
具有热部署的功能,可以在 7 × 24 小时不间断服务的前提下,升级 Nginx 的可执行文件。也可以在不停止服务的情况下修改配置文件,更换日志文件等功能。
openresty 是基于 nginx 增加了模块,我们说的其实也就是 nginx 的性能.
OpenResty解决的是高并发的痛点,异步处理方式提高了服务器整体负载能力,而不是提高某个请求的速度。
到此,相信大家对“什么是openResty”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。