- 博客(164)
- 资源 (9)
- 收藏
- 关注
原创 【极客日常】游戏测试开发干货——Python进阶与游戏自动化测试攻略
在互联网上,关于游戏测试(开发)领域的技术分享,实际是非常稀少。为此,针对游戏测试(开发)的工作特性,笔者根据自己以前的博客整合了两个文集:《HiKari为了拿捏Python整理的技术笔记》与《HiKari的游戏自动化测试笔记》
2022-11-24 20:16:34 1954
原创 【Medium Python】前言&目录
python作为最流行的语言之一,我们对python的认知到底有多少呢?大胆猜测,95%的同学对python的了解都不超过5%吧!不用说python的c源码了,就算是python每个标准库的.py源码,都有很少人去关心。结论就是,我们对python本身的理解是远远不够的,比想象中还不够!当然,这也可能是python的语言特性导致的吧,在设计方面就不需要我们去多想。python的岗位众多,网上的教材跟面试题也很多,然而很多都是八股文,浅尝辄止,鲜有深度的挖掘,让人知其然而不知其所以然,处处透露着对技术的不敬
2021-10-10 20:54:39 456
原创 【DIY小记】用爬虫+clean-mark+zhihu-on-vscode搬运技术博客到知乎
本文讲述结合python爬虫、clean-mark工具和zhihu-on-vscode插件,实现从掘金到知乎的文章搬运的方法。
2024-05-01 18:42:18 473 2
原创 【极客日常】读2023美团技术年货的一些笔记
正直劳动节,翻了下2023年美团的技术年货,挑选了一些和变更风险防控和稳定性建设相关主题的文章做了下浅读。本文仅简单记一下阅读笔记。总共选读了3篇文章,分别是《基于AI+数据驱动的慢查询索引推荐》、《代码变更风险可视化系统建设与实践》,以及《AIOps在美团的探索与实践——事件管理篇》。
2024-05-01 00:05:12 187
原创 【DIY小记】用OCR和大模型GPT生成的《软件研发效能权威指南》读书笔记
《软件研发效能权威指南》一书,对于软件研发效能DevOps领域做什么事情,解决什么问题,给出了非常全面详尽的说明。这本书的精华,基本全部都浓缩在一张附属的海报上,海报讲述了每个章节的精简摘要,可以说是现成的读书笔记。2024年,相对于古早的纸质载体,用电子作为载体的文献在维护上成本更为低廉,并且也逐渐成为了最优的文献阅读方案。因此,顺带借着AI的东风,笔者决定用AI技术,将这份海报转化成一份电子版的读书笔记,通过OCR识别+GPT润色+人工校对,把这本书所有的精华给摘录下来。
2024-04-21 16:52:21 536
原创 【从零单排Golang】第十六话:channel的用法和基本原则
在基于Golang的后端开发中,channel是一个必须要掌握的并发编程概念。和python的queue一样,channel在不同的goroutine里承担着传递信息的作用,使得业务逻辑的状态上下文可以在不同的goroutine中共享。今天,我们就来看一下channel的用法还有一些使用上的基本原则。
2024-04-13 19:26:46 1022 1
原创 【架构艺术】变更元信息分析框架设计
在变更风险防控领域,对于线上变更元信息的分析是非常重要的一部分,我们需要一个独立的变更元信息分析框架,把所有的变更元信息分析过程和结果都归到一个独立的系统当中。这样,从变更风险防御能力的视角,变更分析的结果都是共享的、全局的、一致的,从而能最大限度提升变更风险防御能力可挖掘的潜力。本文,就简单聊一下,变更元信息分析框架设计的一些重点。
2024-04-04 14:24:32 580 1
原创 【极客日常】提升发布风险检查准确率的一些思路
在服务或者其它线上资源发布新版本的时候,我们都有必要为发布信息本身和上线的资源做风险检查,以确认发布内容不会对线上造成影响。但随着检查能力集合变得成熟,业务也肯定会有对检查能力优化的需求,需要提升检查的准确率,不至于出现太多无用的噪音,这也成为了风险检查提升可靠性的一项挑战。因此,本文就浅谈一下,提升发布风险检查准确率的一些思路。
2024-03-03 19:55:11 264 2
原创 【架构艺术】可持续性架构设计的秘诀
概念拆解,重组改造,是可持续性架构设计的秘诀。其核心要思考的便是,如何在自顶向下的需求拆解和自底向上的技术实现之间,不断优化这个“最大公约数”。为了让技术实现能够更具备可持续性,我们才需要把所有概念打碎,理顺概念之间的依赖和层次关系,再根据灵活组合不同的概念体系,以达到不同需求预期的效果。这样做技术设计,就可以应对频繁的需求变更,不至于积重难返。
2024-02-15 14:30:17 457
原创 【GitHub探索】蚂蚁变更管控平台AlterShield设计分析
变更管控是技术风险地一个子领域,主要的目标是在变更过程中,通过对变更流程的管控介入,提前发现变更过程存在的事故风险,或者阻止变更过程的错误进一步扩大影响面。在这个子领域,蚂蚁开源了AlterShield变更管控平台,提供了一套变更风险防御的解决方案。今天,本文就浅析下AlterShield平台整体的设计,适用的场景以及局限性。
2024-02-04 15:08:41 1064
原创 【极客日常】慢查询的风险治理思路
在线上环境运维过程中,我们通常需要治理慢查询的风险。慢查询会引起DB性能问题,并且当线上环境流量较大的情况下,就会出现因大量慢查询堆积导致DB被打挂的情况。因此,本篇文章分享一下慢查询的风险治理思路。
2024-01-07 16:36:37 388
原创 【测试人生】数据同步和迁移的变更注意事项
数据同步或者迁移操作也算是线上数据变更的一种类型。由于涉及的数据量非常大,一旦发生故障,会直接影响线上业务,并且较难止损。从变更风险管控的角度考虑,数据同步或迁移操作也需要走合理的发布窗口,并且在操作前也需要做足够的影响分析。本文就来聊一下数据同步和迁移的变更期间注意事项。
2023-12-09 22:34:52 435
原创 【架构艺术】一些通用的代码优化治理经验
在接手以前的项目做开发的过程中,我们经常会遇到因为既有代码理解困难,导致代码难以删改,问题难以排查的情况。一份富含技术债的代码,不论对于当下的问题解决,还是未来的需求开发,都会形成累赘。因此,本文就分享一些通用的代码优化和治理经验。
2023-11-04 19:05:43 245
原创 【测试人生】游戏业务测试落地精准测试专项的一些思路
精准测试在互联网领域有广泛的应用。以变更为出发点,通过对变更内容进行分析,可以确定单次变更具体涉及到哪些模块和功能点,以及是否存在夹带风险,从而从QA的视角,可以知道哪些功能模块需要做测试,以及哪些变更内容不符合预期。相比于互联网QA,游戏QA接入业务项目研发过程并没有那么深入,比如项目代码权限基本上游戏QA不会拥有,但即便如此,要在游戏测试领域应用精准测试专项技术,还是有一定思路可循。因此,本篇文章,笔者以自身经验为出发点,讲述一下在游戏业务测试落地精准测试专项的一些思路。
2023-10-02 12:00:26 386
原创 【DIY小记】修复Win10启动出现蓝屏0xc0000185错误的一些方法
近些日子想到自己尘封已久的笔记本电脑没有开机了,很多软件驱动之类的没有更新,就打算把电脑开起来做一轮批量升级。但开电脑的时候很久没有进入Win10桌面,等了很长一段时间蓝屏提示0xc0000185错误,说系统需要恢复。经历了一番折腾之后,笔者解决了这个问题。虽然不明确这个问题的根因在哪里,但还是分享一下自己收集到的一些解决方式。
2023-09-17 15:46:11 5567
原创 【测试人生】浅谈游戏策划配置表检查的技术设计
关于游戏策划的配置表检查测试,笔者也希望输出一些自己对于配置表检查测试技术的一些思考。本篇文章讲述两块内容,第一块讲下测试框架的开源,第二块讲下专项技术的设计。
2023-09-17 15:20:36 499
原创 【从零单排Golang】第十五话:用sync.Once实现懒加载的用法和坑点
在使用Golang做后端开发的工程中,我们通常需要声明一些一些配置类或服务单例等在业务逻辑层面较为底层的实例。为了节省内存或是冷启动开销,我们通常采用lazy-load懒加载的方式去初始化这些实例。在Golang里面,实现懒加载的方式可以简单的多,用内置的sync.Once就能满足。本文就介绍使用sync.Once的用法和坑点
2023-09-03 01:23:56 675
原创 【从零单排Golang】第十四话:使用rate和ratelimit实现限流限速
在研发中,我们经常会面对到处理并发逻辑的场景,尤其是有时候在与第三方平台对接的场景下,会遇到请求限流限QPS的要求。对于限流或者限速,我们通常会用令牌桶算法和漏桶算法来满足需要。这两种算法,虽然实际QPS数值可能都会有波动,但都能把速率限制在一个合理的水位。在Golang里面,这两种算法都有现成的实现可以直接用。咱们今天,就来看看这块的例子。
2023-08-26 15:57:48 719
原创 【从零单排Golang】第十三话:使用WaitGroup等待多路并行的异步任务
在后端开发当中,经常会遇到这样的场景:请求给了批量的输入,对于每一个输入,我们都要给外部发请求等待返回,然后才能继续其它自己的业务逻辑。在这样的case下,如果每一个输入串行处理的话,那么很大一部分时间都会损耗在给外部发请求这个环节,因此我们会希望把这些请求放到各个goroutine里异步执行,等待批量执行完成之后再继续后面的逻辑。这个时候,我们就可以用到这个东西:sync.WaitGroup
2023-08-06 21:03:17 654
原创 【测试人生】批量刷数的发布流程与风险点
在项目日常开发过程中,批量刷数也是有一定频率的变更场景之一,同时也是容易产生风险的一种变更操作。本文就来聊下,批量刷数的发布需要经历哪些流程,以及流程中每个环节中有什么风险点需要考虑。
2023-07-09 11:18:37 427
原创 【测试人生】SQL变更的问题拦截手段
在DB做变更发布的各类场景当中,通过SQL更改DB数据内容,是最为常见的场景。既然是最为常见的场景,那么可能产生线上问题的概率也就越大。本篇文章就来探讨一下,要尽量减少SQL发布产生线上问题的可能性,需要采取什么样的手段。
2023-07-08 14:06:12 937
原创 【从零单排Golang】第十二话:用singleflight解决单服务处理高并发任务的问题
在后端开发场景,我们经常会遇到高并发的事务处理逻辑。虽然在微服务治理的机制下,能够实现多个无状态服务节点+负载均衡高并发处理请求,但对于单个服务节点来讲,如果存在某些耗时的任务需要被高并发访问,那么如果没有一套妥善的机制处理,就很容易出现大量这类任务实例堆积,导致任务返回延迟,或者节点内存暴涨的情况。今天,就来介绍Golang内部处理这种场景的一套方案:singleflight。
2023-07-01 20:52:17 715 2
原创 【DIY小记】工作中失误了,应该如何对待?
怎么样对待工作的失误,甚至是工作本身,不论是从心态上,还是从策略(抓手)上,都是值得去深入讨论的。工作失误无法彻底避免。如果你对你的工作内容很有责任感,那么如果真的失误了,就不要沉浸在失误的沮丧里,得去解决工作失误,才是真正对的起你的责任感。所以,坦然面对吧!
2023-06-11 01:20:19 490
原创 【GitHub探索】用python写web前端之reactpy探索
你有想象过用python来写web前端这种操作么?本文就来探索reactpy,用python通过react的特性来编写前端页面,看能写出什么花样来。
2023-06-10 11:34:20 1573
原创 【测试人生】管控数据类变更的重要性
数据类变更的缺陷/事故影响面是很高的,变更的时间也很长。这意味着,变更量大,变更期间风险难以控制,出了问题也难以回滚。本文主要介绍DevOps场景下数据类变更管控的重要性。
2023-06-03 17:08:35 191
原创 【从零单排Golang】第十一话:make和new的区别和用法
在Golang当中,对于常用数据结构的初始化方式,通常有2种:make跟new。这两种初始化方法用途不同,效果不同。本篇文章就来详细讲一下make和new具体都怎么用,在什么场景下会用上。
2023-05-10 23:53:50 485 1
原创 【极客日常】初体验rust语言
作为一门“网红”语言,rust,已经在区块链、Web前端、游戏开发等领域凸显了作用。相对于golang、python、java、js跟cpp等其余主流语言,rust语言的编写和呈现方面都算是一个更为独立的体系。因此,本着对技术的好奇心,笔者也决定学习下rust语言,一是体验一下新一门编程语言的逻辑艺术,二来也是为未来可能的变化做一做准备。
2023-05-01 15:03:38 137
原创 【极客日常】聊聊ChatGPT对于八股文程序员的冲击
2023年ChatGPT系列的问世,可谓是对整个世界的人类造成了冲击。很多程序员同行开始恐慌,自己的工作是否会被这类AI所替代,笔者的答案是——不应该会。比起恐慌AI的冲击,把自己当成一个AI,100%专注于自己的持续成长,这样做不是更好吗?
2023-05-01 01:42:17 175
原创 【测试人生】《阿里测试之道》笔记之大促全链路压测
在2022年,阿里出品了一本《阿里测试之道》,讲述在阿里电商、物流、金融、大数据等业务场景下,测试活动业务层面是如何开展,以及技术层面是如何实现的。笔者有幸拜读此书,从其中也有所收获。本次以其中涉及电商的测试场景为例,记录一下“大促质量保障”一章的读书笔记。这一章主要讲述了在大促场景下,全链路压测是如何实施的,以及通过什么方式保证最终大促时的生产环境稳定性。
2023-04-08 22:41:35 624
原创 【从零单排Golang】第十话:快速理解并上手context的基础用法
在Golang的各种用法当中,context可谓是最能够体现Golang语言特性的模块之一。关于context网上有很多语法以及源码分析的文档,但是里面很多却不能从实战场景体现context的作用,导致这个概念难以理解。因此这一回,经由踩坑context后,笔者将结合自己的理解,给大家讲述context在Golang怎么用来最为方便,怎么理解最为实用。
2023-04-01 17:16:10 648
原创 【Python随笔】一天搞定,爬虫爬取w3schools的sql语句案例集
本文就来详细讲述,爬取w3schools网站里SQL语句的实现方式,以及里面需要注意的一些点。通过Python+BeautifulSoup,一天可以搞定!
2023-03-11 17:22:18 634
原创 【从零单排Golang】第九话:用go语言解析并分析sql语句的方法
在Golang的实战中,总会遇到一些场景,比如抓包分析sql指纹,或者是输入sql时检查sql的风险,这类操作都需要解析sql的工具才能够生效。今天,就来介绍一些Golang当中解析sql的工具包和使用方法,主要是tidbparser
2023-03-04 00:25:29 1980
原创 【从零单排Golang】第八话:通过cache缓存模块示范interface该怎么用
Golang的interface接口特性,能够实现提供&使用之间关系的解耦,使得代码行文更加规范立体。本文就来通过一个简单的缓存cache模块的实现,来示范一下Golang的interface该怎么用。
2023-02-18 15:40:40 1074
原创 【DIY小记】VMWare设置主机连接到的Ubuntu虚拟机的网络端口
本文介绍一种主机直连虚拟机内部的解决方法,场景为Win11 + VMWare Workstation 16 + Ubuntu 22.04 + NAT模式网络
2023-02-05 13:14:11 2834
原创 【测试人生】准入准出质量红线的技术设计
在应用日常开发的过程中,不论是在测试、开发联调,还是实际构建发布的时候,我们都需要一定的指标去衡量技术产物的质量,从而判断技术产物是否符合质量标准,是否能够继续发布投产,如果不符合投产标准则拦截发布。这类能力,通常称之为准入准出质量红线能力,其开发者通常是DevOps中台。中台提供原子能力以及配置化的能力,用户可以根据自己的业务去配置相应的指标产出与拦截规则,也可以直接套用特定的模板来快速实现准入准出的效果。本文就来讨论,这类能力要开发出来,在技术实现上,需要做怎样的考虑跟设计。
2023-01-26 14:42:23 1263
原创 【从零单排Golang】第七话:反射模块reflect使用方式探索
Golang的反射功能,在很多场景都会用到,最基础的莫过于rpc、orm跟json的编解码,更复杂的可能会到做另外一门语言的虚拟机。通过反射模块,我们可以在编程语言的runtime运行时期间去访问内部产生对象的信息。了解反射模块的实现,对我们了解Golang对象机制本身,也是莫大的帮助。今天,恰逢阳康+新年,就决定来探究一下Golang的反射模块——reflect。
2023-01-01 02:30:08 748 3
原创 【代码艺廊】daggre:数据聚合与联表检查工具
今天的主题是配置数据处理服务方面的内容,笔者采纳通过配置化方式声明数据处理过程的设计,编写了一个数据聚合工具daggre,全称为DAta-AGGREgator,专门用于处理数据的联表视图、过滤检查相关的需求。本文主要讲述工具的设计和应用场景。
2022-12-10 19:58:46 656
原创 【从零单排Golang】第六话:基于wire的kratos微服务框架示例项目
本文介绍一款b站开源的名为奎爷kratos的微服务框架,以及讲述一下基础的使用机理和框架结构,以及wire生成框架代码的机制。
2022-12-03 15:05:49 1154
HiKari的游戏自动化测试笔记
2022-11-24
Python进阶必备——HiKari为了拿捏Python整理的技术笔记
2022-10-05
minikube v1.4.0国内镜像Win版(k8s v1.16+)
2019-10-09
右键菜单powershell.inf
2019-10-09
实用Python教程——Easy Python精编版.pdf
2019-10-08
Unlocker3.0 VMWare解锁黑苹果
2018-10-10
Lua5.3.4(Windows x64)
2018-10-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人