golang面试题整理

golang面试题整理 1、go的调度 2、go struct能不能比较 因为是强类型语言,所以不同类型的结构不能作比较,但是同一类型的实例值是可以比较的,实例不可以比较,因为是指针类型 3、go defer(for defer),先进后出,后进先出 func b() { for i := 0; i < 4; i++ { defer fmt.Print(i) } } 4、select可以用于什么,常用语gorotine的完美退出 golang 的 select 就是监听 IO 操作,当 IO 操...阅读全文

2019.01.18 23:06 yongfutian
阅读:56218 评论:5

剖析nsq消息队列(一) 简介及去中心化实现原理

分布式消息队列nsq,简单易用,去中心化的设计使nsq更健壮,nsq充分利用了go语言的goroutine和channel来实现的消息处理,代码量也不大,读不了多久就没了。后期的文章我会把nsq的源码分析给大家看。 主要的分析路线如下 分析nsq的整体框架结构,分析如何做到的无中心化分布式拓扑结构,如何处理的单点故障。 分析nsq是如何保证消息的可靠性,如何保证消息的处理,对于消息的持久化是如何处理和扩展的。 分析nsq是如何做的消息的负载处理,即如何把合理的、不超过客户端消费能力的情况下,把消...阅读全文

阅读:732 评论:0

Golang的template(模板引擎)简明教程

原文可见: https://jiajunhuang.com/articles/2019_08_23-golang_html_template.md.html 模板语言,在前后端分离的时代,大概可以归类到上古时代的技术了。不过前后端分离并不是银弹(而且也只是 把模板从后端移到前端而已),它也有很多问题: - SEO - 需维护两套程序 - ... 模板语言仍然有它的用处,例如我的博客部署在一台512M的小机器上,起两套程序不仅写起来麻烦,而且内存占用...阅读全文

2019-08-30 21:25:19 herozem
阅读:14955 评论:0

YourNovel-基于Golang的开源小说搜索引擎&免费小说阅读网站发布啦

YourNovel - 开源小说搜索引擎 项目地址: https://github.com/DemonFengY... 官网: http://www.yournovel.cn 起源 项目起源于Github上另外一个类似的小说搜索引擎项目 https://github.com/howie6879/... 该项目给小说爱好者带来极大的福利(无广告、清爽的界面)。但是, 该项目作者貌似马上要关闭网站了, 想想自己手上有多余的服务器并且刚学完Golang, 马上行动起来使用Golang花了几天的时间开发...阅读全文

2019-09-03 16:32:33 有梦想的程序员
阅读:3698 评论:0

golang_go-micro整合各种mq

NATS 介绍 NATS是一个开源、轻量级、高性能的分布式消息中间件,实现了高可伸缩性和优雅的Publish/Subscribe模型,使用Golang语言开发。NATS的开发哲学认为高质量的QoS应该在客户端构建,故只建立了Request-Reply,不提供 1.持久化 2.事务处理 3.增强的交付模式 4.企业级队列。 NATS消息传递模型 NATS支持各种消息传递模型,包括: 发布订阅(Publish Subscribe) 请求回复(Request Reply) 队列订阅(Queue Sub...阅读全文

2019-09-04 16:32:31 yylany
阅读:1103 评论:0