首页 » Web前端 » nginxunitphp技巧_多措辞Web通用应用做事器NGINX Unit

nginxunitphp技巧_多措辞Web通用应用做事器NGINX Unit

duote123 2024-10-24 0

扫一扫用手机浏览

文章目录 [+]

很多人都用过强大的LNMP栈体系跑运用,更多人则用Nginx做一个代理,作为一个Web运用的安全、可以抵抗大流量运用网关和集群入口。
LNMP栈可以支持动态运用(PHP和Mysql),Nginx本身也可以用lua写一些动态运用。
但是现在运用脚本越来越多样化,运用微做事化,不只是PHP、Python,Java、Ruby,Perl等各种运用可能都会有,虽然有Docker这样的工具,但是配置也比较繁琐,而且对付灵巧变革配置Nginx须要每次reload加载不是一个很好的处理办法。
为理解决这种问题Nginx团队推出了一个神器——NGINX Unit。
本日虫虫就给大家推举这个工具。

概述

NGINX Unit是一个轻量级、多功能的开源做事器,两个紧张功能:

nginxunitphp技巧_多措辞Web通用应用做事器NGINX Unit

供应静态内容Web做事,

nginxunitphp技巧_多措辞Web通用应用做事器NGINX Unit
(图片来自网络侵删)

支持七种措辞(Node.js,Java,Perl,PHP,Python,Python3,Ruby,WebAssembly)行运用程序代码。

Unit将当代运用程序堆栈的多个层压缩为一个强大的、看重性能、低延迟和可扩展性的同等办理方案。
旨在供应一个人Web运用的快捷、通用构建办法。

为了灵巧配置和程序化状态掌握,Unit还供应原生RESTful JSON API支持动态、零中断更新和灵巧配置。

Unit供应开箱即用的能力,可以可靠地扩展莅临盆级事情负载。
通过繁芜的异步多线程架构来实现这一点包括多个流程,以确保安全性和稳健性,可以支持当今最前辈的云平台。

快速上手

MacOS

brew install nginx/unit/unit

然后安装其他对应的措辞包模块。

Docker

docker pull unit

可以自定义镜像的措辞和版本,方法如下

make build-<language name><language version> VERSION_<language name>=<language version>linux安装

unix官方支持最广泛的各个发行版的二进制安装包,可利用对应的包管理器中添加官方包地址即可。

比如对付RedHa系的Amazon Linux、Fedora、RedHat

把稳,安装后默认掌握API调用socket接口为/var/run/unit/control.sock

日志文件为/var/run/unit/unit.log

运用启动用户和组为unit

Debian系

源码安装

用git下载源码,安装各种依赖项目然后安装(较繁芜,不建议自己做)。

Hello Chongchong

Unit可以支持多中运用程序。
我们大略以一个PHP Hello例子为例进行予以展示,其他措辞和脚本基本同理。
我们将脚本文件保存在

保存在/www/helloworld/index.php,内容为:

<?php echo "Hello, Chongchong!"; ?>

为了在Unit上运行该脚本,在安装好unit-php措辞模块后,先设置一个运用程序工具。
该运用配置config.json:

{"applications":{"type": "php","root": "/www/helloworld/"}}

Unit可以用Web要求动态配置和让配置生效,可以通过一个PUT要求调用/config/applications API,为了安全起见,默认只许可在本地以Unix域套接字办法调用:

# curl -X PUT --data-binary @config.json --unix-socket \/var/run/control.unit.sock localhost/config/applications{"success": "Reconfiguration done."}

接下来,然后用命令行访问给运用的状态:

# curl -X PUT -d '{"127.0.0.1:8000": {"pass": "applications/helloworld"}}' \--unix-socket /path/to/control.unit.sock http://localhost/config/listeners{"success": "Reconfiguration done."}

这样Unit中该运用就配置好,可以进行访问

curl 127.0.0.1:8080Hello, Chongchong!

再调用API可以得到,该次访问的信息:

# curl --unix-socket /path/to/control.unit.sock http://localhost/config/

单元的输出应包含组织整洁的两个片段:

{"listeners": {"127.0.0.1:8080": {"pass": "applications/helloworld"}},"applications": {"helloworld": {"type": "php","root": "/www/helloworld/"}}}总结

NGINX Unit是一个轻量级、多功能的开源做事器,可以供应一个优雅的,可以随掉随用、动态配置、动态发布和更新的多措辞支持的运用做事器,在于微做事和多措辞Web运用共存的本日,NGINX Unit无疑是一个很好的办理方案,当然更多功能探索,大家如果须要可以回答磋商,后续可以供应。

标签:

相关文章

介绍百度码,技术革新背后的智慧之光

随着科技的飞速发展,互联网技术已经成为我们生活中不可或缺的一部分。而在这个信息爆炸的时代,如何快速、准确地获取信息,成为了人们关注...

Web前端 2025-01-03 阅读1 评论0

介绍皮箱密码,开启神秘之门的钥匙

皮箱,作为日常生活中常见的收纳工具,承载着我们的珍贵物品。面对紧闭的皮箱,许多人却束手无策。如何才能轻松打开皮箱呢?本文将为您揭秘...

Web前端 2025-01-03 阅读1 评论0

介绍盗号器,网络安全的隐忧与应对步骤

随着互联网的快速发展,网络安全问题日益突出。盗号器作为一种非法工具,对网民的个人信息安全构成了严重威胁。本文将深入剖析盗号器的原理...

Web前端 2025-01-03 阅读1 评论0