HiKariのTechLab

光の技术屋


  • 首页

  • 关于

  • 标签

  • 分类

  • 归档

  • 站点地图

  • 搜索

【测试人生】变更风险观测的流程逻辑设计

发表于 2025-01-26 | 更新于 2025-02-14 | 分类于 测试人生

在线上服务变更过程中,我们希望可以通过一套实时观测机制去监测线上服务的风险,从而能够确保线上稳定性,在出问题时可以及时回滚变更。今天这篇文章,就简单讲一下变更风险观测的流程逻辑需要怎么设计。

首先我们需要建模变更观测的过程。变更观测的生命周期,一般来讲,当服务某阶段变更开始后,观测会开始,然后当服务某阶段变更完,一般还需要停留观察一段时间,确定线上没有遗留风险之后,观测才会结束。可以简单的认为,一次变更观测,关联一次发布的某一个过程。所以一个观测任务,结构数据上需要包含发布工单的元信息、观测参数的元信息,以及任务自己的运转状态,同时每个任务实例需要被有序的调度起来,因此所以要有一个调度系统去处理每个任务实例的状态推进。

然后,再细一个粒度,对于一个特定的变更风险点,我们也需要用一个特定的观测能力去cover,所以对于每个观测能力,也要和上层的观测任务一样,有自己的元信息和状态转换定义。任务对能力是一对多的关系,一个观测任务当中,可以通过某种编排,把不同能力在不同的时间点启动起来,切入到发布过程的不同时机,这样就能够形成灵活的变更观测。

从这些角度出发,以一个简单的串行思维,整个变更观测任务需要做以下的动作:

阅读全文 »

【DIY小记】减肥10kg保持半年的经验分享

发表于 2025-01-25 | 更新于 2025-02-13 | 分类于 DIY小记

作为程序员,脑力劳动者,保持一个健康的身体,是非常重要的。回顾24年自己取得的结果,一个比较亮眼的就是减肥减了10kg,到达了一个比较健康的体重,保持了半年没有反弹,当然到现在也依然在保持。今天这篇文章就给大家分享一下自己的减肥和体重保持的经验。

减肥的要领,主要包括以下几点:心态、吃、运动以及休息。

阅读全文 »

【Python随笔】如何用pyside6开发并部署简单的postman工具

发表于 2024-12-21 | 分类于 Python随笔

最近一段时间闲来无事,简单研究了一下pyside6,也就是PyQt5的升级版。做这个的目的,也是回顾下桌面开发的基础,兴许未来可能用得上。虽然在日常工作中,可能用到桌面开发的场景比较少,桌面工具的成果也比较难包装,但有一个这样的工具,确实可以解决许多工作效率方面的问题。

在之前笔者也写过几篇pyside6文章,但不是特别系统,比如说:

  • pyside6安装
  • pyside6绘制时钟

因此,今天这篇文章就系统分享一下,怎么样用pyside6写一个postman接口调用的小功能,开发并部署出来。作为一个自己写的教学文章,这篇文章会重点提一些自己觉得实操过程中的要点,少一些ChatGPT就能回答的东西。有了这些基础之后,做其他的工具需求,也会变得更加简单一点。

项目初始化

安装方面不再赘述,详情可以看官网的Getting Started以及Tools的部分,然后先前的文章也基本上把目录组织和最小demo给讲清楚了。

核心要解决的问题就是通过目录组织,把工作流的每一个模块给拆出来,互不影响。比如这样:

阅读全文 »

【Python随笔】Enigma密码机的原理及python代码实现

发表于 2024-12-21 | 分类于 Python随笔

最近笔者接触到了Cypher这款游戏,玩法很简单,就是通过文字、图片等各种表达手段组成的谜面,猜一段英文,算是初步接触了密码学的一些知识。游戏中提到了很多类型的密码,其中Enigma密码机就是单独一种,在电影《模仿游戏》中,夏洛克.福尔摩斯费尽心力破解的德军密码,也就出自此密码机之手。在游戏里,有一道题目便是,需要根据Enigma密码机的初始设置,破译一段密文,得到明文。没办法,为了解出来这道题,只能发挥程序员的职业本性,写一段程序来跑一下了。

今天,笔者就分享一下自己用python实现的Enigma密码机,虽然代码非常粗糙,有很多优化空间,但整体逻辑比较清晰,尤其是解Cypher游戏里的题目,已经够用了。

简单来讲,一个Engima密码机是分层的,包含以下几个部分:

阅读全文 »

【架构艺术】服务架构稳定性的基础保障

发表于 2024-11-03 | 分类于 架构艺术

一个产品随着不断研发,其服务架构的复杂度会越来越高。随着产品的用户体量变大,为了保证产品能够长线运营,就需要保证整个服务架构的稳定性。因此,今天这篇文章,就从实操的角度,粗浅讨论一下,服务架构的稳定性需要如何做到基础保障。

既然是基于实操的角度,那么理论上的东西不会涉及的太深刻。好比说,谈到稳定性,我们就会考虑SLI、SLO、SLA这些基础概念,但这些比较宏观。拿OKR举例子的话,O是SLA,KR是SLO,而SLI则是KR具体的指标定义。所以这篇文章主要讲如何保证SLI以及其他指标,间接满足SLO、SLA的需要。

阅读全文 »

【Python随笔】将requests实例转换成curl语句

发表于 2024-11-03 | 分类于 Python随笔

在某些python的工具模块开发场景下,我们可能需要根据用户给定的web请求输入,来转化成一个curl的输出,用于一些网络请求测试,或者方便开发之间交流信息。由于python的web请求基本上一万个人里面九成九都用requests,因此今天这篇文章就简单介绍一下,如何在python里面将requests实例转化成curl语句。

这个场景下,我们需要用到一个叫做curlify的工具库来达到效果。curlify提供了一个to_curl函数,可以将一个请求实例转化成curl语句:

阅读全文 »

【极客日常】由面试官角度给校招生的大厂面试要点

发表于 2024-10-16 | 分类于 极客日常

又到了一年一度的校招季,今年由于团队同时招聘后端和智能化方向的同学,吸引了很多不同算法领域、后端领域以及甚至已经在大厂实习过的同学的简历,可谓是每年都非常优秀。至少比起笔者本人校招那个时候,是要优秀的很多,不是一点半点。

作为一个面试官,笔者面对的是很多不同方向的同学的简历,有些方向说实在的笔者自己也对相关的技术了解的不那么清晰。但既然是面试了,就必须有个把握,心中得有杆秤,宁可强杀,也不能错选,不然就得双输。这篇文章,就从面试官的角度,给各位今年的校招生,明年的校招生,以及未来的校招生,聊一下大厂面试的一些要点。虽然只是一家之言,但私以为还是比较具备参考价值的。

阅读全文 »

【DIY小记】通过降低电压和Process Lasso工具优化CPU超频表现

发表于 2024-10-16 | 分类于 DIY小记

在上一篇文章当中,笔者介绍了一些作为新手小白超频CPU和NVIDIA显卡的经验。今天又有了更新,笔者通过降低CPU工作电压,并且结合Process Lasso对程序做CPU调度优化,成功再一次升级了CPU的表现,CS2的benchmark又提高了50左右的fps。

本篇文章,就介绍一下笔者在这方面的一些实践。配置方面再复述一次:主板是微星z690刀锋ti,cpu是i9-12900kf,散热用的追风者冰灵m25-360,gpu是3070ti,内存是一个比较简陋的ddr4。

阅读全文 »

【DIY小记】新手小白超频i9-12900kf和3070ti经验分享

发表于 2024-10-13 | 更新于 2024-10-16 | 分类于 DIY小记

最近cs2更新了之后,因为总是解决fps过高的问题,导致游戏性能降的非常明显。笔者组的老土机子先前一直没有搞超频,现在也不得不睿一下保证游戏能够稍微流畅的运作,最终比以前稍微提升了50fps左右,cs2的dust2-benchmark地图能勉强达到平均400fps。本文就分享一下笔者在这块的粗浅经验,有什么技术概念性问题也麻烦大家指正。

配置方面,笔者主板是微星z690刀锋ti,cpu是i9-12900kf,散热用的追风者冰灵m25-360,gpu是3070ti,内存是一个比较简陋的ddr4,当然ddr5主板也没法支持,可以说整体是非常乞丐了。

阅读全文 »

【Python随笔】pyside6绘制表盘和数字时钟的方法

发表于 2024-10-13 | 分类于 Python随笔

最近在重玩pyside/pyqt桌面开发的内容,计划做一些日常工具来自用,顺带练练手。正好刚遇到一个问题是画时钟(表盘+数字),查了很多资料都稍微调试了下才最终解决,本文即分享一下解决方法。

首先是数字时钟。由于pyside6本身有QLCDNumber控件的支持,所以绘制起来比较容易,官网也给了一个例子。笔者自己则在这个基础上做了下修改,代码如下:

阅读全文 »
123…19
ひかり.HDQ

ひかり.HDQ

talk is cheap, code is rich
189 日志
14 分类
417 标签
GitHub Mail CSDN Juejin Steam Bilibili
© 2019 – 2025 ひかり.HDQ
|