OpenResty 最佳实践学习--安装和helloworld(1)
2017-09-26 20:24
513 查看
一:简介
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®官网
总结和拓展:
1.OpenResty 是 Nginx 与 Lua 的结合;
2.OpenResty 是多进程模式,会有一个 master 进程和多个 worker 进程。Master 进程管理 worker 进程,向各 worker 进程发送信号,监控 work 进程状态;
3.OpenResty 是异步非阻塞 ; 怎样理解阻塞非阻塞与同步异步的区别?知乎
4.子查询:OpenResty 中有三种方式发起子请求:capture、exec、redirect;
5.OpenResty 缓存机制。
二:安装
下载和安装在Openresty的官网都有介绍,但是这里还是要进行说明一下:下载和安装我的环境是 Linux CentOs 32位。
1.下载安装包
我下载的是最新的Openresty版本, openresty-1.11.2.5.tar.gz,上传到服务器,进行解压,命令如下:
tar -xzvf openresty-VERSION.tar.gz
示例中的 VERSION替换成 OpenResty的版本号, 比如 1.11.2.5。
2.安装前的准备
yum install readline-devel pcre-devel openssl-devel gcc
yum在线安装需要收费,如果yum不可以使用,使用本地yum源安装,具体配置见 Linux学习——yum学习和光盘yum源搭建
3.安装
在解压完之后,进行安装:
tar -xzvf openresty-VERSION.tar.gz cd openresty-VERSION/ ./configure make sudo make install
示例中的 VERSION替换成 OpenResty的版本号, 比如 1.11.2.5。
默认, openresty 程序会被安装到/usr/local/openresty目录。
三:Hello World
1.第一种常规配置方案如果之前有使用过nginx,那么这个配置和nginx很基本一致!
首先在新建两个目录,然后在conf/下新建nginx.conf ,我这里当做测试用,命令如下
mkdir openresty cd openresty/ mkdir logs/ conf/ cd conf touch nginx.conf vim nginx.conf
在nginx.conf 写
worker_processes 1; error_log logs/error.log; events { worker_connections 1024; } http { server { listen 8080; location / { default_type text/html; content_by_lua ' ngx.say("<p>hello, world</p>") '; } } }
然后启动openresty,启动命令和nginx一致。
/usr/local/openresty/nginx/sbin/nginx -c /dufy/openresty/conf/nginx.conf #启动后查看一下服务 ps -ef | grep nginx
在服务器使用 curl http://localhost:8080/,输出
curl http://localhost:8080/ #<p>hello, world</p>
获取直接在浏览器访问,我的访问地址为 http://192.168.1.111:8080/,页面显示hello, world!
2.第二种Lua配置
在conf下面新建nginx.conf 和 lua.conf ,命令如下
touch nginx.conf lua.conf
在lua.conf 中写内容:
#lua.conf server { listen 8080; location /lua { default_type text/html; content_by_lua ' ngx.say("<p>hello, world Lua!</p>") '; } }
在nginx.conf 中写内容,并且需要添加 lua模块路径:
worker_processes 1; error_log logs/error.log; events { worker_connections 1024; } http { #lua模块路径,多个之间”;”分隔,其中”;;”表示默认搜索路径,默认到/usr/servers/nginx下找 lua_package_path "/usr/servers/lualib/?.lua;;"; #lua 模块 lua_package_cpath "/usr/servers/lualib/?.so;;"; #c模块 include lua.conf #lua.conf和nginx.conf 在同一目录下 }
启动openrestyrest,然后访问:
/usr/local/openresty/nginx/sbin/nginx -c /dufy/openresty/conf/nginx.conf #启动后查看一下服务 ps -ef | grep nginx curl http://localhost:8080/lua #<p>hello, world Lua!</p>
获取直接在浏览器访问,我的访问地址为 http://192.168.1.111:8080/,页面显示hello, world Lua!
四:参考文章
openresty官网第一章 安装OpenResty(Nginx+Lua)开发环境
如果帅气(美丽)、睿智(聪颖),和我一样简单善良的你看到本篇博文中存在问题,请指出,我虚心接受你让我成长的批评,谢谢阅读!
祝你今天开心愉快!
欢迎访问我的csdn博客,我们一同成长!
“不管做什么,只要坚持下去就会看到不一样!在路上,不卑不亢!”
博客首页:http://blog.csdn.net/u010648555
相关文章推荐
- OpenResty 最佳实践学习--实战演习笔记(5)
- OpenResty 最佳实践学习--实战演习笔记(4)
- OpenResty 最佳实践学习--实战演习笔记(2)
- OpenResty 最佳实践学习--实战演习笔记(3)
- 一步步学习SPD2010--第一章节--探索SPD2010(4)附--使用SharePoint Designer创建站点(命名URL最佳实践)
- 大数据Spark “蘑菇云”行动第48课程 Spark 2.0内幕深度解密和学习最佳实践
- Androd系统开发最佳学习实践
- 《深入理解Android:Telephon原理剖析与最佳实践》学习笔记(系统框架)
- java学习实践:eclipse安装步骤
- 深度学习实践操作—从小白到大白(一):Ubuntu系统U盘安装
- 验证AD正确安装最佳实践
- Android学习 - Android最佳性能实践
- docker学习实践之路[第一站]环境安装
- Wix学习整理(2)——HelloWorld安装添加UI
- SmartClient学习(三):分布式智能客户端应用程序开发最佳实践
- js最佳实践学习记录
- openresty学习之mac下安装
- Windows7/8安装在VHD/VHDX中并原生引导的最佳操作实践
- Maven学习(十八)-- Maven最佳实践:版本管理
- Spring MVC学习笔记——JSR303介绍及最佳实践