易方达蓝筹
码龄8年
关注
提问 私信
  • 博客:26,276
    问答:1,896
    28,172
    总访问量
  • 34
    原创
  • 1,634,957
    排名
  • 16
    粉丝
  • 0
    铁粉

个人简介:一蓑烟雨任平生

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 加入CSDN时间: 2016-06-30
博客简介:

qq_35475714的博客

查看详细资料
个人成就
  • 获得20次点赞
  • 内容获得31次评论
  • 获得83次收藏
  • 代码片获得125次分享
创作历程
  • 4篇
    2022年
  • 5篇
    2021年
  • 27篇
    2020年
  • 1篇
    2019年
成就勋章
TA的专栏
  • MIT 6.824
  • go
    5篇
  • C or 计算机网络
    9篇
  • 个人喜爱
    3篇
  • 生活篇
    1篇
  • redis
    14篇
  • mysql
    5篇
  • python
    2篇
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

349人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

MIT 6.824 lab2笔记

分布式系统构建
原创
发布博客 2022.08.03 ·
976 阅读 ·
0 点赞 ·
1 评论 ·
1 收藏

浅谈一下raft一致性协议

raft一致性协议介绍
原创
发布博客 2022.06.18 ·
395 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

C++提高编程

C++提高编程本阶段主要针对C++泛型编程和STL技术做详细讲解,探讨C++更深层的使用1 模板1.1 模板的概念模板就是建立通用的模具,大大提高复用性例如生活中的模板一寸照片模板:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WXKCCg00-1646030437967)(assets/1547105026929.png)]PPT模板:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-S37n8LUn-16460304379
原创
发布博客 2022.02.28 ·
241 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

C++核心编程手册

C++核心编程本阶段主要针对C++面向对象编程技术做详细讲解,探讨C++中的核心和精髓。1 内存分区模型C++程序在执行时,将内存大方向划分为4个区域代码区:存放函数体的二进制代码,由操作系统进行管理的全局区:存放全局变量和静态变量以及常量栈区:由编译器自动分配释放, 存放函数的参数值,局部变量等堆区:由程序员分配和释放,若程序员不释放,程序结束时由操作系统回收内存四区意义:不同区域存放的数据,赋予不同的生命周期, 给我们更大的灵活编程1.1 程序运行前​ 在程序编译后,生成了ex
原创
发布博客 2022.02.28 ·
1247 阅读 ·
1 点赞 ·
0 评论 ·
8 收藏

手把手教你用go语言实现跳跃表

前言有序集合在生活中较常见,如根据成绩对学生进行排名、根据得分对游戏玩家进行排名等。对于有序集合的底层实现,我们可以使用数组、链表、平衡树等结构。数组不便于元素的插入和删除;链表的查询效率低,需要遍历所有元素;平衡树或者红黑树等结构虽然效率高但实现复杂。Redis采用了一种新型的数据结构——跳跃表。跳跃表的效率堪比红黑树,然而其实现却远比红黑树简单。1、redis有序集合介绍skiplist 编码的有序集合对象使用 zet 结构作为底层实现,一个 zset 结构同时包含一个字典和一个跳跃表:type
原创
发布博客 2021.04.09 ·
1893 阅读 ·
3 点赞 ·
4 评论 ·
0 收藏

观察者模式实现简单事件总线

使用 Golang 实现 EventBus支持以下功能的事件总线异步不阻塞支持任意参数值package mainimport ( "fmt" "reflect" "sync" "time")// Bus Bustype Bus interface { Subscribe(topic string, handler interface{}) error Publish(topic string, args ...interface{})}// AsyncEventBu
原创
发布博客 2021.04.06 ·
270 阅读 ·
1 点赞 ·
1 评论 ·
0 收藏

一个工作两年正准备离职人的心声 - (一、实习篇)

  我是2019届6月份毕业的,在这之前,秋招的时候,拿到了成都**公司的offer,原本电话沟通的是2019年3月份去实习的,原以为可以享受剩余两个月的校园欢乐时光,突然收到了项目组leader的微信通知,告知我最好早点去实习,于是约定了时间12月17日,前往公司实习,这个时间点正是六级考试的下个周一。  大概是12月初的样子吧,还有另外2个伙伴是一起实习的,于是我们仨约定成都公司附件碰面,把租房的事情落实下来,那是一家很小的房间,厕所浴室共用,大概就20平米的样子,里面有2张床,每张床都是上下铺的那种
原创
发布博客 2021.03.30 ·
264 阅读 ·
2 点赞 ·
0 评论 ·
0 收藏

用最简单的linux命令学习测试redis请求协议

redis请求协议,支持两种类型:PROTO_REQ_INLINE(内联型)、PROTO_REQ_MULTIBULK(批量回复协议型)。redis服务器通信中,用的都是协议型请求类型,同时也支持内联型请求类型(没有严格的协议封装,支持简单的请求方式接入)。1、批量回复协议型(支持批量命令)请求格式:*<参数数量> \r
$<参数 1 的字节数量> \r
<参数 1 的数据> \r
...$<参数 N 的字节数量> \r
<参数 N
原创
发布博客 2021.02.28 ·
261 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

普通本科,工作两年,成都华为OD岗位,该不该去?

答:

好的大概了解,目前工作在成都,国企感受到了一点职业危机,华为OD也在成都。

回答问题 2021.01.06

普通本科,工作两年,成都华为OD岗位,该不该去?

发布问题 2021.01.05 ·
4 回答

DNS介绍

在前文了解了IP是用于识别某个网络区域的主机,那么平时我们在访问网站的时候一般都不会输入IP进行访问。例如,你访问百度,一般都输入:www.baidu.com ,那么你总不会输入类似 124.23.1.12 这样的IP进行访问吧 设身处地想一下,若你想让用户记住你的网站,你总不能让他记一大串数字吧,更何况,以后用到IPv6,需要记忆的数字更多,所以最好的做法就是给这些IP一个名称,我们称之为域名,而当我们访问这些域名的时候,具体访问哪个IP这件事就要交给DNS去做了,本文也将详细介绍一下DNS的具体作用.
转载
发布博客 2021.01.05 ·
244 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

财富自由之python爬取天天基金排行数据,保存xls文件,慢慢分析

1、前言闲来无聊,最近迷恋上玩基金,真的是又菜瘾有大,刚好有朋友是做数据分析相关的,他想用excel分析基金历史数据,于是乎,让我去爬取天天基金上的排行数据。2、xls文件结果展示爬取了全部、股票型、混合型、债券型、指数型,5种类型排行,excel保存结果如下:3、源码话不多说,源码如下:from selenium.webdriver.chrome.options import Optionsfrom selenium import webdriverfrom selenium.webdr
原创
发布博客 2020.12.28 ·
2723 阅读 ·
3 点赞 ·
20 评论 ·
29 收藏

数组/链表排序

1、堆排序#include <stdio.h>void swap(int *p,int *q){ int temp; temp = *p; *p = *q; *q = temp;}void sort(int a[],int index ,int end){ int dad = index; int son = dad*2+1; while(son<=end){ if(son+1<=end an
原创
发布博客 2020.12.18 ·
220 阅读 ·
0 点赞 ·
2 评论 ·
0 收藏

多线程打印出ABCABCABC...

1、编写一个程序,开启3个线程,这3个线程的ID分别为A、B、C,每个线程将自己的ID在屏幕上打印10遍,要求输出结果必须按ABC的顺序显示;如:ABCABC….依次递推。/* mutex.c */#include <stdlib.h>#include <stdio.h>#include <pthread.h>#include <errno.h>/* 全局变量 */int gnum = 0;/* 互斥量 */pthread_mutex_t
原创
发布博客 2020.12.15 ·
414 阅读 ·
1 点赞 ·
1 评论 ·
0 收藏

go语言context机制总结

1、实现context接口的几大对象emptyCtx是实现了Context接口所有方法(方法返回值都为空)的一个对象,创建方法为Background(),通常用来作为根节点,其他ctx对象直接继承它继承emptyCtx的valueCtx对象,可以使用的接口方法为Value(),返回key对应的value值,其他方法返回为空,没意义继承emptyCtx的cancelCtx对象,可以使用的接口方法为Done()、Error(),该对象还实现了canceler接口,可以主动取消继承cancelCtx的t
原创
发布博客 2020.12.06 ·
246 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

超级实用的go语言学习教程

哈哈哈,转发于此
原创
发布博客 2020.11.27 ·
173 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

redis6.0 多线程简介

1、简单介绍redis 的瓶颈并不在 CPU,而在内存和网络。Redis 6 中的多线程 主要在处理 网络 I/O 方面,对网络事件进行监听,分发给 work thread 进行处理,处理完以后将主动权交还给 主线程,进行 执行操作,当然后续还会有,执行后依然交由 work thread 进行响应数据的 socket write 操作。2、单线程网络处理模型当监听到某一时刻,端口接收到数据时,根据事件模型,进行不同的处理。对于所有的客户端的请求,根据就绪队列的顺序,进行串行化处理,处理完fd1,再处
原创
发布博客 2020.11.21 ·
549 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

libevent使用教程

本文转载于此1、简介基本的socket变成是阻塞/同步的,每个操作除非已经完成,出错,或者超时才会返回,这样对于每一个请求,要使用一个线程或者单独的进程去处理,系统资源没有办法支撑大量的请求。posix定义了可以使用异步的select系统调用,但是因为它采用了轮询的方式来判断某个fd是否变成active,效率不高。于是各系统就分别提出了基于异步的系统调用,例如Linux的epoll,由于在内核层面做了支持,所以可以用O(1)的效率查找到active的fd。基本上,libevent就是对这些高效IO的封装
原创
发布博客 2020.11.19 ·
5156 阅读 ·
3 点赞 ·
1 评论 ·
23 收藏

redis中epoll模型-IO多路复用详情解析

阅读完redis中的网络模型源码,该文章会基于源码是如何去实现的角度,去介绍epoll模型、事件处理。以及基于此,自己实现的多人聊天终端系统,并附带源码。1、epoll模型介绍epoll 是Linux内核为处理大量并发网络连接而提出的解决方案,能显著提升系统CPU利用率。epoll使用非常简单,总共只有3个API :epoll_create函数创建一个epoll专用的文件描述符,用于后续epoll相关API调用;epoll_ctl函数向epoll注册、修改或删除需要监控的事件;epoll_wai
原创
发布博客 2020.11.15 ·
489 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

redis数据结构-动态字符串

1、内存对齐1.1 对齐原因CPU和总线是64位的,所以CPU每次可以从内存里面拿出8个字节,而这8个字节是对齐的,也就是说只能是0-7,8-15, 16-23这样的,不能从中间拿。这个时候你要读一个double,如果double的地址可以被8整除,那你就只需要跟内存要一次数据。如果不能整除,那你就得跟内存要2次数据。1.2 对齐规则结构体变量的起始地址能够被其最宽的成员大小整除结构体每个成员相对于起始地址的偏移能够被其自身大小整除,如果不能则在前一个成员后面补充字节结构体总体大小能够被最宽的
原创
发布博客 2020.11.07 ·
143 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多