自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 消息订阅与推送

写在前面:消息订阅与推送都通过nsq的tcp服务实现。关于消息的推送最重要的是两个文件:nsqd/protocol_v2.go和nsqd/client_v2.go。当一个客户端与nsqd进程建立了一个tcp连接时,会调用protocolV2.IOLoop方法,并新建一个clientV2结构体对象。IOLoop方法会启动一个协程执行messagePump方法。并且对于每一个tcp连接,都会有两个协程:运行IOLoop的协程用于接收客户端的请求;运行messagePump的负责处理数据,把数据给客户端cli

2020-06-02 15:12:18 1422

原创 残留docker镜像和容器删除

停止退出的容器docker stop $(docker ps -a | grep "Exited" | awk '{print $1 }')删除已经停止的容器docker rm $(docker ps -a | grep "Exited" | awk '{print $1 }')删除none镜像docker rmi $(docker images | grep "none" | awk '{print $3}')...

2020-05-19 15:51:42 1143

原创 新建channel

url path: /channel/create入口函数:doCreateChannel1、getExistingTopicFromQuery:解析出请求参数中的topicName和channelName,然后检查topicName对应的topic对象是否存在,不存在则报错并返回,存在则返回请求参数、topic对象指针、channelName、error2、GetChannel:主要逻辑在getOrCreateChannel中2.1、getOrCreateChannel:如果channelName

2020-05-18 16:51:50 351

原创 清空、暂停topic

清空、暂停topicurl path: /topic/empty入口函数:doEmptyTopic清空topic1、先校验topicName是否合法(这一步有点多余,因为创建topic的时候已经检查过了,不合法topicName没法创建成功),然后根据topicName获取topic对象2、Empty(): 删除从已读文件到已写文件序号之间的所有文件(每次读取完成的文件会被删除,所以不能从0开始删除),然后初始化标记,不赘述了,然后删除metadata fileurl path: /topic/pause入

2020-05-18 16:49:42 592

原创 nsq删除topic

url path: /topic/delete入口函数:doDeleteTopic->DeleteExistingTopic一、根据topicName获取Topic对象指针,注意这里只需要用读锁控制并发,对应topic不存在直接报错并返回二、topic.Delete(),需要注意的是在关闭topic之前先删除channel和topic,这样做的目的是不会有任何消息未被处理,同时所有写入操作都将出错,并且不会创建新的topic来强制排序内部调用了exit(deleted bool)函数,入参为t

2020-05-14 15:49:09 1125

原创 nsq详解

nsq详解写在前面新建Topicurl path: /topic/create实现入口函数:doCreateTopic->getTopicFromQuery一、解析请求参数,获取topic名称二、通过IsValidTopicName判断topicName是否有效(匹配0~9、英文字母大小写、下划线,且ephemeral只能出现一次)三、然后就是执行GetTopic,开始具体创建topic操作写在前面NSQ 是实时的分布式消息处理平台,其设计的目的是用来大规模地处理每天数以十亿计级别的消息。NSQ

2020-05-11 17:20:29 897

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除