- 博客(179)
- 资源 (9)
- 收藏
- 关注
原创 【极客日常】Go语言学习干货——从零单排Golang系列合集
在后端开发领域,Golang已经成为非常流行的编程语言之一,并且生态也非常成熟。虽然在应用规模上离Java还有一段距离,但其中很多编程技巧跟思路还是值得学习的,一是没有什么太多的coding约束,二是实际工作中也有可能用的上。在近一两年,笔者的工作也逐渐从主python转为主go语言,对于Golang也有一些简单的学习心得。借助今天这个机会,也将《从零单排Golang》系列做了精编,整合成电子书对外发布。
2024-08-11 15:03:00 650
原创 【极客日常】游戏测试开发干货——Python进阶与游戏自动化测试攻略
在互联网上,关于游戏测试(开发)领域的技术分享,实际是非常稀少。为此,针对游戏测试(开发)的工作特性,笔者根据自己以前的博客整合了两个文集:《HiKari为了拿捏Python整理的技术笔记》与《HiKari的游戏自动化测试笔记》
2022-11-24 20:16:34 2175
原创 【Medium Python】前言&目录
python作为最流行的语言之一,我们对python的认知到底有多少呢?大胆猜测,95%的同学对python的了解都不超过5%吧!不用说python的c源码了,就算是python每个标准库的.py源码,都有很少人去关心。结论就是,我们对python本身的理解是远远不够的,比想象中还不够!当然,这也可能是python的语言特性导致的吧,在设计方面就不需要我们去多想。python的岗位众多,网上的教材跟面试题也很多,然而很多都是八股文,浅尝辄止,鲜有深度的挖掘,让人知其然而不知其所以然,处处透露着对技术的不敬
2021-10-10 20:54:39 502
原创 【架构艺术】服务架构稳定性的基础保障
一个产品随着不断研发,其服务架构的复杂度会越来越高。随着产品的用户体量变大,为了保证产品能够长线运营,就需要保证整个服务架构的稳定性。因此,今天这篇文章,就从实操的角度,粗浅讨论一下,服务架构的稳定性需要如何做到基础保障。既然是基于实操的角度,那么理论上的东西不会涉及的太深刻。好比说,谈到稳定性,我们就会考虑SLI、SLO、SLA这些基础概念,但这些比较宏观。拿OKR举例子的话,O是SLA,KR是SLO,而SLI则是KR具体的指标定义。所以这篇文章主要讲如何保证SLI,间接满足SLO、SLA的需要。
2024-11-03 12:19:48 277
原创 【Python随笔】将requests实例转换成curl语句
在某些python的工具模块开发场景下,我们可能需要根据用户给定的web请求输入,来转化成一个curl的输出,用于一些网络请求测试,或者方便开发之间交流信息。由于python的web请求基本上一万个人里面九成九都用requests,因此今天这篇文章就简单介绍一下,如何在python里面将requests实例转化成curl语句。我们需要用到一个叫做curlify的工具类来满足需求。
2024-11-03 12:14:13 164
原创 【极客日常】由面试官角度给校招生的大厂面试要点
又到了一年一度的校招季,作为一个面试官,笔者面对的是很多不同方向的同学的简历,有些方向说实在的笔者自己也对相关的技术了解的不那么清晰。但既然是面试了,就必须有个把握,心中得有杆秤,宁可强杀,也不能错选,不然就得双输。这篇文章,就从面试官的角度,给各位今年的校招生,明年的校招生,以及未来的校招生,聊一下大厂面试的一些要点。虽然只是一家之言,但私以为还是比较具备参考价值的。
2024-10-16 23:32:49 427
原创 【DIY小记】通过降低电压和Process Lasso工具优化CPU超频表现
笔者在超频方面,通过降低CPU工作电压,并且结合Process Lasso对程序做CPU调度优化,成功再一次升级了CPU的表现,CS2的benchmark又提高了50左右的fps。本篇文章,就介绍一下笔者在这方面的一些实践。配置方面再复述一次:主板是微星z690刀锋ti,cpu是i9-12900kf,散热用的追风者冰灵m25-360,gpu是3070ti,内存是一个比较简陋的ddr4。
2024-10-16 22:22:06 429
原创 【DIY小记】新手小白超频i9-12900kf和3070ti经验分享
本文分享一下笔者在超频方面的小白经验,提升cs2游戏50fps左右。配置方面,笔者主板是微星z690刀锋ti,cpu是i9-12900kf,散热用的追风者冰灵m25-360,gpu是3070ti。
2024-10-13 14:18:33 527
原创 【Python随笔】pyside6绘制表盘和数字时钟的方法
本文分享一下pyside6/pyqt绘制时钟(表盘钟、数字钟)的方法,通过QLCDNumber控件和QPainter的一些绘图方法,可以解决。
2024-10-13 14:16:02 171
原创 【DIY小记】分享一些让编程工作效率翻倍的实用工具
对于一个程序员而言,拥有一套合理的编程工具集,便可以让编程工作事半功倍。本篇文章就分享下笔者当前使用的一些实用提效的编程周边工具。DIY一套编程工具,一定需要贴合自己的工作或者生活需求。好比说,你是前端,你是后端,或者你是搞安卓iOS客户端的,搞图形学渲染的,那肯定用到的工具都不一样。笔者主要工作是互联网后端方向,也兼顾一些前端开发、桌面工具之类的全栈开发内容,一般用Macbook做开发,而不是像游戏程序员一样用Windows比较多。所以本文分享的一些工具,虽然看起来比较普罗大众,但也
2024-09-16 12:51:49 510
原创 【测试人生】谈研发测试人员在AI时代中的自我成长
研发测试不分家,在AI时代,LLM/GPT技术的冲击之下,不论是研发还是测试人员都可能会担忧,AI是否会取代自己的工作。从笔者的角度看来,这根本不是一个需要担心的问题,就和围棋一样,在AlphaGo之后,大家都会利用AI来学习围棋,超越以前时代的人。而作为研发或者测试人员的你,也可以利用AI技术的产物,实现进一步的自我提升。今天,笔者决定简单聊一下,AI时代下,研发测试人员实现自我成长的一些方法。
2024-09-16 12:23:39 384
原创 【测试人生】分享下自己对于平衡日常工作和学习提升的观点
日常工作总是琐碎的,尤其是技术岗,沉浸在日常的需求开发、需求测试和bugfix里,很容易对工作环境形成依赖,导致没有成长空间。那么这种情况下,怎么样去平衡日常工作和自我的学习提升呢?今天,笔者就通过这篇文章,分享下自己的观点。核心的思想是:工作只是生活的一部分,要自己掌控自己的生活,不要让工作掌控自己的生活。要相信自己的直觉,不要过分消耗自己,坚持去做自我提升的事情,无论是不是通过工作去实现。
2024-08-17 13:33:52 412
原创 【极客日常】对低代码开发模式的一些思考和想法
低代码这个名词说起来已经有些年头了,广义上来讲可以说是达到这么一种效果,即尽量减少通过编写代码的方式来完成研发任务,甚至部署交付整个技术产品。那么低代码模式到底值不值得弄,有什么优势和缺陷,本篇文章笔者就来聊一聊自己对于低代码的一些思考跟想法。
2024-08-17 13:33:04 191
原创 【Python随笔】比PyQt5更先进的pyside6安装和使用方法
最近因为自研日常开发工具的需求,决定重新拾起PyQt5之类的桌面工具开发技术栈,为啥选用PyQt,一是因为笔者比较精通python,二是因为不需要在外观上做什么特别的东西。经过一番调研,发现当前的PyQt5版本已经过时,用pyside6会更加贴合现在的需求。因此笔者也简单部署了下pyside6的开发环境,通过这篇文章分享一下如何操作。
2024-08-11 16:15:02 902
原创 【极客日常】Golang一个的slice数据替换的bug排查
上周某天下班前,接到同事转来一个bug要排查,症状是代码重构之后某些业务效果不符合预期,由于代码重构人是笔者,于是blame到笔者这边。经过10min左右的排查和尝试后,解决了这个问题:既往逻辑没有改动,重构时候出笔误了。本文就记录这个bug排查的案例,供大家参考。
2024-07-20 23:18:36 461
原创 【架构艺术】大规模业务逻辑迁移实践
对于一个成熟的工程项目而言,因为项目未来发展或是和企业内部更深度融合的需要,我们可能需要对既有业务逻辑做很大规模的改动,涉及到多方面的逻辑迁移和代码重构,才能够达到下一代产品所需要的效果。今天这篇文章,就来剖析一下如何做好这件事情,尤其是在历史积淀非常厚重的场景,需要通过怎么样的手段,把这个问题解决好。
2024-07-20 22:43:37 512
原创 【架构艺术】代码架构治理之四层境界
今天这篇文章,就从笔者自己的角度,谈一下代码架构治理的四层境界,把读者自己最深层的思考内容给解剖出来。希望这篇文章能够帮助到一些在代码架构治理工作方面,感受到痛点的同行们,让大家可以通过文章提到的一些思维工具,去解决实际工作中代码架构治理方面的问题。这四层境界分别是:1. 套设计模式2. 自上而下需求拆解3. 自底向上模块抽象4. 网状概念聚类分层
2024-06-02 14:24:47 1187
原创 【DIY小记】用爬虫+clean-mark+zhihu-on-vscode搬运技术博客到知乎
本文讲述结合python爬虫、clean-mark工具和zhihu-on-vscode插件,实现从掘金到知乎的文章搬运的方法。
2024-05-01 18:42:18 624 2
原创 【极客日常】读2023美团技术年货的一些笔记
正直劳动节,翻了下2023年美团的技术年货,挑选了一些和变更风险防控和稳定性建设相关主题的文章做了下浅读。本文仅简单记一下阅读笔记。总共选读了3篇文章,分别是《基于AI+数据驱动的慢查询索引推荐》、《代码变更风险可视化系统建设与实践》,以及《AIOps在美团的探索与实践——事件管理篇》。
2024-05-01 00:05:12 274
原创 【DIY小记】用OCR和大模型GPT生成的《软件研发效能权威指南》读书笔记
《软件研发效能权威指南》一书,对于软件研发效能DevOps领域做什么事情,解决什么问题,给出了非常全面详尽的说明。这本书的精华,基本全部都浓缩在一张附属的海报上,海报讲述了每个章节的精简摘要,可以说是现成的读书笔记。2024年,相对于古早的纸质载体,用电子作为载体的文献在维护上成本更为低廉,并且也逐渐成为了最优的文献阅读方案。因此,顺带借着AI的东风,笔者决定用AI技术,将这份海报转化成一份电子版的读书笔记,通过OCR识别+GPT润色+人工校对,把这本书所有的精华给摘录下来。
2024-04-21 16:52:21 759
原创 【从零单排Golang】第十六话:channel的用法和基本原则
在基于Golang的后端开发中,channel是一个必须要掌握的并发编程概念。和python的queue一样,channel在不同的goroutine里承担着传递信息的作用,使得业务逻辑的状态上下文可以在不同的goroutine中共享。今天,我们就来看一下channel的用法还有一些使用上的基本原则。
2024-04-13 19:26:46 1128 1
原创 【架构艺术】变更元信息分析框架设计
在变更风险防控领域,对于线上变更元信息的分析是非常重要的一部分,我们需要一个独立的变更元信息分析框架,把所有的变更元信息分析过程和结果都归到一个独立的系统当中。这样,从变更风险防御能力的视角,变更分析的结果都是共享的、全局的、一致的,从而能最大限度提升变更风险防御能力可挖掘的潜力。本文,就简单聊一下,变更元信息分析框架设计的一些重点。
2024-04-04 14:24:32 657 1
原创 【极客日常】提升发布风险检查准确率的一些思路
在服务或者其它线上资源发布新版本的时候,我们都有必要为发布信息本身和上线的资源做风险检查,以确认发布内容不会对线上造成影响。但随着检查能力集合变得成熟,业务也肯定会有对检查能力优化的需求,需要提升检查的准确率,不至于出现太多无用的噪音,这也成为了风险检查提升可靠性的一项挑战。因此,本文就浅谈一下,提升发布风险检查准确率的一些思路。
2024-03-03 19:55:11 322 2
原创 【架构艺术】可持续性架构设计的秘诀
概念拆解,重组改造,是可持续性架构设计的秘诀。其核心要思考的便是,如何在自顶向下的需求拆解和自底向上的技术实现之间,不断优化这个“最大公约数”。为了让技术实现能够更具备可持续性,我们才需要把所有概念打碎,理顺概念之间的依赖和层次关系,再根据灵活组合不同的概念体系,以达到不同需求预期的效果。这样做技术设计,就可以应对频繁的需求变更,不至于积重难返。
2024-02-15 14:30:17 562
原创 【GitHub探索】蚂蚁变更管控平台AlterShield设计分析
变更管控是技术风险地一个子领域,主要的目标是在变更过程中,通过对变更流程的管控介入,提前发现变更过程存在的事故风险,或者阻止变更过程的错误进一步扩大影响面。在这个子领域,蚂蚁开源了AlterShield变更管控平台,提供了一套变更风险防御的解决方案。今天,本文就浅析下AlterShield平台整体的设计,适用的场景以及局限性。
2024-02-04 15:08:41 1269
原创 【极客日常】慢查询的风险治理思路
在线上环境运维过程中,我们通常需要治理慢查询的风险。慢查询会引起DB性能问题,并且当线上环境流量较大的情况下,就会出现因大量慢查询堆积导致DB被打挂的情况。因此,本篇文章分享一下慢查询的风险治理思路。
2024-01-07 16:36:37 432
原创 【测试人生】数据同步和迁移的变更注意事项
数据同步或者迁移操作也算是线上数据变更的一种类型。由于涉及的数据量非常大,一旦发生故障,会直接影响线上业务,并且较难止损。从变更风险管控的角度考虑,数据同步或迁移操作也需要走合理的发布窗口,并且在操作前也需要做足够的影响分析。本文就来聊一下数据同步和迁移的变更期间注意事项。
2023-12-09 22:34:52 505
原创 【架构艺术】一些通用的代码优化治理经验
在接手以前的项目做开发的过程中,我们经常会遇到因为既有代码理解困难,导致代码难以删改,问题难以排查的情况。一份富含技术债的代码,不论对于当下的问题解决,还是未来的需求开发,都会形成累赘。因此,本文就分享一些通用的代码优化和治理经验。
2023-11-04 19:05:43 300
原创 【测试人生】游戏业务测试落地精准测试专项的一些思路
精准测试在互联网领域有广泛的应用。以变更为出发点,通过对变更内容进行分析,可以确定单次变更具体涉及到哪些模块和功能点,以及是否存在夹带风险,从而从QA的视角,可以知道哪些功能模块需要做测试,以及哪些变更内容不符合预期。相比于互联网QA,游戏QA接入业务项目研发过程并没有那么深入,比如项目代码权限基本上游戏QA不会拥有,但即便如此,要在游戏测试领域应用精准测试专项技术,还是有一定思路可循。因此,本篇文章,笔者以自身经验为出发点,讲述一下在游戏业务测试落地精准测试专项的一些思路。
2023-10-02 12:00:26 446
原创 【DIY小记】修复Win10启动出现蓝屏0xc0000185错误的一些方法
近些日子想到自己尘封已久的笔记本电脑没有开机了,很多软件驱动之类的没有更新,就打算把电脑开起来做一轮批量升级。但开电脑的时候很久没有进入Win10桌面,等了很长一段时间蓝屏提示0xc0000185错误,说系统需要恢复。经历了一番折腾之后,笔者解决了这个问题。虽然不明确这个问题的根因在哪里,但还是分享一下自己收集到的一些解决方式。
2023-09-17 15:46:11 10554
原创 【测试人生】浅谈游戏策划配置表检查的技术设计
关于游戏策划的配置表检查测试,笔者也希望输出一些自己对于配置表检查测试技术的一些思考。本篇文章讲述两块内容,第一块讲下测试框架的开源,第二块讲下专项技术的设计。
2023-09-17 15:20:36 873
原创 【从零单排Golang】第十五话:用sync.Once实现懒加载的用法和坑点
在使用Golang做后端开发的工程中,我们通常需要声明一些一些配置类或服务单例等在业务逻辑层面较为底层的实例。为了节省内存或是冷启动开销,我们通常采用lazy-load懒加载的方式去初始化这些实例。在Golang里面,实现懒加载的方式可以简单的多,用内置的sync.Once就能满足。本文就介绍使用sync.Once的用法和坑点
2023-09-03 01:23:56 763
原创 【从零单排Golang】第十四话:使用rate和ratelimit实现限流限速
在研发中,我们经常会面对到处理并发逻辑的场景,尤其是有时候在与第三方平台对接的场景下,会遇到请求限流限QPS的要求。对于限流或者限速,我们通常会用令牌桶算法和漏桶算法来满足需要。这两种算法,虽然实际QPS数值可能都会有波动,但都能把速率限制在一个合理的水位。在Golang里面,这两种算法都有现成的实现可以直接用。咱们今天,就来看看这块的例子。
2023-08-26 15:57:48 1304
原创 【从零单排Golang】第十三话:使用WaitGroup等待多路并行的异步任务
在后端开发当中,经常会遇到这样的场景:请求给了批量的输入,对于每一个输入,我们都要给外部发请求等待返回,然后才能继续其它自己的业务逻辑。在这样的case下,如果每一个输入串行处理的话,那么很大一部分时间都会损耗在给外部发请求这个环节,因此我们会希望把这些请求放到各个goroutine里异步执行,等待批量执行完成之后再继续后面的逻辑。这个时候,我们就可以用到这个东西:sync.WaitGroup
2023-08-06 21:03:17 704
原创 【测试人生】批量刷数的发布流程与风险点
在项目日常开发过程中,批量刷数也是有一定频率的变更场景之一,同时也是容易产生风险的一种变更操作。本文就来聊下,批量刷数的发布需要经历哪些流程,以及流程中每个环节中有什么风险点需要考虑。
2023-07-09 11:18:37 591
原创 【测试人生】SQL变更的问题拦截手段
在DB做变更发布的各类场景当中,通过SQL更改DB数据内容,是最为常见的场景。既然是最为常见的场景,那么可能产生线上问题的概率也就越大。本篇文章就来探讨一下,要尽量减少SQL发布产生线上问题的可能性,需要采取什么样的手段。
2023-07-08 14:06:12 979
原创 【从零单排Golang】第十二话:用singleflight解决单服务处理高并发任务的问题
在后端开发场景,我们经常会遇到高并发的事务处理逻辑。虽然在微服务治理的机制下,能够实现多个无状态服务节点+负载均衡高并发处理请求,但对于单个服务节点来讲,如果存在某些耗时的任务需要被高并发访问,那么如果没有一套妥善的机制处理,就很容易出现大量这类任务实例堆积,导致任务返回延迟,或者节点内存暴涨的情况。今天,就来介绍Golang内部处理这种场景的一套方案:singleflight。
2023-07-01 20:52:17 966 2
原创 【DIY小记】工作中失误了,应该如何对待?
怎么样对待工作的失误,甚至是工作本身,不论是从心态上,还是从策略(抓手)上,都是值得去深入讨论的。工作失误无法彻底避免。如果你对你的工作内容很有责任感,那么如果真的失误了,就不要沉浸在失误的沮丧里,得去解决工作失误,才是真正对的起你的责任感。所以,坦然面对吧!
2023-06-11 01:20:19 521
HiKari的Golang从零单排笔记.pdf
2024-08-10
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关注的人