0%

WSL2 极大的提升了在Windows上的Linux的使用体验,tc 是Linux自带的流量控制器,能控制延迟、丢包、带宽等网络配置。但在当前 5.15 内核版本的WSL中缺少所需模块,需要手动编译内核开启tc。

阅读全文 »

问题

  • fastapi 中执行一段 cpu 密集型代码,在 Edge(Chromium 内核) 浏览器打开两个 tab,同时请求该接口,发现后一个请求会被阻塞,直到前一个请求完成。代码 demo 如下:
阅读全文 »

简介

  • python 最知名的数据库 ORM 终于在 23 年 1 月 26 号发布了可用于生产环境的 2.0版本,提供了全新的 ORM 与 Core 层操作,异步支持,更友好的类型提示,性能提升。
阅读全文 »

为什么要写单元测试

  • 减少线上故障,方便重构
  • TDD(测试驱动开发)
  • 难测的代码就是烂代码
阅读全文 »

问题描述

  • 查询学生成绩排名, 找出持续超过 3 天 排名前 2 的同学

思路分析

  • 获取排名: dense_rank相同排名, rank间隔排名
  • lag(col, 1) 获取上一条 , lead 获取下(偏移量)条记录
  • 根据时间间隔 打标签, 配合 sum 实现中断过的时间分组
  • 过滤拿到结果
阅读全文 »

Docker 简介

  • Docker 在 2013 年 3 月 20 日发布第一个版本,使用 Go 语言开发, 利用 Linux 内核的资源隔离机制(groups, namespaces )提供一个比虚拟机更轻量级的的容器隔离解决方案。
  • 解决 PaaS 服务 部署发布需要繁琐的配置问题,做到 一次打包,处处运行。
阅读全文 »

背景

  • 项目中需要插件化机制进行解耦,统一抽象交互接口,只要符合统一接口即可做到插件的替换 ,动态更新

分析

  • Python 作为动态语言提供了很灵活的importlib模块导入, 借此实现动态导入某模块
阅读全文 »