lua语言开发,esp8266接入巴法云, mqtt和tcp协议
下载后解压,电脑插上8266开发板,打开 NodeMCU-PyFlasher.exe 软件,选择esp8266的com口,选择nodemcu.bin 固件,点击flash nodemcu 刷入,如图所示:
Redisson重入锁是通过setnx命令实现的?别再云了
问过很多面试者,redisson的可重复锁是怎么实现的,很多面试者都会不假思索的回答是通过redis的setnx命令来实现的,那么真的是这样吗?今天我们就一起来看下redisson分布式可重入锁到底是怎么实现的。
云实验室(18) - kong扩展redis-auth插件
1. 编写插件
代码参考 https://hub.fastgit.org/duyhotan2000/kong-plugin-auth-redis 感谢原作者的开源工作.
我们做了少量修改,结构效果如下:
image-44989b3528df4bb5a13345dc15cb650b.png
代码源码 :
handle.lua
-- Extending the Base Plugin handler is optional, as there is no real
-- concept of interf
云原生架构下的 API 网关实践:Kong (三)
在前面的文章介绍了 Kong 的相关实践,本文将会介绍 Kong 的利器:插件以及自定义插件。
云原生架构下的 API 网关实践:Kong (一)
,有点懒怠。最近抽空捣鼓了 Kong 网关的使用实践,微服务网关之前的文章也写过,读者可以翻看之前的文章推送。插件是 Kong 扩展的重要特性,这次除了会介绍 Kong 的相关实践之外,还会讲解 Kong 自定义插件的实现。
卷积神经网络之卷积计算、作用与思想
在计算机视觉领域,卷积核、滤波器通常为较小尺寸的矩阵,比如\(3\times3\)、\(5\times5\)等,数字图像是相对较大尺寸的2维(多维)矩阵(张量),图像卷积运算与相关运算的关系如下图所示(图片来自链接),其中\(F\)为滤波器,\(X\)为图像,\(O\)为结果。
Lua计算表格包含的字段数量
(adsbygoogle = window.adsbygoogle || []).push({});
Sweet Snippet 之 计算逆序数
所谓逆序数,是指一个排列中所有逆序对的总数,而所谓逆序对,则是指排列中前后位置和大小顺序相反的数对,举个简单的例子:
OpenResty 的过去、现在和未来(中)
这是春哥在去年 OpenResty 大会上的分享实录。满满的干货,我搭配 PPT 整理为三部分,分期发出来给大家。如果是有什么错漏,是我整理的问题。
京东老司机:巧用Nginx+Lua解决数据托底大痛点
随着京东商城的发展,内部也出现了一些比较有意思的小系统小模块来解决一些业务系统的痛点,而这些小系统小模块虽说不复杂但是解决了当时的痛点。数据托底就是其中一个痛点,因为依赖系统或者其他方面的不稳定性导致用户访问页面是404或者503、或者出现天窗(页面局部内容没出来),这在一个大流量系统中是不允许的。因此就需要更健壮的系统设计来解决此问题,解决此问题的方法大家又都是类似的,因此作者就抽象了一个小模块来解决更多人的兜底问题。
维基链智能合约APIbug定位修复
从源码可知WICC底层基于bitcoin,上层是运行Lua虚拟机,智能合约跟以太坊、EOS类似,特殊是由Lua开发
用VSCode进行服务器Lua代码远程调试
在过去的远程代码调试场景中,需要调试远程服务器上的Lua代码,需要登录服务器,进行代码的编辑。或者将服务器上的代码进行下载,然后编辑后再上传到服务器上。
对小绵羊的轰炸APP逆向分析
在网络上意外看到一款叫小绵羊的轰炸机APP,经过下载安装(这种未知风险的APP建议都在模拟器上去安装验证和分析功能,有安全风险问题模拟器删除即可)后确认,只要在APP界面的编辑框中输入手机号码,就可以进行对指定手机号码进行短信狂轰炸的效果的(已用自己测试号码验证过效果)。
Redis & Nosql 概述
这个系列要讲的是几乎所有互联网公司都在使用的Redis,Redis 适用于挺多的业务场景,比如会话存储、数据分析、消息队列、缓存等。应用面非常广泛,主要是得益于Redis 的高效的读写效率及丰富的数据结构。
在讲Redis之前,我们先来看一下常见的NoSQL DB,所谓的NoSQL 也就是相对于关系型数据库而言,泛指所有的非关系型数据库。我们常说的SQL 也就是结构化查询语言,有时候经常被认为关系型数据库的一种特征,其实NoSQL有时候也被理解为不使用SQL,但这种描述方式不是很准确。这里我还挺支持之前看过的《NoSQL精粹》里面的观点的。
常见的NoSQL 有这么几类:key-value 结构、图数据库、文档型数据库、列族数据库。
常见的代表有这么几个:
key-value结构:Memcached、Redis
文档:MangoDB、CouchDB
列:Hbase、Cassandra
OpenResty
如果OpenResty 已经安装,nginx 就有了是 OpenResty 自带的 nginx
手动编译nginx且添加echo lua brotli模块支持
这几天在家出不去门,没事干就重新部署了更新了服务器的环境与架构.但是之前用的nginx-openresty功能太复杂了,我也用不上.
Nginx安装lua-nginx-module模块
ngx_lua_module 是一个nginx http模块,它把 lua 解析器内嵌到 nginx,用来解析并执行lua 语言编写的网页后台脚本
Nginx安装lua-nginx-module模块
ngx_lua_module 是一个nginx http模块,它把 lua 解析器内嵌到 nginx,用来解析并执行lua 语言编写的网页后台脚本
灰度环境发布策略
转
灰度发布是指在黑与白之间,能够平滑过渡的一种发布方式。AB test就是一种灰度发布方式,让一部分用户继续用A,一部分用户开始用B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面 来。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。
灰度发布一般有三种方式 nginx+lua,nginx根据cookie分流,nginx 根据权重来分配
nginx+lua根据来访者ip地址区分,由于公司出口是一个ip地址,会出现访问网站要么都是老版,要么都是新版,采用这种方式并不适合
nginx 根据权重来分配,实现很简单,也可以尝试
nginx根据cookie分流,灰度发布基于用户才更合理
两台服务器分别定义为
tts_V6 192.168.3.81:5280
tts_V7 192.168.3.81:5380
默认服务器为:
default:192.168.3.81:5280
前端nginx服务器监听端口80,需要根据cookie转发,查询的cookie的键(key)为tts_version_id(该键由开发负责增加),如果该cookie值(value)为tts1则转发到tts_V6,为tts2则转发到tts_V7。
Web服务压测神器wrk
wrk是一款开源的高性能http压测工具(也支持https),非常小巧,可以执行文件只有3M(其中主要是luajit和openssl占用绝大多数空间),别看核心代码3-5年没更新了,但依旧非常好用。虽然很早之前我就知道有这么个工具了,当时学习这个工具的时候我还拿它压测了我们的个人网站xindoo.me,发现mysql性能不行后加了wp-cache,通过cache把我网站的承载能力提升了10多倍。但当时之前简单使用它的初级功能,最近工作中恰好有个http服务需要压测,然后就拿wrk做了。这次使用了wrk lua高级功能实现了压测,我们找到了我们服务的瓶颈,同时也被wrk的超高性能所震惊。