殷东亮的博客

Redis 的分布式锁使用注意

1月 3, 2020
Database, 系统设计

为什么需要分布式锁 # 锁机制用于管理对共享资源的并发访问控制,当同一服务的多台机器间需要控制并发的时候,需要保证服务间在同一时间只能被一个线程访问。由于 Redis 的特点是单进程,并且具有高性能的特点,所以一般用 ...

学习钢琴半年的体会 Recommended

12月 27, 2019
Life, Recommended

婚礼上为了给媳妇制造一个印象深刻的惊喜,我提前三个月去学了钢琴,现在回想起来也算是一件有意思的事情。6 月底报名后,经过和钢琴老师的讨论,对于我这种零基础短期想突击的,同时后期还想继续学下去的,最后老师 ...

Github Actions 实践总结

12月 1, 2019
DevOps, Tools

Github Actions 发布有一段时间了,自己用的也挺嗨,过来总结一下。我主要在两个地方用到了,一个是博客,另一个是打包、发布前端项目。整体功能上 Actions 和 GitLab CI/CD 差不多,同样实现了项目的自动化测试、打包、部署,不过 Actions 利用了 GitHub 开源 ...

Redis 实现布隆过滤器

11月 12, 2019
Database, 数据结构, 系统设计

布隆过滤器(Bloom Filter,BF),能够确定一个东西一定不存在或可能存在,常用于在海量并发情况下防止缓存击穿,相比较传统的 List、Set、Map 数据结构,布隆过滤器能够在大数据量的情况下,相 ...

Redis 基础知识

11月 5, 2019
Database

Redis 介绍 # 历史 # Redis 是一个使用 ANSI C 编写的开源、支持网络、基于内存、分布式、可选持久性的键值对存储数据库,由来自意大利西西里岛的 Salvatore Sanfilippo(Antirez)发起并编写。从2015年6月开始,Re ...

使用 Django 查询数据库的分表

10月 18, 2019
Python, MySQL, Django

业务背景 # 最近已经转到 Go 下面进行日常工作的开发,我的一个后台项目有一些内部轻量的数据查询需要,考虑需求的复杂度不高,就平常自己和同事几个人使用,没必要专门开发一个前端项目来进行数据查询,于是我想到了老 ...

UTF、Unicode 和 ASCII 编码的关系

9月 20, 2019
系统设计

说 UTF 需要先说 Unicode,而说 Unicode 需要先说 ASCII,这三者正好是历史的发展一步步进化而来的,是计算机领域为了解决全世界各种文字之间的编码统一问题而给出的通用解决方案。 ASCII 码表 # ASCII(Americ ...

Django 中 N+1 查询问题优化

12月 17, 2018
Python, Django, 系统设计

Django ORM 框架虽然很好用,但是如果不注意,在查询时很容易引发 N + 1 的查询问题。 N + 1 问题 # 考虑 文章+作者 这样的 Model 层设计,在这个模型中,Author 和 Article 是一对多的关系。 from django.db import models from django.contrib.auth.models import User class Author(models.Model): user = models.ForeignKey(User) name = models.CharField(max_length=64) class Article(models.Model): title = ...


© 2012-2024 YINDONGLIANG.COM