Posts
如何在 Django 中保证并发的数据一致性
· ☕ 3 分钟
前面一部分主要讲乐观锁和悲观锁。锁从数据库层面,保证了并发时的数据一致性。了解锁,有助于对并发解决方案的理解。后面一部分主要讲的是 Django 中,并发场景下,保证数据一致性的解决办法。 1. 关于锁 1.1 乐观锁 乐观锁的出发点是,同一条数据很少会因为并发修改而产

Django 中使用 utf8mb4 支持 emoji 表情
· ☕ 2 分钟
1. 什么是 utf8 理论上,utf8 使用 1-6 个字符, 实际上,最新的 utf8 规范只使用一到四个字节,最大能编码21位,正好能够表示所有的 17个 Unicode 平面。 2. 什么是 utf8mb4 utf8mb4 是 utf8 的超集,理论上原来使用 utf8,然后将字符集修改为 utf8mb4,也不会对已有的utf8 编码读

NPM 常用命令
· ☕ 1 分钟
** 默认执行命名时,针对的是当前目录环境。如果加上 -g 参数,则表示针对的是全局生效。** npm 升级 1 npm install npm -g 查看当前版本 1 npm -v 查看 npm 源配置 1 npm config get registry 修改 npm 源 1 2 npm config set registry http://registry.npm.taobao.org/ # npm config set registry https://registry.npmjs.org/ 临时指定 npm 安装源 1 npm install [package name] --registry=https://registry.npm.taobao.org 设置 proxy 1 npm config set proxy http://proxy.example.com:8080 查看 proxy 1 npm config get proxy 删除

战略思考与表达学习笔记
· ☕ 2 分钟
主要记录的是分析方法。 1. 战略分析 麦肯锡七步成诗法 陈述问题 分析问题 优先排序 指定详细的工作计划 进行关键分析 综合结果并建立有结构的结论 讲故事 2. 认识问题 大部分的问题是不能认识问题,unknown unknown。能够认识到问题、陈述问题,是解决问题的

GitLab CI 配置 Runner
· ☕ 2 分钟
1. 下载并配置 Runner 1.1 下载 Runner GitLab-CI 的 Runner 是一个 Go 写的程序包,可以去官网下载到本地。 1 2 yum install -y wget wget -O /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64 增加执行权限 1 chmod +x /usr/local/bin/gitlab-runner 1.2 新增 runner 用户 运行 Runner 时,以 runner:runner 账户运行。 1 2 groupadd -g 1234 runner useradd runner -u 1234 -g 1234 1.3 修改 pip 源 1 2 3 4 cat /etc/pip.conf [global] index-url= http://pypi.doubanio.com/simple/ trusted-host = pypi.doubanio.com 1.4 创建工作目录 1 mkdir -p /data/gitlab-data 2 注册 Runner 在项目