梅雨六月(2023)

六月的雨

六月梅雨季,天又闷又热,下了几场大雨后最近又是高温闷热天。

今年是老妈六十生日,本来准备是给买条大金链子的,可是看着这个金价实在是下不了手,黄金是一年比一年贵啊,涨幅还不小。然后就换成了手机,刚好现在的手机也用了三四年了。这几年眼看着父母白发越来越多,背也越来越驼,感叹时间过得太快,真希望岁月能够放缓脚步,驻足停留,多欣赏沿途风景。


已过年半,但似乎并没有多大变化。如今大环境也不好,公司内部也不像之前那般激情,更是为之后的职业道路新增了些许担忧。


五穷六绝七翻身。


Kong 自定义插件编写详解

最近在研究 Kong,如果你跟我一样之前对 Kong 不了解可以看他们的官网,我就不在这多说废话了。

调研了几天,Kong 的功能蛮多的,对我们也有很大的帮助,引入也很有意义,能减少我们很多操作。Kong 也比较成熟,只是网上的资料都比较零散,很多也已经随着改版而变得过时。

官网的 quickstart 也算是详细了,跟着走一遍基本就能知道个大概,有哪些功能。

我想要尝试通过自定义编写插件来更好得对数据做一些处理,就各种找资料。终于经过一段时间的冲浪后,我开始掌握了一些门道。

首先,Apache 的 skywalking-kong 帮我理清了绝大部分道路,只是不知道是因为 Kong 版本的更迭还是因为我本地环境的原因,跟 README 上描述的步骤还是有一点点的差别:

  • luarocks install kong-skywalking --localluarocks 安装 kong-plugin-skywalking,你也可以用 --tree 指定目录位置
  • 然后是 kong.conf,一般在 /etc/kong下,如果没有就 cp kong.conf.default kong.conf 然后对应配置加上,lua_package_path 注意一下写上你实际的位置,可能与 README 上的会有偏差,我的就是
  • 关键的还有一步没有写上,/usr/local/share/lua/5.1/kong/constants.lua 里记录了所有插件的名字,如果不加上的话你新加的插件也不会显示出来,需要特别注意。最后最好 kong restart

这一个走通后,就会对自定义的插件有个概念了。下面我们来自己手写一个试试,很简单的一个 Demo,主要是对 Response 的修改(只要走通了一个 其他的也就差不多了 看看官方 API)。

其实别看这里我只是轻描淡写,实际却是踩了很多坑,网上太多都是不负责任的文章,也不清楚是纯粹的 copy 还是因为版本更迭导致的失效。

我先说下网上找资料然后最终发现的几个问题:

  • local BasePlugin = require "kong.plugins.base_plugin" 这个 BasePlugin 在 2.7.x 已经废弃了,害得我还在那抓头,ChatGPT 资料库不够新,问了半天跟个傻子一样
  • kong.service.responsekong.response ,网上找到的资料都是用 kong.service.response 来改变响应体的内容,也害得我只抓头,纳闷了怎么也不行,直到我在官网 kong.response 找到了这么一句 Unlike kong.service.response, this module allows mutating the response before sending it back to the client. 我丢

然后其他的就是 Lua 脚本的编写了。

  1. 先在之前 skywalking 同级新建一个 response-handler 目录(当然也可以在 Kong 自己的插件目录中添加自定义的插件)
  2. 再进入 response-handler 目录,新建两个 Lua 脚本,插件主要也就是这两个文件 handler.luaschema.lua。至于你说这两个是什么作用,我只能说业务逻辑在 handler 中,所用到的一些可变参数在 schema 中,具体的可以自行去冲浪哈,在这我就不赘述了。下面是我写的 Demo 脚本内容:

官网资料:Plugin Configuration

handler.lua

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
local cjson = require("cjson")

local MyPluginHandler = {
VERSION = "0.1.0", -- 版本
PRIORITY = 10 -- 脚本执行优先值
}

function MyPluginHandler:header_filter(config)
-- 修改响应头
kong.response.set_header("Handle-Response-Header", "Response-Handler")
end

function MyPluginHandler:access(conf)
end

function MyPluginHandler:body_filter(config)
-- 修改响应体
local response_body = kong.response.get_raw_body()
if response_body then
local response_json = cjson.decode(response_body)
response_json.data.num = config.num -- 我这里修改了 response.data.num 的值 (config.num 对应 schema.lua 中的 config.num)
local modified_body = cjson.encode(response_json)
kong.response.set_raw_body(modified_body)
end
end

return MyPluginHandler

schema.lua

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
local typedefs = require "kong.db.schema.typedefs"

local PLUGIN_NAME = "myplugin"

local schema = {
name = PLUGIN_NAME,
fields = {
{ consumer = typedefs.no_consumer }, -- 该插件不能设置为 consumer
{ protocols = typedefs.protocols_http },
{ config = {
type = "record",
fields = { -- 可配置参数
{ num = {
type = "integer",
default = 10,
required = false,
gt = 0, }},
},
entity_checks = {
-- 可以写一些校验 at_least_one_of distinct
},
},
},
},
}

return schema
  1. 脚本写好后在 kong.conf 中的 plugins = bundled, skywalking, response-handler 加上
  2. /usr/local/share/lua/5.1/kong/constants.lua 中的 local plugins = {....} 加上新写的 response-handler
  3. kong restart

到这里,自定义的插件算是可以了。要还不行,那就可能是版本更迭了哈哈


忙碌五月(2023)

这个五月忙忙碌碌,天气也时晴时雨。

为什么这个月会是忙碌的呢,因为这个月我们又搬家了!沪漂的日子往往在搬家的时候最为狼狈。

本来我们房子是六月初才到期,但是我们那不讲道理的二房东急急找了下家,想要我们提前搬走。本来确实我们可以不搬的,但一想到我们刚好也想早点搬走,就也去匆匆找了房子。找房子还算顺利,两趟就敲定了下来,这次是一房东,我是真不想再遇上个二房东了,有些二房东是真的难扯,就好比我们遇到的这个。搬的那天叫了一辆依维柯,本来以为是妥妥的了,毕竟我们上次搬家叫的车还没这个大,可谁想到,完全塞不下。后来又叫了一辆依维柯,满满塞下,这才全部搬了过来。两个人的东西也不少,真是不想再这么折腾搬家了,累不说,收拾还麻烦。

最近几天做了一个小程序:计分小能手,为什么会想到做这个小程序也是因为前段时间跟朋友一起打牌,才知道有这种计分的小程序,而且广告多到离谱。我就觉得这个可能以后会经常用到,不如自己做一个,于是就有了这。现在只是实现了简单的功能,因为我毕竟是做后端的,样式啊这种就完全是只是能用。做的过程也是遇到了很多问题,对小程序的开发也更加清楚了。

上面说了搬家,现在我每天上下班变成了坐地铁,以前是骑个电瓶车就到了。也还好,地铁半个多小时,加上两边的步行,从出门到公司差不多五十分钟,还可以接受,每天也是变相可以多走走路。

现在天气真开始越来越热了,我们这次租了个一楼,不知道大夏天会怎么样,因为原先的小院子跟房间改在了一起,所以空间还蛮大的,唯一不足就是通风了,夏天可能会有点闷,估计空调要不少开了。


破局四月(2023)

首先说下这次北遇的婚纱照拍摄,总体来讲还是蛮不错的。

我们是前一天在那附近找了个宾馆住了一晚,然后当天一大早骑了个自行车过去,早上八点到那,晚上全部弄完已经是十一点多了。三个内景一个外景,全程服务态度是蛮好的,摄影师也很有耐心,最后出来的片我们也是比较满意的,总之是安全下车了。

四月份的天气已经开始回暖,后面几天已经是可以穿短袖短裤出门了。这个五一天气也是蛮好的,我们去了一趟启东吃龙虾,顺便学会了启东麻将打法,假期过得还是闪电那般快。假期结束回来周六还得上班,真是无心上班啊现在。

前几天服务器又提示要续费了,一年大几百的费用我也基本就挂个博客,实在是划不来啊。不打算续了,直接白嫖 GitHub 的好了,不浪费钱了,现在钱不好赚啊。

又重新买了塞尔达玩,都说是 YYDS,我这次好好玩玩,认真玩,深度体验体验。说真的,switch 确实一般,买来大多数时间就是放着落灰,躺着有时间就刷剧,没多少会去玩会游戏消遣,更别说是没有人一起玩了。

过了四月已经是五月了,之后就是六月,日子过得快得哟!


温暖三月(2023)

这刚连续下了几天雨,终于迎来了温暖的好天气。

春暖花开,经过连续几天的雨水冲刷,终于迎来了几天的好天气。
各地桃花樱花盛开,朋友圈纷纷出现了春游打卡景象,正是一年春来到。

由于种种原因,这次没去成苏州马拉松。今年怕是也没有机会了,养精蓄锐,明年再战!前段时间周末一直在各地跑,也终于搞定了一些事情,下个月也开始要拍婚纱照了,减肥减肥说了大半年了,体重还是在这水平上下浮动,难矣!事情一大堆,就在等着慢慢处理解决,希望随着时间一个个都迎刃而解,船到桥头自然直。

刚说完问题,最近这就出现了问题。事情一多,问题也就越多。处理不好就很容易上升为矛盾,情绪再那么一差,总是闹得不可开交。生活,也确实,一路平坦的那就不叫生活。

4.5算是我们周年纪念,今年刚好就是清明,好巧不巧。吃一顿日料自助满足下期待已久的味蕾。

周末好天气,躺在阳台的椅子上晒太阳,躺在客厅的沙发上晒太阳,真是舒服啊!


入春二月(2023)

到了二月,眼瞅着温度慢慢回升,大家的旅游热情也是十分高涨。

前段时间趁着周末去了趟苏州,景点那个人啊,在路上真的是被推着走。西园寺的素面排了半小时左右吃上了,还好去的早不然排得更久。

很明显能感觉到,不止景点,各大商场的人也多了很多。一到饭点,只要是稍大点的商场,没有一个吃饭的店是不用排队的,这消费能力真是杠杠的。

前几天我们大学寝室的几个终于又聚到了一起,不容易啊,上次聚一起还是五年前。这次刚好其中一个室友结婚,于是找了个周末大家一起聚了一下,隔得也都不是很远,路程还可以。包吃住还带洗脚搓澡,这一趟没白走。下次再聚就不知道是什么时候了,也可能是下半年等我结婚吧。


当然也有伤心的事,我17年开始养的小鳄龟苗,这次给他找了个新主人。养了这么多年了,突然离去,说不伤感肯定是不可能的,不过还是介于自己现在的居住环境,也是迫不得已,希望他能更加愉快得生长吧。

入春了,温度上升,疫情褪去。美好的事情一定会接踵而至,期待未来!


年味一月(2023)

风风火火又一年

今年过年我们那都可以放烟花了,说是庆祝疫情过去(也有说是因为禁烟才来的疫情),反正随你放不抓就是。但街上还是不给卖,还得去隔壁县镇买,这钱都给别人赚去了!

有了烟花就会显得有些动静,不像往常过年跟平时过周末一样。

有件让人生气的事不吐不快。年前想买个冰柜的,然后看了下淘宝上有春节不打烊也保证了发货时效,就在淘宝上下单了。很好,确实是及时发货了,但是中途运输运了七天,眼看就要配送了,结果说配送人员还没上班,想要的话可以自己来取(离我家还有个五公里的样子),不然还得等个三四天。一个冰柜啊,说好的送货上门的,而且本来也是急着用才买的。顺便提下,这是德邦发的。这服务太差了,我马上就拒签又在京东上买了一款,结果第二天就给我送到家了。以后买大件的还是找京东靠谱!!

这次去南通通州搓了一回澡,实惠还舒服,根本不输之前去扬州的,扬州找的百年老店还死贵。

每次去通州都得吃吃那边的炸串,蘸着酱,实在是太香了!

短暂的快乐结束了,又要回归打工人生活了。


你好,贰叁

人生不过三两事,如意一天,不如意也是一天。

二二年已然成了过往,美好展望新一年。疫情影响生活三年,各种习性成了习惯,思维也发生了变化。现在随着政策放开,终给这黑天鹅落下了笔。

随着大家逐渐阳康后,新年第一天,同事也差不多都回来了,只是伴随的咳嗽还是不断。我也在元旦前两天中了招,发了两天烧之后身体也开始了快速恢复。这样也好,过年回家就不用再担心感染上躺着过年了。


二二年,因为疫情,居家办公过一段不少的日子,也在公司度过了一个三天两晚。由于期间疫情的疯狂介入,导致感觉这一年过得有点迷幻,抗疫抗疫着,半年过去了,再过着过着,就一年了。

这一年,在不确定因素下,我也终于算完成了一件大事。

接下来二三年,会是我的一个大年,这一年要计划完成的事很多,且都不小,希望我能完美完成这些,给自己一个顺意的二三年。

二三年需要做很多抉择,这些抉择很大可能直接或间接得影响到我之后的一个发展道路。工作是为了更好的生活,生活还是要放在第一位,基于现实。


总结一年一年写,年纪也随之一年一年长。终到了一个快要突破自我,踏入新身份的节点。当然,伴随着新身份来的同时也定会加大肩上的责任。

人生匆匆无处寻,仰望星空无人问;

水天一线镜中月,飞鸟过 或圆或缺?


未来会逐渐变好的预期已经出来,各行各业饱受疫情折磨的时候就要过去。对于美好生活的向往是大家的共性,步调一致,方向一致,未来就会一致!二三年,希望是自己的一个大年,拥抱二三!

你好,贰叁!


阳十二月(2022)

这个月属实有点迷幻……

公司接二连三的同事消失,大街上的车和人也一天比一天少,退烧药变成了黄金药救命药。

放开的政策一出,各地传播速度极快,中招的人都是发烧喉咙吞刀片,导致退烧药抢购一空,甚至于加价十倍也有人买单。

高烧到40往上的人比比皆是,即使快速退烧体温恢复正常,高烧导致的器官损伤无法彻底痊愈也是事实。如今阳的是常态,未阳的反而觉得变成了另类,未阳的期待着变阳。

中招程度因人而异,有些轻症有些重症,更甚者因此毙命。所以这看似与一般发烧流感类似,但是其威力还是要大得多的,大家都“躲”在家,尽量少外出。这么一来,经济反而变得更差,这些人因为疫情真的绝大生意都不好做,经济再不刺激真的要倒退几年。

元旦也定是哪也去不了了,看情势发展,人们的恢复程度了。

注意身体。共勉。


红色十一月(2022)

要说上个月是绿油油,那这月可算是否极泰来了!

月首日就拉了一个大阳,中概也还是慢慢好转的迹象,真是回了一口血啊。

世界杯开始了,本身对足球也不甚了解,不过这种国际火热赛事,咱有空也得瞧瞧,尽管还是没有国家队的影子……

接二连三的爆冷门,这不仅股市不理想,那些个DU球的今年也是不好过啊,戴维斯双击。

日本韩国的比赛我差不多都看了,确实是厉害,个个都有冲的狠劲,厉害厉害。足球还是蛮好看的,尽管不是很懂,但也不影响看球啊。

真快,这个双十一没有买什么东西,就买了一些个生活必需品,什么纸巾啊洗衣液的,拼多多的财报数据越来越好看了,真的是消费降级了吗?我最近也用拼多多比较多,东西确实有些蛮便宜也不错的。

最近降温许多,前些日子还是有个十来度的,这一下子就给干到了不到五度,羽绒服已经穿上,室内还是感觉有点冷的,空调也不给力。

寒冬已到,各自取暖。