白日依山尽,黄河入海流。欲穷千里目,更上一层楼。 -- 唐·王之涣

Django接入Celery实现任务管理

Django接入Celery实现任务管理,并且启用flower进行任务的可视化查看。另外任务的结果除了保存在Redis中之外,我们也可以选在保存在MySQL等持久化数据库,方便后续做统计分析,结果查询等等操作
阅读更多

使用场景

  • 热数据缓存

  • 数据共享分布式 分布式session

  • 定义分布式锁 string类型 setnx 在key不存在时才能添加成功,返回True

  • 全局ID int 类型的 incrby 利用原子性

  • 计数器
    int 类型的 incr
    允许一定的延迟,先写Redis,在定时同步后端数据库

  • 限流
    int 类型的 incr
    以访问者的ip和其他信息作为key,访问一次增加一次计数,超过次数则返回false

  • 位统计
    String类型的bitcount(1.6.6的bitmap数据结构介绍)

    1
    2
    3
    4
    setbit k1 6 1
    setbit k1 7 0

    BITOP ADD / OR / XOR / NOT
  • 购物车

string或者hash, string 可以实现的, hash都可以实现
key/field/value
hincr/hdecr/hdel/hgetall/hlen

  • 用户消息时间线 timeline

list,双向链表,直接作为timeline就好了。插入有序

  • 消息队列

List提供了两个阻塞的弹出操作:blpop/brpop,可以设置超时时间

blpop:blpop key1 timeout 移除并获取列表的第一个元素,如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止。
brpop:brpop key1 timeout 移除并获取列表的最后一个元素,如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止。
上面的操作。其实就是java的阻塞队列。学习的东西越多。学习成本越低

队列:先进先除:rpush blpop,左头右尾,右边进入队列,左边出队列
栈:先进后出:rpush brpop

  • 抽奖

随机值获取

spop myset

  • 点赞

sadd / srem / sismember / smembers / scard

  • 商品标签

  • 商品筛选

1
2
3
4
5
6
# 差集
sdiff set1 set2
# 交集 intersection
sinter set1 set2
# 并集
sunion set1 set2
  • 用户关注 推荐模型

用户1可能认识的人(差集):sdiff 2:follow 1:follow
用户2可能认识的人:sdiff 1:follow 2:follow

  • 排行榜

id 为6001 的新闻点击数加1:zincrby hotNews:20190926 1 n6001

获取今天点击最多的15条:zrevrange hotNews:20190926 0 15 withscores

哨兵的作用

  • 监控主数据库和从数据库是否运行正常;
  • 主数据出现故障后自动将从数据库转化为主数据库

哨兵的安装配置

安装

配置

使用

1
2
3
4
# vim sentinel.conf
sentinel monitor master-name 127.0.0.1 6379 1
# 启动
redis-sentinel ./sentinel.conf

最后一个参数表示 最低通过票数 ,是哨兵在选举时用;如果是多个哨兵的话

1
2
3
4
5
6
7
# vim sentinel.conf
sentinel monitor master-name1 127.0.0.1 6379 1

sentinel monitor master-name2 127.0.0.1 6380 2

# 启动
redis-sentinel ./sentinel.conf

故障演练

环境 1主2从; 单哨兵或者多哨兵 故障演练原理是一样的

扩展

哨兵和集群?

v_v v_v .... 这篇分享的目的纯粹是受不了golang访问的速度,一会能打开一会又打不开了。通过`某些`方式也是同样的问题,所以这里核心是翻译go的tutorial相关文章。当然说是翻译并且不是原封不动的全部翻译过来,咱的英语水平也有限,主要是把核心部分按照自己的理解翻译过来
阅读更多

MySQL数据导出总结

在MySQL禁用`secure_file_priv`的情况下(也就是执行select xxx `into outfile报错` 提示 The MySQL server is running with the --secure-file-priv option so it cannot execute this statement)如何定制化导出数据... ...
阅读更多

2021个人年终总结

自2019年开始,每年都强制要求自己写一篇《个人年终总结》,今年已经是第三个年头了。

新生命

今年,最值得喜庆的事情是,家里新添一位小公主。小名唤作 “小久” - 期待已久的新成员。自己也同时多了一个角色父亲

人真的是一个很奇特的生物,刚开始觉得父亲这个角色也就是到了一定的年龄阶段必备打上的一个标签而已。

但是从产房外焦急等待许久直到看到她的第一眼,内心中明白了,原来这就是父亲!我会尽我所能给予她帮助、引导和陪伴!

我的小公主

普通人 Or nobody

昨天晚上看罗振宇的《时间的朋友》跨年演讲其中有一段是说,什么是普通人。

普通人至少要满足三个标准:有房住、有班上、有人陪 – 张安定

时间的朋友跨年演讲截图

按照这个标准,我们连普通人 都算不上,只能是nobody

这让我们不得不反思,什么才是我们想要的? 理想和现实如何平衡?也许真的值得我们每一个人思考

认识一个朋友,结婚之后回了老家,有份稳定等工作,有个家庭,因为是南方,老家那边景色宜人。感觉是远离都市,过上了田园般的生活

《归园田居》 个人喜欢的一首歌

也许在某些个夜晚,可能独坐一人,啤酒相伴,抬头望月,心想什么才是我们想要的?

关于健康

生命诚可贵,健康最重要

作为一名互联网工作者,大家时不时的会听到网络上报道猝死、突然情绪奔溃等新闻,让人感慨万千。

对于现在年轻人,绝大多数都面临身处异地的孤独感、忙碌繁重的工作、一线城市的快节奏压力,高昂的生活成本等,想要面临各方面的压力。

健康的身体才是生活的基石!

所以对于个人而言,今年强制要求加强锻炼,目的很简单,不至于让自己倒下!

因为我当爸爸了,因为我是大家庭中的一员。我想要我的家庭更健康、更幸福的走下去。

先看看去年的健身计划,有没有打脸…

1
2
3
4
1、爬山至少12次
2、10公里跑步6次
3、香巴拉徒步至少3次,其中一次要有时间上的要求
4、被大佬拉到一个群,需要每天30个俯卧撑打卡

实际上香山爬山只完成4次;香巴拉独步1次;健身群打卡,俯卧撑没有坚持做。

不过倒是今年一直在坚持锻炼是真真滴。

  • 10公里以上跑完完成17次

  • 完成一次半程马拉松, 21.16公里,用时 1小时58分09秒

人生第一次半程马拉松

  • 2021年累计跑步 594.66公里,2020年只有 73.14公里

2021累计跑步594.66公里

  • 2021年累计行走1575.76公里,完成次数1079次

2021年累计行走1575.76公里,完成次数1079次

  • 2021年累计运动33246分钟,累计天数349天

2021年累计运动33246分钟,累计天数349天

体重维持在70公斤,没有实现“人到中年必发福”的目标 ^_^ … … 不过说减肥呢,一直没有管住自己的嘴,确实是一大遗憾

不过对于健身,相比去年,自己能明显感觉到精气神好很多了

希望2022健身继续加油💪🏻

我建了一个微信群《热爱生活,坚持健身》,希望想要坚持锻炼的朋友一起加入。

热爱生活,坚持健身

或者加我个人微信号 candy_colin

不过希望想坚持锻炼而又不知道怎么开始,或者想有个人监督监督,彼此鼓励的,欢迎加入哦

不过既然选择加入了,如果不坚持的打卡的话,会有可能被请走哦~~~

学习成长

活到老学到老,古人诚不欺我。

去年也列举了读书计划个人成长

个人成长中

  • 体重没有减下来 😭😭 可能就是另外一个目标(美食)导致😂
  • 周末的时候会在家做饭吃,基本也都是家常菜,酸辣土豆丝、青椒牛肉、西红柿炖牛腩、酸汤肥牛、回锅肉、可乐鸡翅、麻烦香锅、疙瘩汤、鸡蛋汤、酸辣汤… … 所以没有减肥成功,给自己找个借口 😁😄😄
  • 比较有成就感的是拿到了CISP的证书,对信息安全基础有了更好的了解,但是换了工作之后貌似用不上

cisp

读书计划中

  • 《少有人走的路》读完了一本,后来才发现是一个系列
  • 《战国纵横:鬼谷子的局(1-15卷)》有空的时候一直在微信读书里面坚持听,进度75%
  • 《高效人士的七个习惯》纸质版,刚开始读
  • 《枪炮、病菌与钢铁》纸质版,刚开始读
  • 《苏菲的世界》读了40%

不过,上班路上手机刷小说倒是刷了两部 v_v …


2022 目标

-> 坚持读书,希望能培养自己的读书习惯

《少有人走的路》系列剩余7本
《高效人士的七个习惯》
《枪炮、病菌与钢铁》
《苏菲的世界》

技术类的都不列举了,回头会在博客中单独整理自己觉得不错的技术类书籍清单

-> 坚持锻炼,让自己有个更好的身体

  • 跑步累计完成720公里(比2021年增加20%)
  • 完成半程马拉松 至少2次
  • 行走不算了,现在上下班路上能走就会走,饭后时间允许也会走走,已经形成了习惯
  • 现在住的地方离香山很远了,爬山看时间是否允许吧,希望还有时候和小伙伴一起去爬山、野外徒步

-> 学会生活,努力平衡工作和生活

留作话题,我们一起讨论

2022, 让我们一起加油💪🏻💪🏻!

2022元旦快乐

告别2021
希望2022一切都慢慢好起来

总结2021
年终总结-图片来自网络

Shell实现文件中的N行合并为一行

有时候想从网页上把一些表格类数据下载下来,但是页面有没有提供下载功能,直接复制下来粘贴到文本文件每个列又换行成独自的一行,如何实现自动转化呢?核心就是文件行的合并... ...
阅读更多