作者个人研发的在高并发场景下,提供的简单、稳定、可扩展的延迟消息队列框架,具有精准的定时任务和延迟队列处理功能。自开源半年多以来,已成功为十几家中小型企业提供了精准定时调度方案,经受住了生产环境的考验。为使更多童鞋受益,现给出开源框架地址:https://github.com/sunshinelyz/mykit-delay
写在前面
很多时候,我们根据当时的项目情况和业务需求安装完Nginx后,后续随着业务的发展,往往会给安装好的Nginx添加其他的功能模块。在为Nginx添加功能模块时,要求Nginx不停机。这就涉及到如何为已安装的Nginx动态添加模块的问题。本文,就和小伙伴们一起探讨如何为已安装的Nginx动态添加模块的问题。
为Nginx动态添加模块
这里以安装第三方ngx_http_google_filter_module模块为例。
Nginx的模块是需要重新编译Nginx,而不是像Apache一样配置文件引用.so
下载第三方扩展模块ngx_http_google_filter_module
# cd /data/software/
# git clone https://github.com/cuber/ngx_http_google_filter_module
查看nginx编译安装时安装了哪些模块
将命令行切换到Nginx执行程序所在的目录并输入./nginx -V,具体如下:
[root@binghe sbin]# ./nginx -V
nginx version: nginx/1.19.1
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-17) (GCC)
built with OpenSSL 1.0.2 22 Jan 2015
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx-1.19.1 --with-openssl=/usr/local/src/openssl-1.0.2 --with-pcre=/usr/local/src/pcre-8.37 --with-zlib=/usr/local/src/zlib-1.2.8 --with-http_ssl_module
[root@binghe sbin]#
可以看出编译安装Nginx使用的参数如下:
--prefix=/usr/local/nginx-1.19.1 --with-openssl=/usr/local/src/openssl-1.0.2 --with-pcre=/usr/local/src/pcre-8.37 --with-zlib=/usr/local/src/zlib-1.2.8 --with-http_ssl_module
加入需要安装的模块,重新编译
这里添加 --add-module=/data/software/ngx_http_google_filter_module
具体如下:
./configure --prefix=/usr/local/nginx-1.19.1 --with-openssl=/usr/local/src/openssl-1.0.2 --with-pcre=/usr/local/src/pcre-8.37 --with-zlib=/usr/local/src/zlib-1.2.8 --with-http_ssl_module -–add-module=/data/software/ngx_http_google_filter_module
如上,将之前安装Nginx的参数全部加上,最后添加 --add-module=/data/software/ngx_http_google_filter_module
之后,我们要进行编译操作,如下:
# make //千万不要make install,不然就真的覆盖
这里,需要注意的是:不要执行make install命令。
替换nginx二进制文件
# 备份原来的nginx执行程序
# mv /usr/local/nginx-1.19.1/sbin/nginx /usr/local/nginx-1.19.1/sbin/nginx.bak
# 将新编译的nginx执行程序复制到/usr/local/nginx-1.19.1/sbin/目录下
# cp /opt/nginx/sbin/nginx /usr/local/nginx-1.19.1/sbin/
本文转载自微信公众号「冰河技术」,可以通过以下二维码关注。转载本文请联系冰河团队 公众号。
早上好,2020年已成为历史,让我们展望2021,继续前行。愿 所求皆如愿,所行化坦...
『看看论文』是一系列分析计算机和软件工程领域论文的文章,我们在这个系列的每...
在疫情改变我们的工作方式之前,对员工的支持主要是提供现代化的办公空间、职业...
最近,我在YouTube上看了一个非常出色的开发人员的视频。 它的标题是无服务器毫...
医药卫生机构管理数字化主要是指医药卫生机构因行政管理、业务流程管理等需求而...
云、本地数据中心、SaaS、多样化商业服务、多供应商和劳动力迁移不断涌现,这就...
早安!8月份又悄咪咪的从指缝溜走了,我们已迎来全新的9月,今天是全国大中小学...
缓存是什么?(没听说过你可以走了) 哪些场景需要用到缓存呢? 缓存可以分类吗? 缓...
科技会使城市变得智能吗?您可能会想阅读大多数有关智慧城市的文章和书籍。这似乎...
2021年3月1日,中国北京-北京忆恒创源科技有限公司(Memblaze)今天宣布完成数亿元...