Nginx+Lua 积累
1、解析16进制编码的中文参数
local encodeStr = "%E6%B0%94" local decodeStr = ""; for i = 2, #encodeStr - 1, 3 dolocal num = encodeStr:sub(i, i + 1);num = tonumber(num, 16);decodeStr = decodeStr .. string.char(num); end ngx.say(decodeStr)
2、类似replace
local str = "a1b1c1d" local result = string.gsub(str,"1","2") --将1替换成2 local str = "A1B1C1"local result = string.gsub(str,"1","0",2) --输出的结果为:A0B0C1
3、直连mysql
local mysql = require "resty.mysql" local db = mysql:new() db:connect{host = "10.10.3.218",port = 3306,database = "test_db",user = "root",password = "123456",max_packet_size = 1024*1024 } local result = db:query("SELECT ID,NAME FROM TABLE") ngx.say(result[1]["ID"]) ngx.say(result[1]["NAME"])
4、直接Redis
local redis = require "resty.redis" local cache = redis.new() cache.connect(cache,"10.10.3.208", "6379") local result = cache:get("key")
5、使用管道
local redis = require "resty.redis" local cache = redis.new() cache.connect(cache,"10.10.3.208", "6379") cache:init_pipeline() for i=1,10 docache:get("key") end local res = cache:commit_pipeline() for j=1,#res dongx.say(res[j]) end
6、计算一共有多少页
local totalPage = math.floor((totalRow+pageSize-1)/pageSize)
7、Lua Table 多字段排序
--排列顺序优先级从高到低依次为: --第一:等级由高到低; --第二:稀有度由高到低; --第三:伙伴ID从高到低。 local function sort_(a, b)local rlocal al = tonumber(a.level)local bl = tonumber(b.level)local aq = tonumber(a.data.quality)local bq = tonumber(b.data.quality)local aid = tonumber(a.pid)local bid = tonumber(b.pid)if al == bl thenif aq == bq thenr = aid > bidelser = aq > bqend elser = al > blendreturn r endtable.sort(tableName,sort_)
8、四舍五入小数点保留2位
local function keepTwoDecimalPlaces(decimal)decimal = math.floor((decimal * 100)+0.5)*0.01 return decimal endngx.say(keepTwoDecimalPlaces(1.369))
转载于:https://www.cnblogs.com/kgdxpr/p/3641383.html
Nginx+Lua 积累相关推荐
- nginx lua 安装spdy
关于spdy 摘自 http://zh.wikipedia.org/wiki/SPDY SPDY SPDY是Google开发的基于传输控制协议(TCP)的应用层协议 .Google最早是在Chromi ...
- nginx lua redis 访问频率限制(转)
1. 需求分析 Nginx来处理访问控制的方法有多种,实现的效果也有多种,访问IP段,访问内容限制,访问频率限制等. 用Nginx+Lua+Redis来做访问限制主要是考虑到高并发环境下快速访问控制的 ...
- nginx lua连接mysql_OpenResty的安装和在nginx中使用lua直接访问mysql达到数据接口的统一...
OpenResty 它打包了标准的 Nginx 核心,很多的常用的第三方模块,以及它们的大多数依赖项. 如果需要nginx的第三方库的时候,可以考虑OpenResty,可以少掉很多安装的麻烦,Open ...
- 使用varnish + nginx + lua搭建网站的降级系统
前言 通常一个网站数据库挂掉后,后果将是非常严重的.基本上整个网站基本不可用了.对于一些网站来说,当数据库挂掉后,如果能提供基本的浏览服务,也是不错的.本文将尝试使用 varnish + nginx ...
- nginx lua 配置cc 防攻击-使用lua 配置黑白名单
nginx lua 配置cc 防攻击-使用lua 配置黑白名单 cc 防攻击和ip 禁止期限 lua_shared_dict _dict 1m; lua_shared_dict _blacklist ...
- 扬帆起航 继续前行1 nginx+lua+template+cache
扬帆起航 继续前进 1 1.nginx命中率低解决方案 分发层----算法------应用层 2.nginx+lua.最流行的开源方式OpenResty,提供了大量组件 OpenResty的安装:ht ...
- Nginx+lua 实现调用.so文件方法
本文给大家分享的是Nginx结合lua 实现调用.so动态链接库文件的方法和示例,有需要的小伙伴可以参考下 最近在和智能硬件部门一起,做一个室内定位的服务,该服务根据手机端传过来的beacon设备列表 ...
- nginx lua 小项目:根据 user_agent 显示不同的页面,附带和 php 性能的对比
怎么快速学习一门新的语言呢? 如果你已经熟练掌握了一门语言,那么其他语言都是想通的.一个小小的需求,可能会遇到很多问题,但是搜索相关的关键字,就能快速实现出来,完成一个小目标,事半功倍. 死记硬背手册 ...
- 用Nginx+Lua(OpenResty)开发高性能Web应用
在互联网公司,Nginx可以说是标配组件,但是主要场景还是负载均衡.反向代理.代理缓存.限流等场景:而把Nginx作为一个Web容器使用的还不是那么广泛.Nginx的高性能是大家公认的,而Nginx开 ...
最新文章
- android模糊查询listview数据_ListView的简单应用(一)
- Python比对指定目录下的Excel数据(附源码)
- springboot配置index
- linux添加审计账户_Linux下利用psacct审计系统帐号连接时间, 用户操作
- linux的任务计划6,Linux计划任务
- 【Kafka】kafka console received unknown topic or partition error listOffset request
- php薪资图表,加薪利器,老板再也不用担心生成图表图片了
- 电脑硬盘数据丢失后怎么恢复?硬盘数据恢复技巧教程
- 2019latex安装教程
- untiy下连接photon
- 智能控制和计算机控制的区别,智能灯光控制系统与传统灯光系统有哪些区别?...
- Android储存 文件储存
- spire.doc操作word文档工具类(自用)
- oracle安装 redo log,Oracle Redo Log 及Logmnr配置使用
- 阿里云服务(三)—对象存储OSS和块存储
- 2018拼多多校招笔试贪心编程题小熊吃糖详解
- 迁移学习(Transfer Learning)-- 概念理解
- React Native之样式
- vue echarts在中国地图鼠标经过同一指标下的多个省份高亮或凸起
- 一款由React Native编写的开源App--Gank
热门文章
- 超全面的的常用RAID详解
- linux下提示libpng12-0缺失
- boost.asio学习-----reslover 域名解析
- Linux 利用hosts.deny 防止暴力破解ssh
- Button with Round Progress
- LeetCode 542. 01 矩阵
- LeetCode 5367. 最长快乐前缀
- python做的大型游戏_Python有做大型游戏的潜力吗?
- Fiddler跨域调试及Django跨域处理
- AttributeError: module 'tensorflow' has no attribute 'Session'