什么是socket 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。建立网络通信连接至少要一对端口号(socket)。socket本质是编程接口(API),对TCP/IP的封装,…
分类:go教程
Bytom Java版本离线签名
比原项目仓库: Github地址:https://github.com/Bytom/bytom Gitee地址:https://gitee.com/BytomBlockc… tx_signer Java im…
Json and Go
Reference https://blog.go-zh.org/json-a… Encoding Encode的基本用法是 package main import ( "encoding/json" "fm…
Go - redis
Go-Redis包管理 很明显,我们Go是没有这个包的,那么我们可以利用GO的命令。首先我们得先配置GOPATH的路径,我选择的是/data/go/goSource作为我包的路径,所以shell执行如下export GO…
Go语言的变量、函数、Socks5代理服务器
Go语言中变量的声明和JavaScript很像,使用var关键字,变量的声明、定义有好几种形式 1. 变量和常量 // 声明并初始化一个变量 var m int = 10 // 声明初始化多个变量 var i, j, k…
GoLang 变量作用域
GoLang 变量作用域 在 Golang 中,变量作用域分为: 本地局部变量 全局变量 参数变量 本地局部变量 定义:在函数或者在语义块(if/for等)中定义的变量生效范围:定义在函数里面则在整个函数范围有效; 定义…
6行代码解决golang TCP粘包
什么是TCP粘包问题以及为什么会产生TCP粘包,本文不加讨论。本文使用golang的bufio.Scanner来实现自定义协议解包。 协议数据包定义 本文模拟一个日志服务器,该服务器接收客户端传到的数据包并显示出来 ty…
【go共识算法】-POW
pow介绍 工作量证明(PoW,Proof of Work)。通过计算一个数值(nonce ),使得拼揍上交易数据后内容的 Hash 值满足规定的上限。在节点成功找到满足的Hash值之后,会马上对全网进行广播打包区块,网…
【Go】slice的一些使用技巧
原文链接:https://blog.thinkeridea.com/201901/go/slice_de_yi_xie_shi_yong_ji_qiao.html slice 是 Go 语言十分重要的数据类型,它承载着很…
go中的type
type分三类 预声明标识类型,基本就是boolean,numeric and string 复合类型,如:map slice arry struct interface pointer function channel…
go语言中iota的一个例子
package main import ( "fmt" ) type BitFlag int const ( // iota为0,1左移0位 = 1 Active BitFlag = 1 << iota //…
Golang 中 for-loop 和 goroutine 的问题
00. 背景 最近在学习MIT的分布式课程6.824的过程中,使用Go实现Raft协议时遇到了一些问题。参见如下代码: for i := 0; i < len(rf.peers); i++ { DPrintf("i…