03 2021 档案

摘要:有条件翻Q的去这里看吧:看前面的配置步骤就可以了。 https://www.youtube.com/watch?v=e1C5WIfZ89s 我这里记录一下: 进入https://console.cloud.google.com/自己创建一个项目 选择创建的项目 进入API&Services → Da 阅读全文
posted @ 2021-03-16 16:08 werbenhu 阅读(799) 评论(1) 推荐(0)
摘要:看了一阵子nsq源码,出去细节大体的流程基本算是看明白了 下面来总结一下,看下面的图 个人觉得其实只要搞清楚几个Loop,我称为“守护”协程,也就是一直在for... select... 里面跑着不退出的几个关键函数。 看上面的图,有几个呢? 从底层依次往上看 diskqueue.IoLoop(): 阅读全文
posted @ 2021-03-12 15:33 werbenhu 阅读(113) 评论(0) 推荐(0)
摘要:一、TCP Handler nsqd里面的Main函数。 //nsqd.go func (n *NSQD) Main() error { //... n.waitGroup.Wrap(func() { exitFunc(protocol.TCPServer(n.tcpListener, n.tcpS 阅读全文
posted @ 2021-03-12 14:50 werbenhu 阅读(392) 评论(0) 推荐(0)
摘要:channel有下面几个重要的成员,其实跟topic还有点像,都有一个memoryMsgChan和diskqueue memoryMsgChan: 这是存放消息的内存,就是一个通道,通道的大小MemQueueSize, 默认配置是10000,也就是如果堆积的消息超过10000就会使用磁盘了 back 阅读全文
posted @ 2021-03-12 10:56 werbenhu 阅读(222) 评论(0) 推荐(0)
摘要:topic的入口在哪里:GetTopic() GetTopic如果存在则直接返回,不存在则NewTopic() 个人觉得Topic里面有两个重要的变量和一个函数,搞清楚这三个东西就差不多了 memoryMsgChan: 这是存放消息的内存,就是一个通道,通道的大小MemQueueSize, 默认配置 阅读全文
posted @ 2021-03-11 15:31 werbenhu 阅读(90) 评论(0) 推荐(0)
摘要:有兴趣可以看看这篇文章 https://www.cnblogs.com/zhangboyu/p/7457070.html 一、队列存储 队列的特征是先入先出,也就是写入是从后面写入,读取是从前面读取 我们平时写的队列一般是放到内存里面,比如一个大的动态数组 这里如果队列中的数据很大,diskqueu 阅读全文
posted @ 2021-03-11 14:34 werbenhu 阅读(198) 评论(0) 推荐(0)