Kafka常见面试题

Kafka是分布式发布-订阅消息系统,它最初是由LinkedIn公司开发的,之后成为Apache项目的一部分,Kafka是一个分布式,可划分的,冗余备份的持久性的日志服务,它主要用于处理流式数据。

  • 0
  • 1
  • 阅读 ( 1543 )

升级安装go1.13.5

运行文件时报错verifyinggithub.com/mattn/go-isatty@v0.0.10-0.20190818123653-bf9a1dea1961/go.mod:github.com/mattn/go-isatty@v0.0.10-0.20190818123653-bf9a1dea1961/go.mod:Gethttps://sum.golang.org/lookup/github.com/mattn/go-isatty@v0.0.10-0.20190818123653-bf9a1dea19

  • 0
  • 0
  • 阅读 ( 1470 )

Go网络编程

概述 网络协议 从应用的角度出发,协议可理解为“规则”,是数据传输和数据的解释的规则。假设,A、B双方欲传输文件。规定: 第一次,传输文件名,接收方接收到文件名,应答OK给传输方; 第二次,发送文件的尺寸,接收方接收到该数据再次应答一个OK; 第三次,传输文件内容。同样,接收方接收数据完成后应答OK表示文件内容接收成功。 由此,无论A、B之间传递何种文

  • 0
  • 0
  • 阅读 ( 927 )

用go语言实现磁力猫一样的磁力搜索网站

磁力搜索网站2020/01/02更新 https://www.cnblogs.com/cilisousuo/p/12099547.html 1.页面展示 演示站点            2.程序架构 名称用途server 收集torrent数据 worker 收集Hash信息 web 数据展示 Tool 工具     3.安装 在安装环境前您需要配置golang环境 Go 下载地址 安装python和mongodb sudoaptinstallmongodb sudoaptinstallpython3

  • 0
  • 0
  • 阅读 ( 2345 )

【Go语言系列】2.2、Go语言基本程序结构:关键字与标识符

什么是标识符 标识符用来命名变量、类型等程序实体。标识符是指Go语言对各种变量、方法、函数等命名时使用的字符序列,标识符由若干个字母、下划线_、和数字组成,且第一个字符必须是字母。通俗的讲就是凡可以自己定义的名称都可以叫做标识符。 命名规则 一个标识符实际上就是一个或是多个字母(A~Z和a~z)数字(0~9)、下划线_组成的序列,但是第一个字符必须是字母或下

  • 0
  • 0
  • 阅读 ( 552 )

【Go语言系列】2.1、Go语言基本程序结构:注释

注释在程序中的作用是对程序进行注解和说明,便于对源码的阅读。在源码中适当地添加注释,能够提高源码的可读性。
 Go语言的注释主要分成两类,分别是单行注释和多行注释。
 单行注释:
 
 //单行注释
 
 
  
 多行注释:
 
 /*
 第一行注释
 第二行注释
 ...
 */
 

  • 0
  • 0
  • 阅读 ( 858 )

Go搭建一个Web服务器

我们可以使用http包建立Web服务器   1packagemain 2 3import( 4"fmt" 5"log" 6"strings" 7"net/http" 8) 9 10funcsayHelloName(whttp.ResponseWriter,r*http.Request){ 11r.ParseForm()//解析参数 12fmt.Println(r.Form) 13fmt.Println("path",r.URL.Path) 14fmt.Println("scheme",r.URL.Sch

  • 0
  • 0
  • 阅读 ( 619 )

golang的传值调用和传引用调用

传值还是传引用 调用函数时,传入的参数的传值还是传引用,几乎是每种编程语言都会关注的问题.最近在使用golang的时候,由于传值和传引用的方式没有弄清楚,导致了BUG. 经过深入的尝试,终于弄明白了golang的传值的传引用,尝试过程记录如下,供大家参考! golang本质上都是传值方式调用 严格来说,golang中都是传值调用,下面通过例子一一说明 普通类型的参数 这里的普通类型,指的是int,

  • 0
  • 0
  • 阅读 ( 745 )

golang自定义error

系统自身的error处理一般是errors.New()或fmt.Errorf()等,对一些需要复杂显示的,不太友好,我们可以扩展下error。 error在标准库中被定义为一个接口类型,该接口只有一个Error()方法 typeerrorinterface{ Error()string } 那么,自定义error只要拥有Error()方法,就实现了error接口,这里我们用结构体来扩展 packageerrors import( "encoding/json" ) typeErrstruct{ Cod

  • 0
  • 0
  • 阅读 ( 1417 )

golang的io.copy使用

net/http下载 在golang中,如果我们要下载一个文件,最简单的就是先用http.get()方法创建一个远程的请求后,后面可使用ioutil.WriteFile()等将请求内容直接写到文件中。 funcDownFile(){ url:="http://wx.qlogo.cn/Vaz7vE1/64" resp,err:=http.Get(url) iferr!=nil{ fmt.Fprint(os.Stderr,"geturlerror",err) } deferresp.Body.Close()

  • 0
  • 0
  • 阅读 ( 1438 )

【Go语言系列】第三方框架和库——GIN:快速入门

要求要安装Gin软件包,需要:1、安装Go(需要1.11+版本)2、设置Go工作区安装1、下载并安装gin:
 
 $goget-ugithub.com/gin-gonic/gin
 
 
  2、将gin引入到代码中:
 
 import"github.com/gin-gonic/gin"
 
 
  3、(可选)导入net/http。例如,如果使用http.StatusOK这类的常量,则需要这样做:
 

  • 0
  • 0
  • 阅读 ( 857 )

【Go语言系列】第三方框架和库——GIN:GIN介绍

1、Gin是什么?
   Gin是一个用Go(Golang)编写的HTTPweb框架。它是一个类似于martini但拥有更好性能的API框架,由于httprouter,速度提高了近40倍。如果你需要极好的性能,使用Gin吧。2、为什么要用Gin
   在Web开发中,开发人员经常需要使用特定框架来进行开发与维护,而开源框架Gin是Go语言中最流行的Web框架,其API调用方便,性能优越,在Web开发中占有非常重要的位置。  

  • 0
  • 0
  • 阅读 ( 915 )

【Go语言系列】1.4、GO语言简介:第一个Go语言程序

接下来我们来编写第一个Go程序hello.go(Go语言源文件的扩展是.go),代码如下:
 
 //声明main包
 packagemain
 
 import(
 "fmt"//导入fmt包,打印字符串是需要用到
 )
 
 //声明main主函数
 funcmain(){
 fmt.Println("HelloWorld!")//打印HelloWorld!
 }
 
 
 你也许不

  • 0
  • 0
  • 阅读 ( 553 )

【Go语言系列】1.3、GO语言简介:Go语言开发的知名项目

下面列举的是原生使用Go语言进行开发的部分项目。1、DockerDocker是一种操作系统层面的虚拟化技术,可以在操作系统和应用程序之间进行隔离,也可以称之为容器。Docker可以在一台物理服务器上快速运行一个或多个实例。例如,启动一个CentOS操作系统,并在其内部命令行执行指令后结束,整个过程就像自己在操作系统一样高效。项目链接:https://github.com/docker/docker2、go语言Go语

  • 0
  • 0
  • 阅读 ( 711 )

【Go语言系列】1.2、GO语言简介:哪些大公司正在使用Go语言

Go语言的强项在于它适合用来开发网络并发方面的服务,比如消息推送、监控、容器等,所以在高并发的项目上大多数公司会优先选择Golang作为开发语言。
 1、Google
 这个不用多做介绍,作为开发Go语言的公司,当仁不让。Google基于Go有很多优秀的项目,比如:https://github.com/kubernetes/kubernetes,大家也可以在Github上https://github.com/google/查看更多Google的Go开源项目。
  
 2

  • 0
  • 0
  • 阅读 ( 594 )

【Go语言系列】1.1、GO语言简介:什么是GO语言

一、Go的起源
 Go语言的所有设计者都说,设计Go语言是因为C++给他们带来了挫败感。在GoogleI/O2012的Go设计小组见面会上,RobPike是这样说的:我们做了大量的C++开发,厌烦了等待编译完成,尽管这是玩笑,但在很大程度上来说也是事实。Go语言起源2007年,并于2009年正式对外发布。它从2009年9月21日开始作为谷歌公司20%兼职项目,即相关员工利用20%的空余时间来参与Go语言的研发

  • 0
  • 0
  • 阅读 ( 696 )

go语言 二叉树

 
 
 packagemain
 
 import(
 "fmt"
 "reflect"
 )
 
 typeBinaryNodestruct{
 Datainterface{}//数据
 lChild*BinaryNode//左子树
 rChild*BinaryNode//右子树
 }
 
 //创建二叉树
 func(node*BinaryNode)Create(

  • 0
  • 0
  • 阅读 ( 646 )

GO 语言常用排序

1.冒泡排序(bubblesort)的基本思想:比较相邻两个元素的关键字值,如果反序,则交换
 
 funcBubbleSort(arr[]int){
 flag:=false
 //外层控制行
 fori:=0;i<len(arr)-1;i++{
 //内层控制列
 forj:=0;j<len(arr)-1-i;j++{
 //比较两个相邻元素
 ifarr[j]>arr[j+1]{&#1

  • 0
  • 0
  • 阅读 ( 991 )

go 语言实现栈原理


 packagemain
 
 import"fmt"
 
 typeStackNodestruct{
 Datainterface{}//数据
 Next*StackNode//下一个节点
 }
 
 //创建链栈
 funcCreateStack(Data...interface{})*StackNode{
 iflen(Data)==0{
 returnnil
 }

  • 0
  • 0
  • 阅读 ( 667 )

Golang中类面向对象特性

一、类型方法的实例成员复制与类型方法的实例成员引用   在Go中可以类似Java等面向对象语言一定为某个对象定义方法,但是Go中并没有类的存在,可以不严格的将Go中的struct类型理解为面向对象中的类; typedemoObjectstruct{ idint }   类的概念有了,那怎么为这个类(struct结构)定义方法呢;Go语言中有两种方式:1、在类型指针上定义方法; func(o*demoObject)one(){ fmt.Printf("one方法

  • 0
  • 0
  • 阅读 ( 663 )