自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

tianlongtc的博客

这是一个存放个人区块链学习资料的博客

  • 博客(63)
  • 收藏
  • 关注

原创 计算机网络资料

码分复用解码与编码(小白强推)http://read.pudn.com/downloads64/doc/comm/223842/CDMA.pdf计算机网络面试考点整理https://hit-alibaba.github.io/interview/basic/network/计算机网络gitbookhttps://book.gitlore.com/java/JavaAndroid%E7%AC%94%...

2018-04-30 22:06:08 260 1

转载 码分多路复用

引子: CDMA是个很重要的通信概念,很多的大学教科书上都会提到它,甚至我们今天可能都在使用它。然而提到cdma,很少有资料提到它的思想是多么的有创意,教科书上关于cdma的章节都过于复杂,过于数学化,虽然也有一些简便的描述方式,但是却几乎没有资料揭示cdma是多么的简单,实际上它比其他很多的概念都要更简单。     如果仅仅希望理解诸如cdma的概念而不得不去学习一大堆数学是很悲哀的事情! 如果...

2018-04-30 21:45:39 12683 14

转载 十条有用的 Go 技术

这里是我过去几年中编写的大量 Go 代码的经验总结而来的自己的最佳实践。我相信它们具有弹性的。这里的弹性是指:某个应用需要适配一个灵活的环境。你不希望每过 3 到 4 个月就不得不将它们全部重构一遍。添加新的特性应当很容易。许多人参与开发该应用,它应当可以被理解,且维护简单。许多人使用该应用,bug 应该容易被发现并且可以快速的修复。我用了很长的时间学到了这些事情。其中的一些很微小,但对于许多事情...

2018-04-30 13:19:59 175

转载 go详解strings包

// Count 计算字符串 sep 在 s 中的非重叠个数// 如果 sep 为空字符串,则返回 s 中的字符(非字节)个数 + 1// 使用 Rabin-Karp 算法实现[html] view plain copyfunc Count(s, sep string) int    func main() {  s := "Hello,世界!!!!!"  n := strings.Count(s...

2018-04-30 13:12:07 483

转载 go详解bufio包

// bufio 包实现了带缓存的 I/O 操作// 它封装一个 io.Reader 或 io.Writer 对象// 使其具有缓存和一些文本读写功能------------------------------------------------------------// bufio.go------------------------------------------------------...

2018-04-30 12:18:55 3075

转载 go按行读取数据的坑

源地址:https://github.com/ma6174/blog/issues/10首先从一个日志分析的Go程序说起,基本功能就是一行一行读取数据并处理。代码大体是这样的:func main() { scanner := bufio.NewScanner(os.Stdin) for scanner.Scan() { line := scanner.Text()...

2018-04-30 12:15:29 2799 1

原创 go并发爬虫

说明:最大20线程,搜索深度不大于3的网页,并打印出来。当搜索的不是网页的时候,存在bug,还在学习,希望有大佬告知怎么解决。package mainimport ( "fmt" "log" "net/http" "golang.org/x/net/html")type Link struct{ link string dep int}func...

2018-04-29 18:51:24 612

原创 go实现命令行拷贝文件

package mainimport ( "flag" "fmt" "bufio" "os" "strings" "io")func FileExists(dst string)bool{ _,err := os.Stat(dst); return err == nil || os.IsExist(err);}func co

2018-04-29 15:58:28 597

原创 go实现本地文件搜索引擎

// filelist.gopackage mainimport ( //"flag" "fmt" "os" "path/filepath" "strings")var ( ostype = "windows" // 获取系统类型)var listfile []string //获取文件列表func Listfunc(path st

2018-04-29 15:56:13 1566

原创 go实现github爬虫

package mainimport ( "time" "net/http" "fmt" "encoding/json" "github.com/urfave/cli" "os" "log" "flag" "bufio")const IssuesURL = &quot

2018-04-29 15:54:59 534

原创 go实现ftp

package ftpimport ( "errors" "fmt" "io" "net" "os" "strconv" "strings")type Ftp struct { con net.Conn ip string}func NewFtp(ip string) (*Ftp, error) {

2018-04-29 15:53:36 1016

原创 go实现本地数据库

package mainimport ( "log" "net/http" "fmt" "strconv")func main() { db := database{"shoes": 50, "socks": 5} http.HandleFunc("/list", db.list) http.HandleFunc(&

2018-04-29 15:52:43 2279

原创 go实现并发爬虫

package mainimport ( "os" "fmt" "log" "net/http" "golang.org/x/net/html")func Extract(url string) ([]string, error) { resp, err := http.Get(url) if err != nil { return ...

2018-04-29 15:50:39 1227

转载 使用mysql数据库与go进行交互

database/sqldatabase/sql是golang的标准库之一,它提供了一系列接口方法,用于访问关系数据库。它并不会提供数据库特有的方法,那些特有的方法交给数据库驱动去实现。database/sql库提供了一些type。这些类型对掌握它的用法非常重要。****DB**** 数据库对象。 sql.DB类型代表了数据库。和其他语言不一样,它并是数据库连接。golang中的连接来自内部实现的...

2018-04-28 01:18:53 1902

转载 curl

curl命令是一个利用URL规则在命令行下工作的文件传输工具。它支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称curl为下载工具。作为一款强力工具,curl支持包括HTTP、HTTPS、ftp等众多协议,还支持POST、cookies、认证、从指定偏移处下载部分文件、用户代理字符串、限速、文件大小、进度条等特征。做网页处理流程和数据检索自动化,curl可以祝一臂之力。语法curl(选项...

2018-04-27 00:05:54 550

原创 docker入门

Docker是什么?Docker是一个虚拟环境容器,可以将你的开发环境、代码、配置文件等一并打包到这个容器中,并发布和应用到任意平台中。比如,你在本地用Python开发网站后台,开发测试完成后,就可以将Python3及其依赖包、Flask及其各种插件、Mysql、Nginx等打包到一个容器中,然后部署到任意你想部署到的环境。Docker官方文档比较全,建议有能力的读一下官方文档。Docker的三个...

2018-04-26 11:59:46 193

转载 docker RUN、CMD 和 ENTRYPOINT

RUN、CMD 和 ENTRYPOINT 这三个 Dockerfile 指令看上去很类似,很容易混淆。本节将通过实践详细讨论它们的区别。简单的说:RUN 执行命令并创建新的镜像层,RUN 经常用于安装软件包。CMD 设置容器启动后默认执行的命令及其参数,但 CMD 能够被 docker run 后面跟的命令行参数替换。ENTRYPOINT 配置容器启动时运行的命令。下面我们详细分析。Shell 和...

2018-04-26 11:59:29 4447 1

转载 apt-get update和 upgrade的区别

 update update is used to resynchronize the package index files from their sources. The indexes of available packages are fetched from the location(s) specified in /e...

2018-04-26 00:03:05 1110

转载 Linux中变量$#,$@,$0,$1,$2,$*,$$,$?的含义

我们先写一个简单的脚本,执行以后再解释各个变量的意义 # touch variable# vi variable 脚本内容如下: #!/bin/shecho "number:$#"echo "scname:$0"echo "first :$1"echo "second:$2"echo "argume:$@"echo "show parm list:$*"echo "show pr

2018-04-26 00:02:55 1351

转载 linux & ; && ||

1.command1 & command2 & command3       三个命令同时执行 2.command1; command2; command3           不管前面命令执行成功没有,后面的命令继续执行 3.command1 && command2                         只有前面命令执行成功,后面命令才继续执行&...

2018-04-26 00:02:44 5185

原创 区块链优秀github开源项目

以太坊源码分析https://github.com/dragontc/go-ethereum-code-analysis以太坊源码https://github.com/ethereum/go-ethereum比特币源码https://github.com/bitcoin/bitcoin200行go语言实现区块链https://github.com/mycoralhealth/blockchain-...

2018-04-25 16:43:03 9508

原创 区块链优秀博客网址

以太坊爱好者https://ethfans.org/区块链中文社区https://bitshuo.com/巴比特http://www.8btc.com/blockchaingo各种包用法http://www.cnblogs.com/golove/tag/Golang%E5%8C%85/phphttp://www.runoob.com/php/php-tutorial.htmlmysql快速入门ht...

2018-04-25 16:37:58 555

原创 区块链优秀gitbook资料

docker 从入门到实践https://yeasy.gitbooks.io/docker_practice/content/image/list.htmlgo 语言圣经https://docs.hacknode.org/gopl-zh/ch5/ch5-01.html精通比特币(第二版)https://wizardforcel.gitbooks.io/masterbitcoin2cn/conten...

2018-04-25 16:34:09 946

原创 Windows 10 PC 安装 Docker CE

系统要求Docker for Windows 支持 64 位版本的 Windows 10 Pro,且必须开启 Hyper-V。安装点击以下链接下载 Stable 或 Edge 版本的 Docker for Windows。下载好之后双击 Docker for Windows Installer.exe 开始安装。运行在 Windows 搜索栏输入 Docker 点击 Docker for Wind...

2018-04-25 16:04:13 8621

原创 CentOS 安装 Docker

CentOS 安装 Docker CE警告:切勿在没有配置 Docker YUM 源的情况下直接使用 yum 命令安装 Docker.准备工作系统要求Docker CE 支持 64 位版本 CentOS 7,并且要求内核版本不低于 3.10。 CentOS 7 满足最低内核的要求,但由于内核版本比较低,部分功能(如 overlay2 存储层驱动)无法使用,并且部分功能可能不太稳定。卸载旧版本旧版本...

2018-04-25 16:00:00 179

原创 ubuntu 安装docker

Ubuntu 安装 Docker CE警告:切勿在没有配置 Docker APT 源的情况下直接使用 apt 命令安装 Docker.准备工作系统要求Docker CE 支持以下版本的 Ubuntu 操作系统:Artful 17.10 (Docker CE 17.11 Edge +)Xenial 16.04 (LTS)Trusty 14.04 (LTS)Docker CE 可以安装在 64 位的 ...

2018-04-25 15:58:30 174

转载 go 模板(template)的常用基本语法

模板在写动态页面的网站的时候,我们常常将不变的部分提出成为模板,可变部分通过后端程序的渲染来生成动态网页,golang提供了html/template包来支持模板渲染。这篇文章不讨论golang后端的模板读取及渲染方法,只讨论模板中嵌入变量,渲染变量、循环等一些基本用法。变量在golang渲染template的时候,可以接受一个interface{}类型的变量,我们在模板文件中可以读取变量内的值并...

2018-04-25 01:19:49 17908

转载 侧链白皮书

摘要自2009年比特币系统的推出以来,它带来了众多计算机科学和电子现金方面的创新,人们对去中心化加密货币的潜力有了极大的兴趣。但与此同时,对已达成共识的比特币系统关键部分实施变更,则必须非常保守地来处理。这导致与其他互联网协议相比,比特币系统更难于适应新需求和采纳新创新。我们提出了一种新技术——“楔入式侧链”——实现比特币和其他帐簿资产在多个区块链间的转移。这使用户能用他们已有的资产来使用新的和创...

2018-04-25 00:32:13 951

转载 go使用cli实现命令行多指令操作

前言对于一名初学者来说,想要尽快熟悉 Go 语言特性,所以以操作式的学习方法为主,比如编写一个简单的数学计算器,读取命令行参数,进行数学运算。本文讲述使用三种方式讲述 Go 语言如何接受命令行参数,并完成一个简单的数学计算,为演示方便,最后的命令行结果大概是这样的:# input ./calc add 1 2# output3# input./calc sub 1 2# out-1...

2018-04-25 00:24:48 3347

转载 利用cli.go来写命令行应用

定义命令和子命令下面是一个例子:package mainimport ( "fmt" "os" "github.com/codegangsta/cli")func main() { app := cli.NewApp() app.Name = "jasperapp" app.Usage = "sample command-line app...

2018-04-24 23:58:26 370

转载 go使用makefile

使用 Golang 已经有一阵了,在 Golang 的开发过程中,我已经习惯于不断重复地手动执行 go build 和 go test 这两个命令. 不过,现在我已经摆脱了这个习惯。如果只用到了不带参数的简单命令,直接这么操作可能并不可怕。但是在一些复杂的任务中,如果依旧是手动执行 go build 和 go test ,就可能会成为一个让人头疼的事情。我们可以通过其他方式解决这个问题。比如,可...

2018-04-24 18:55:10 3796

转载 go使用json

JavaScript对象表示法(JSON)是一种用于发送和接收结构化信息的标准协议。在类似的协议中,JSON并不是唯一的一个标准协议。 XML(§7.14)、ASN.1和Google的Protocol Buffers都是类似的协议,并且有各自的特色,但是由于简洁性、可读性和流行程度等原因,JSON是应用最广泛的一个。Go语言对于这些标准格式的编码和解码都有良好的支持,由标准库中的encoding/...

2018-04-24 18:48:32 899

原创 truffle教程

直接在geth的控制台通过solc进行编译部署的示例已经很多了,比如这篇博客,此处不再赘述。本文主要演示怎样通过truffle部署以太坊智能合约。truffle是一个以太坊智能合约开发框架,它会帮你做很多琐碎的事情,安装使用都很简单1、安装(安装之前你需要先安装nodejs)npm install -g truffle2、新建一个项目mkdir testcd testtruffle init ...

2018-04-24 18:32:14 1858 1

原创 自学区块链资料

article一个故事告诉你比特币的原理及运作机制The Proof-of-Work Concept 比特币白皮书ethereum white paperBlockChain 与 Ethereum 介绍汪晓明对区块链、以太坊的思考侧链深入内窥: 《区块链技术分析》csdn的blockchain知识库cryptographyHistory of cryptography公钥与私钥什么是椭圆曲线加密(...

2018-04-24 17:01:25 2338 1

转载 区块链开发入门书籍和文档

文章一个故事告诉你比特币的原理及运作机制比特币白皮书汪晓明对区块链、以太坊的思考以太坊智能合约实例深入内窥: 《区块链技术分析》csdn的blockchain知识库什么是区块链书籍Nodejs开发加密货币精通比特币区块链技术指南区块链:定义未来金融与经济新格局Hyperledger 源码分析之 Fabricethereum 源码分析programming blockchain in c#图文教程在...

2018-04-24 17:00:23 1776

转载 Elasticsearch学习

0. 带着问题上路——ES是如何产生的?(1)思考:大规模数据如何检索?如:当系统数据量上了10亿、100亿条的时候,我们在做系统架构的时候通常会从以下角度去考虑问题: 1)用什么数据库好?(mysql、sybase、oracle、达梦、神通、mongodb、hbase…) 2)如何解决单点故障;(lvs、F5、A10、Zookeep、MQ) 3)如何保证数据安全性;(热备、冷备、异地多活) 4)...

2018-04-24 16:55:02 158

原创 go Mutex (互斥锁)和RWMutex(读写锁)

golang中sync包实现了两种锁Mutex (互斥锁)和RWMutex(读写锁),其中RWMutex是基于Mutex实现的,只读锁的实现使用类似引用计数器的功能.type Mutex    func (m *Mutex) Lock()    func (m *Mutex) Unlock()type RWMutex    func (rw *RWMutex) Lock()    func (rw...

2018-04-24 16:53:52 401

原创 ipfs常用命令

查看本地节点初始目录中的文件> ipfs file ls /ipfs/QmVLDAhCY3X9P2uRudKAryuQFPM5zqA3Yij1dY8FpGbL7T/或者> ipfs ls /ipfs/QmVLDAhCY3X9P2uRudKAryuQFPM5zqA3Yij1dY8FpGbL7T/查看本地的已经存储的所有文件> ipfs pin ls查看某个文件的内容:ipfs...

2018-04-24 01:30:59 6529

转载 用 Go 构建一个区块链 -- Part 1: 基本原型

引言区块链是 21 世纪最具革命性的技术之一,它仍然处于不断成长的阶段,而且还有很多潜力尚未显现出来。 本质上,区块链只是一个分布式数据库而已。 不过,使它独一无二的是,区块链是一个公开的数据库,而不是一个私人数据库,也就是说,每个使用它的人都有一个完整或部分的副本。 只有经过其他数据库管理员的同意,才能向数据库中添加新的记录。 此外,也正是由于区块链,才使得加密货币和智能合约成为现实。在本系列文...

2018-04-22 23:51:23 278

转载 curl指令

curl命令是一个利用URL规则在命令行下工作的文件传输工具。它支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称curl为下载工具。作为一款强力工具,curl支持包括HTTP、HTTPS、ftp等众多协议,还支持POST、cookies、认证、从指定偏移处下载部分文件、用户代理字符串、限速、文件大小、进度条等特征。做网页处理流程和数据检索自动化,curl可以祝一臂之力。语法curl(选项...

2018-04-22 17:14:46 477

空空如也

空空如也

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

TA关注的人

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