微游技术部一周分享 20230528期

本周关键字:uri忽略大小写,k8s解决端口大量占用,fisher-yates洗牌算法,产品游戏化,TypeScript模块

minigame-logo

大家好,以下是微游互娱技术部本周的分享:

1. [ApiSix] Apisix忽略uri大小写

https://overstarry.vip/posts/apisix忽略uri大小写/

uri是大小写敏感的,但是有时候需要忽略请求uri大小写,例如,不管uri的大小写都返回小写uri所请求的响应内容,比如,请求xx.vip/A 实际请求 xx.vip/a

本文主要以 apisix 来讲解如何实现这个功能。

2. [nginx] Nginx忽略uri大小写

https://juejin.cn/post/7237871186801328185

本文介绍如何配置nginx的路由规则来实现忽略uri大小写。

3. [k8s] Kubernetes集群image-cri-him大量端口占用

https://luckytking.github.io/2023/05/kubernetes集群image-cri-him大量端口占用/

生产环境中出现sealos安装的Kubenetes集群master节点大量占用端口的问题,本文主要记录排查、复现、处理该问题的过程。原因系image-cri-shim的版本问题,旧版本会频繁请求master,导致创建大量的连接,占用端口数,可以通过升级image-cri-shim版本可以解决该问题。

4. [JS开发] 洗牌算法:从数组中随机获取指定数量的元素

https://juejin.cn/post/7238036993355546683/

从数组中随机选择一些元素是一个常见的需求。
本文介绍了一种流行的算法,Fisher-Yates 洗牌算法,它可以帮助我们轻松地从数组中随机选择指定数量的元素。

5. [产品设计] 产品游戏化心理

https://juejin.cn/post/7237887899287322679

本文介绍产品营销中融入游戏化手段的做法和可能起到的作用。

6. [TypeScript] TypeScript: 模块优于命名空间

https://juejin.cn/post/7238036993356496955/

TypeScript编程中,我们可以使用内部模块命名空间namespace或者外部模块来实现模块化。本文提出外部模块是比命名空间的优势,指出这是一个更好的选择。

以上。