聚合国内IT技术精华文章,分享IT技术精华,帮助IT从业人士成长

  • 3766907 views阅读

    利用openresty实现自动认证和受限资源获取

    p>一,环境与源码包 $ cat /etc/issue Ubuntu 20.04.2 LTS n l $ uname -a Linux lenky-HP 5.10.0-1057-oem #61-Ubuntu SMP Thu Jan 13 15:06:11 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux $ ls nginx-1.20.2.tar...

    分类:技术文章 时间:2022-04-03 19:18 我要评论(0个)

  • 2499742 views阅读

    遭遇lj_str_new

    话说前几天我刚通过 mlcache 优化了热数据的问题,屁股还没坐热乎呢,就发现系统性能又下降了,本着自己挖的坑含泪也要填上的原则,我再一次开始了性能调优之旅。 对某个 nginx 进程执行 perf top 毫无疑问,从 perf top 结果来看,lj_str_new 已经成为了性能最大的短板。不过我们还是要搞一个 lua 语言级别的火焰图看着才靠谱,于是有了下图: 优化前的火焰图 不...

    分类:技术文章 时间:2020-09-15 22:16 我要评论(0个)

  • 4497566 views阅读

    openresty的unescape_uri函数处理百分号后面字符的小特性

    我们的 WAF (Web Application Firewall)是搭建在 nginx 上,使用 lua modules 来实现的。也就是 openresty 的 luajit 功能来实现WEB 攻击判断。处理收到的请求时,一般会进行unescape_uri 处理后,再走规则匹配。 在离线分析的机器学习识别结果里,发现有这么一条漏报/aa%20a?openId=%%3Cscript%3E...

    分类:技术文章 时间:2018-10-29 21:57 我要评论(0个)

  • 1454792 views阅读

    用 Nginx + Lua(OpenResty) 开发高性能 Web 应用

    在互联网公司,Nginx可以说是标配组件,但是主要场景还是负载均衡、反向代理、代理缓存、限流等场景;而把Nginx作为一个Web容器使用的还不是那么广泛。Nginx的高性能是大家公认的,而Nginx开发主要是以C/C++模块的形式进行,整体学习和开发成本偏高;如果有一种简单的语言来实现Web应用的开发,那么Nginx绝对是把好的瑞士军刀;目前Nginx团队也开始意识到这个问题,开发了ngi...

    分类:技术文章 时间:2016-08-19 00:40 我要评论(0个)

  • 2997449 views阅读

    luarocks 代理设置

    luarocks是lua实现的一个lua包管理工具。对于包管理工具,下载操作是少不了的,对于墙内的那些人来讲,proxy自然就是少不了的。 /etc/luarocks/config.lua 中添加变量 proxy 如下:proxy = [[http://10.xx.xx.xx:8888]]  The post luarocks 代理设置 appeared first on PHP...

    分类:技术文章 时间:2015-04-09 05:10 我要评论(0个)

  • 2019510 views阅读

    关于nginx+luajit的折腾

    缘起 需要写一个lua版的SDK在nginx中使用 基本功能 通过http请求下载关于SDK的配置文件并cache起来 http的响应信息是json格式的 需要用到rsa/des/rc4解密 系统环境 ubuntu14.04 相关资料 http://www.kyne.com.au/~mark/software/lua-cjson-manual.html http://www.kyne...

    分类:技术文章 时间:2015-04-09 05:10 我要评论(0个)

  • 1670003 views阅读

    不用 Lisp 学 Lisp

    发布上一篇 blog 一周后我离开北京来到了美国,当时没想到这一篇会隔了这么久才动笔。写 blog 一直是在 wordpress.com 上 draft 和发布,然后再复制到 techsingular.net 上。所以之前还在想搬来后写作条件也许会大大改善(因为 wordpress.com 众所周知的原因)。没想到一拖就是一年多。期间还两次忘记给 techsingular.net 的域名和...

    分类:技术文章 时间:2015-03-23 04:25 我要评论(0个)

  • 1820791 views阅读

    lua ffi.string 之殇

    缘起 使用ffi给lua包一个rsa算法, 刚刚学习ffi,连文档都没仔细看过,当返回加密结果时,如果直接返回CDATA,则解密没有问题,如果转为lua string(使用ffi.string) ,则后续无法解密 调试 直接在lua中调试基本无法凑效 重新编译openssl的libcrypt库,加入调试信息,先是祭出gdb,调的晕乎乎的;然后,则可以地方修改C代码,打印调试信息 发现,使...

    分类:技术文章 时间:2014-11-18 03:40 我要评论(0个)

  • 4076983 views阅读

    libcrypt vs libcrypto

    缘起 最近在研究ngix+lua,想实现aes、rsa之类的加密算法   分析 libcrypt和libcrypto分别是什么东西?见下图: The post libcrypt vs libcrypto appeared first on PHPor 的Blog....

    分类:技术文章 时间:2014-11-13 07:00 我要评论(0个)

  • 2572348 views阅读

    Lua 版写了个简化的 MogileFS 的 Nginx 模块配合多数据中心的地域感知功能

    MogileFS 可以做多数据库中心存储, 这是象我这种方案中非常方便的. 我使用 MogileFS 在电信和联通分别做了一个源站. 我然后请求到联通的直接从联通数据中心的 MogileFS 中取文件, 电信从电信取文件.  ( 怎么样保证存储文件时是二个节点, 请参照 "为 MogileFS 配置使用多个网络段/多数据中心" )默认其实使用 Multiple...

    分类:技术文章 时间:2014-06-09 17:15 我要评论(0个)

  • 1560161 views阅读

    通过FastCGI Cache实现服务降级

    在自然界中,很多生物面临生死考验的时候,往往会做出惊人的反应,其中最为大家熟知的当属壁虎,危难关头,与其坐以待毙,不如断尾求生,通过自残来换取活下去的希望。对于互联网项目而言,同样存在着很多生死考验,比如:访问量激增;数据库宕机等等,此时如果没有合理的降级方案,那么结局必然是死路一条。 任何问题一旦脱离了实际情况,便失去了讨论的意义。在继续之前,不妨先介绍一下案例的背景情况:一个PHP网...

    分类:技术文章 时间:2014-01-14 01:25 我要评论(0个)

  • 1419664 views阅读

    Lua简明教程

    这几天系统地学习了一下Lua这个脚本语言,Lua脚本是一个很轻量级的脚本,也是号称性能最高的脚本,用在很多需要性能的地方,比如:游戏脚本,nginx,wireshark的脚本,当你把他的源码下下来编译后,你会发现解释器居然不到200k,这是多么地变态啊(/bin/sh都要1M,MacOS平台),而且能和C语言非常好的互动。我很好奇得浏览了一下Lua解释器的源码,这可能是我看过最干净的C的源...

    分类:技术文章 时间:2013-12-03 23:30 我要评论(0个)