alpha 的博客

何晓东 的博客 | alpha blog

Go slice array 的一点笔记

Go slice array 的一点笔记

声明 类型 [n]T 表示拥有 n 个 T 类型的值的数组。声明数组 var a [10]int 会将变量 a 声明为拥有 10 个整数的数组。 数组的长度是其类型的一部分,因此数组不能改变大小。这看起来是个限制,不过没关系,Go 提供了更加便利的方式来使用数组。 每个数组的大小都是固定的。而切片则为数组元素提供动态大小的、灵活的视角。在实践中,切片比数组更常用。 类型 []T 表示一...

2019年备忘录

破碎

2019 年札记 记录   年初的时候,本以为完美教育会有点起色,似乎有了一点起色,起码我们在做东西,再稍微有点进步的去做事情。然而不停的内斗内斗还是内斗,我们做的东西并没有在实际业务上跑起来,技术部像是在自己玩一样,一直单休的做事情,最后什么也没成,六月加薪无望。部门的人员也在变动,本想着换个工作,然后老大先走了,在新公司又叫我们去了。还好自己稍微挣了一点薪水,要不后来更加繁重,...

Laravel 手动开关 Eloquent 修改器

Laravel 手动开关 Eloquent 修改器

测试框架版本是 Laravel 6.5, Eloquent 修改器使用可以参阅 -> 查看文档 修改器的手动开关的场景就是差异化的返回数据,例如在后台管理的时候,图片地址要相对路径,然后 app 端期望返回全路径的地址,这个时候就需要手动开启和关闭了。 大概操作就是在模型中声明一个静态变量,然后修改器中判断这个静态变量值是 true/false; 如果是 true 则处理,...

最近遇到的几个PHP小知识点

最近遇到的几个PHP小知识点

好的框架能提升语言生态,也有时候能把让PHP程序员成为框架程序员,而不是更好的后端程序员,例如我这样的。 测试环境为 PHP7.4 Windows 10系统 str_replace 函数 一个小需求是类似单词填空题,从单词中替换到几个字母,变成 _,然后给出一些选项,例如 ax n, au h, ab y这样的,将选项一一对应的替换 _,和原单词比较,如果一致就是正确选项,本以为...

Python3 实现 gif 倒放,多张图片生成 gif

Python3 实现 gif 倒放,多张图片生成 gif

一个娱乐代码,将表情包 gif 倒放很搞笑,当成自己的一个小玩具,操作就是将图片读取成帧,倒排合并一下,成为新的图片,完成。 效果:翻转前 翻转后 代码如下: # encoding: utf-8 from PIL import Image, ImageSequence # 读取GIF im = Image.open("nba.gif") # GIF图片流的迭代器 ...

PHP7.4 Preload 特性了解与理解

PHP7.4 Preload 特性了解与理解

确保你的 php 是的 7.4 版本,preload 是 7.4 版本新特性 基础了解   根据 rfc 描述,Preload 简明翻译是预加载,是基于 opcache 的一层升级,也是 opcache 的一部分。现有的 opcache 存储文件可以消除编译开销,但从缓存中获取文件并获取特定请求的上下文仍有相关成本。PHP 仍然需要检查源文件是否已被修改,将类和函数的某些部分从共享...

MySQL 执行过程中的两步权限检查的不同

SQL 语句执行过程中的两步权限检查的不同

文章源自梦康群友 lemon 的一个问题 文章中的文档参考的 8.0 版本 问题截图: 题主的测试场景是:是 k 字段不存在,也没有 select 权限,看先抛出哪个错误,结果是抛出了权限不足的错误。是在执行阶段进行细粒度的权限检查,没有打开表的权限,也就无法确定 k 字段是否存在。这块翻了半天文档没发现官方给出直接的结论。 官方文档 事件权限部分 有这样的一个举例: CREA...

群晖与UPS不断电配置小记

群晖与UPS不断电配置小记

需求是用群晖给公司内网搭一个用来托管和共享一些数据的文件服务器,主要用户是电脑小白,方便大家上传,下载文件,也方便部门管理岗管理部门文件夹,所以配置和访问从简,权限细化到二级部门。 一些定义 暂时只需要一点简单的定义,而暂时不用高大上的 FTP 等功能。 群晖 NAS:NAS(网络连接存储)是与家庭或办公室网络连接的智能存储设备。可以将所有家人和同事的文件存储在 NAS 上(从重...

Python3.7 读取 mp3 音频文件生成波形图

Python3.7 读取 mp3 音频文件生成波形图

测试环境为Windows 10 系统,Python3.7,转换需要提前安装pydub、ffmpeg,安装和加入环境变量配置方法自行解决,至于缺少的包直接 pip install xx 搞定。 主要是 mp3 转成 wav 格式的文件,因为 mp3 格式为了减小体积牺牲了音质,转成无损的 wav 格式之后,可以读取到更详细的信息。然后读取 wav 的信息,利用 matlotlib 绘...

安全修改及发布生产环境代码的方式

安全修改及发布生产环境代码的方式

主要是访问量大的系统,或者关键业务部分,需要安全的发布代码,同时保证系统的可用及发生问题时的快速回滚。 灰度发布 最简单的是复制粘贴,然后写一个V2版本代码,分流过去一部分流量,精确记录日志,监测一定时间,如果没有问题,基本是好的,再全量发布。灰度发布也是一种不停服的更新手段,小规模的更新不停服是非常好的体验。 分流的方法有很多场景使用,例如微博发布新版页面,新功能内测,都是这样...