- 博客(373)
- 资源 (4)
- 收藏
- 关注
原创 Go字符串操作技巧
定义多行字符串Go语言中定义多行字符串可以使用反勾号(backtick),比如下面的定义:var tools= `UI for overview of your Golangpackage benchmarks progress.`需要主要的是,打印输出的任何空格字符与原来的多行定义一模一样。fmt.Printf("[%s]", tool)输出结果:[...
2018-04-03 14:24:41
1775
原创 浅谈程序员常去的社区
国外Hacker News世界顶级英文技术博客或者科技新闻的聚集地,科技圈里发生的事情或者特别有价值的技术博客都会被及时收录。既然是hacker人员,真的有必要时刻关注网站的新闻内容。你可以从用户提交的数据中找到适合你的学习资源,比如文章、图像视频以及对一些问题的讨论。网址:https://news.ycombinator.com/newsGoogle+ CommunitiesGoogle+社区只需
2017-12-28 13:25:59
3164
1
原创 Go的unsafe包
Go官方包提供了一个unsafe包,在这个包里面有含够绕开Go程序类型安全的操作。 既然是unsafe包,使用起来一定要特别小心。尽管unsafe有点危险,但是它也难以置信的有用。unsafe的操作:A pointer value of any type can be converted to a Pointer.A Pointer can be converted to a pointer v
2017-12-22 10:46:56
1009
原创 值得期待:Go对WebAssmbly的完全支持
WebAssembly获得了所有浏览器的一致支持, Chrome 和 Firefox 已经原生支持 WebAssembly,Edge 和 Safari 也在预览版中加入了 WebAssembly 支持。Go很快也会对WebAssembly进行支持,目前还处理开发阶段。社区已经有对应的指导文档,下面就是社区的部分指导步骤。 ” Compiling Go code to wasm is also d
2017-12-20 17:32:22
5628
原创 探究Go类型参数的函数
Go语言中,函数的定义与函数的调用方可以不一致。换句话说,缺乏runtime类型安全就允许函数调用端的参数与函数定义端的参数不一致。Go不支持函数的多态特性,这就决定了无法根据参数的类型或者个数定义多态的函数。但是,可以定义多态参数。Go构建函数中,append, close, delete, copy, cap 和 len函数都使用了参数多态。Go编程中,有时候为了达到代码的简洁美而编写一些泛化的
2017-12-20 15:52:16
1989
原创 Go反射调用方法
Go提供了一个很重要的特性就是反射机制,反射机制对应处理一些特殊的应用场景非常实用。下文是Go反射调用函数的代码片段。func callReflect(any interface{}, name string, args... interface{}) []reflect.Value{ inputs := make([]reflect.Value, len(args)) for i,
2017-12-20 10:01:22
5236
原创 Go字符类型转化为整型或者整型转化为字符类型
Go语言很容易地实现了字符类型到整型类型的转化,反过来也一样。见下文代码实现。 i := 10 fmt.Printf("i convert string : %s", strconv.Itoa(i)) s := "1000" // The bitSize argument specifies the integer type // that the result
2017-12-20 09:56:51
3204
原创 Go sha256使用实例介绍
SHA-256安全散列算法SHA(Secure Hash Algorithm)是美国国家安全局 (NSA) 设计,美国国家标准与技术研究院(NIST) 发布的一系列密码散列函数,包括 SHA-1、SHA-224、SHA-256、SHA-384 和 SHA-512 等变体。主要适用于数字签名标准(DigitalSignature Standard DSS)里面定义的数字签名算法(Digital Sig
2017-12-17 16:05:59
21034
原创 configure: error: C++ preprocessor "/lib/cpp" fails sanity check
编译c++系统时,抛出configure: error: C++ preprocessor “/lib/cpp” fails sanity check原因:缺少gcc-c++,使用yum install -y gcc-c++就可以解决。
2017-10-16 16:59:28
1519
原创 Kubernetes集群中部署dashboard
部署 dashboard 插件下载k8s后的解压缩目录结构:kubernetes/cluster/addons/dashboard使用的文件:$ ls *.yamldashboard-controller.yaml dashboard-rbac.yaml dashboard-service.yaml新加了 dashboard-rbac.yaml 文件,定义 dashboard 使用的 Rol
2017-10-16 15:08:37
9516
原创 Kubernetes集群中部署私有库harbor
私有仓库harbor部署使用 docker-compose 部署 harbor 私有仓库的步骤,你也可以使用 docker 官方的 registry 镜像部署私有仓库。环境变量harbor用到的变量。$ export NODE_IP=10.50.101.74 # 当前部署 harbor 的节点 IP$部署所需文件docker-compose文件从 docker-compose 发布页面下载最新的
2017-10-16 14:40:43
3396
原创 Kubernetes集群中部署Node节点
Kubernetes集群中的Node节点部署kubernetes的Node节点包含如下组件:flannelddockerkubeletkube-proxy环境变量需要的变量。$ # 替换为 kubernetes master 集群任一机器 IP$ export MASTER_IP=10.50.101.41$ export KUBE_APISERVER="https://${MASTER
2017-10-16 14:38:51
12007
原创 Kubernetes部署master节点
部署master节点kubernetes master 节点包含的组件:kube-apiserverkube-schedulerkube-controller-manager目前这三个组件需要部署在同一台机器上:kube-scheduler、kube-controller-manager 和 kube-apiserver 三者的功能紧密相关;同时只能有一个 kube-scheduler、
2017-10-12 17:25:49
35334
原创 Kubernetes集群构建指导(上篇--据说价值10k以上)
Kubernetes集群构建指导内容表单Kubernetes集群构建指导 设置环境变量CA证书和秘钥 安装CFSSL创建CA分发证书校验证书网络参考资料部署高可用etcd集群设置环境变量下载最新etcd创建TLS秘钥和证书创建etcd的systemd单元文件设置etcd服务部署kubectl命令行工具 设置kubectl环境变量下载kubectl创建admin证书
2017-10-12 16:12:44
3898
原创 高校学子享有的社会优惠服务
高校edu邮箱带来好处只要是在校大学生或者教职员工都可以拥有本校的edu邮箱,你可知道,这个邮箱可以带来那些实惠呢?下面,小编我细细道来。京东学生优惠不做广告了,京东购物好不好,看了就知道。据说有什么学生九折优惠哦!腾讯云学生优惠腾讯云学生优惠(https://cloud.tencent.com/act/campus)价格60元/月(市价格168元/月),需要验证学信网信息。阿里云学生优惠阿里云学生
2017-10-12 15:55:01
1315
原创 NATS核心技术基本介绍
NATS基本介绍NATS基础简介NATS是一个简单、安全、可扩展的高效消息系统,它可以实现分布式部署,横向扩展。主要运用在云本地应用、IoT基础消息设施和微服务架构中。NATS由Apcera team维护,主要包括了NATS Server (才用Go语言编写), NATS Streaming和各类语言的客户端应用框架(Python, Ruby, Node.js, Elixir, Java, NGIN
2017-10-12 15:50:26
6329
原创 etcd基本介绍
etcd初识etcdetcd是一个分布式可靠的键值存储系统。它提供了与ZooKeeper相似的功能,但是使用Go语言编写而不是Java语言。Etcd使用Raft协调算法而不是ZooKeeper采用的Paxos算法。在云计算方面,Go是一个大有前景的语言,被誉为云时代的C语言。 对比与ZooKeeper,etcd更轻量级,etc更加关注一下几点:简单:curl命令可以调用的API接口(http+J
2017-09-11 11:45:28
4441
原创 NSQ 安装指南
NSQ 安装指南假设我们的服务器安装下面要求编排。nsqlookup 集群列表192.168.234.77192.168.234.36192.168.234.39nsq 节点192.168.234.117192.168.234.118nsqadmin 节点192.168.234.119安装前准备下载最新的二进制包,命令行操作如下:tar -xvf nsq-0.3.8.linux-amd6
2017-02-23 10:15:40
3688
原创 Go如何保证gorountine执行完毕后继续执行
Go如何保证gorountine执行完毕后继续执行Gorountine和channel是go语言最核心的功能,这个功能保证了go强大的并发执行能力。如果你想在你继续执行你的goroutine之前等待所有的goroutines执行完毕,你该如何使用go语言解决这样一个问题呢?下面,我将给出三中解决方案。其中,最有解决方案是sync.WaitGroup。程序函数等待利用time包中的Sleep方法等待一
2017-02-21 12:29:52
8114
原创 TOML简介
TOML简介GitHub 目前的新项目已经转用 CoffeeScript 了。CoffeeScript 比 JavaScript 要简洁优雅得多。同样地,GitHub 也觉得 YAML 不够简洁优雅,因此捣鼓出了一个 TOML。TOML 的全称是 Tom’s Obvious, Minimal Language,因为它的作者是 GitHub 联合创始人 Tom Preston-Werner 。GitH
2017-02-19 11:27:50
19856
1
翻译 Go 1.8 正式发布
今天Go团队很高兴地宣布Go 1.8发布了。你可以从下载页面获得1.8版本。在这个版本中,整个标准库有显着的性能改进和变化。 Go 1.7中为64位x86系统引入的编译器后端现在用于所有体系结构,在这些体系结构下可以看到显着的性能改进。例如,我们的基准程序所需的CPU时间在32位ARM系统上减少了20-30%。在此版本中,对于64位x86系统也有一些性能提升。编译器和链接器跑得更快。编译时间应该比
2017-02-17 11:25:29
949
原创 Go语言 Select 详细解读
Go Select 详解select语句让多个channel操作等待Go的select语句让程序线程在多个channel的操作上等待,select语句在goroutine 和channel结合的操作中发挥着关键的作用。介绍一个小程序,演示这个select功能。这个程序模拟接受消息功能,有两个channel接受发送过来的消息。select语句用来接受两个某个消息,for循环表示仅接受3个消息。pack
2017-02-16 12:11:23
12401
原创 Spark集群安装指导
Spark集群安装从 http://spark.apache.org/downloads.html 下载最新的Spark稳定版本。下载到指定路径下,这里是/opt/h2/下。tar xvf spark-2.0.2-bin-hadoop2.7.tgz mv spark-2.0.2-bin-hadoop2.7 spark设置关键变量设置好Java配置参数后,需要设置必要的Spark运行的环境变量。假
2016-12-22 10:35:04
619
原创 Storm 1.0.2集群安装指导
Storm 1.0.2集群安装指导安装前准备必要的安装语言依赖,主要包括了JDK和Python语言库。Java 7+Python 2.6.6下载最新的Storm编译包,最新的稳定版是1.0.2。下载链接: https://github.com/apache/storm/archive/v1.0.2.zip cd /opt curl https://github.com/apache
2016-12-22 10:33:27
1706
原创 Hadoop 2.7集群安装指南
Hadoop 2.7集群安装安装环境是centOS环境。有三个下面的主机:balance01 hadoop_masterbalance02 node02 balance03 node03配置Linux安装账号三步创建一个用户,使他有与root一样的权限。1) 用root下,创建一个用户“app” 组 [root@da
2016-10-24 14:06:41
1010
原创 Go语言实现将[]string转化为[]byte
Go语言实现将[]string转化为[]byte假设你想实现Go语言的string数组到byte数组的转化。演示函数如下所示:func convertStringsToBytes(){ stringContent := []string{"通知中心","perfect!"} byteContent := "\x00"+ strings.Join(stringContent, "\x0
2016-05-22 17:31:18
17037
原创 Go打印函数printf格式简介
fmt.print参数规约printf输出规约是按照预定义好的参数格式输出的,参数和对应说明如下表所示。 parameter description %d decimal integer %x, %o, %b integer in hexade cimal, octal, binar y %f, %g, %e floating-p oint number: 3.1415
2016-05-22 16:36:54
5080
原创 Go包管理gpm简介
gpm is a minimalist package manager for Go that leverages the power of the `go get` command and the underlying version control systems used by it to set your Go dependencies to desired versions, thus a
2016-05-22 16:31:40
2177
原创 未来编程形式设想
对于未来的编程形式,会不会像太极(tai-chi)一样充分发挥自己的设立能力和想象能力呢? YouTube – Iron Man 2 – SFX montage by Prologue Films. It’s too far away to think about this. ^_^哈哈!下面的文章就是对Go语言的基本介绍。We will look at how Go does objects
2016-05-22 16:29:17
943
原创 Go语言为什么这么流行?
这个问题很复杂,多方面原因决定了Golang的实用价值。Go语言的背景Go的吉祥物Gordon田鼠,是由Google公司创造一种新程序语言,并且公司为这门语言付出了极大的努力。Go语言一出现就获得业界的普遍关注和使用。为什么呢?Go具有一些多数程序语言没有的资产。首先,这是一个Google计划,它有数量庞大的服务器和技术高超的程序设计师为后盾。Google的
2016-04-25 10:13:54
3817
1
原创 Caravel一个数据可视化平台
Caravel 作为一个可视化,直观化和交互化的数据模块控制探究平台。【工程以前的名字为Panoramix】 Caravel 展示图效果图1Caravel简介Caravel的主要目标是使其能够很容易的切片、分片和数
2016-04-11 11:59:36
5448
1
原创 CentOS 7上安装Zabbix(快速安装监控工具Zabbix)
前提要求(optional)安装Zabbix监控工具前,先安装必要的运行工具包yum install gcc gcc-c++ make openssl-devel curl wget net-snmp net-snmp-utils net-snmp-libs net-snmp-devel gnutls gnutls-devel libxml2 libxml2-devel安装httpdyum ins
2016-04-03 14:25:36
3352
原创 Go文件操作
读取文件中的内容假设你想对其某个文件中的内容,但是,你只关心你需要的内容。假设文件的内容如下所示:1. 网页视觉设计理论之少些质感,多些版式.http://www.ynetx.com/theory/560-1.html2. 设计理论:http://www.ynetx.com/design/theory/3.Google的新设计理念Material Designhttp://www.infoq.
2016-03-23 15:13:02
1065
原创 Go时间格式化和类型互换操作
获取本地时间 // get current timestamp currentTime := time.Now().Local() //print time fmt.Println(currentTime)指定格式的日期字符类型// get current timestamp currentTime := time.Now().Local()//format T
2016-03-23 14:28:18
10169
翻译 Nginx的 UDP 负载均衡
我们很自豪地宣布,除了开源NGINX和我们的应用交付平台--NGINIX Plus,增加了一个激动人心的新能力 - UDP负载均衡。这一新功能建立在我们现有的TCP和HTTP功能,使得NGINX成为一个功能强大,易于使用,一致性的前端,为更广泛的互联网应用程序和设备提供服务。我们很高兴能扩展的负载平衡功能,让世界上最繁忙的应用程序的一大半的功耗到一组新的物联网(IOT)用户中。
2016-03-23 12:04:34
23337
原创 Go 实现lamda、匿名函数和内联函数
Go 实现lamda、匿名函数和内联函数在Go语言中,lamda、匿名函数和内联函数的实现称作字面函数(function literals)。当一个函数足够小时,你可以创建一个字面函数。下文将创建一个简单的实例来展示这个函数的实现。package mainimport("fmt")func main(){ substract := func(a, b int) int { return a
2016-03-19 19:38:31
7310
原创 Go 多态功能实现
Go 多态功能实现Go本身不具有多态的特性,不能够像Java、C++那样编写多态类、多态方法。但是,使用Go可以编写具有多态功能的类绑定的方法。为什么这么说呢?因为Go使用struct构建类,根据不同类调用不同的方法。下面将展示如何使用Go编写多态功能。package mainimport ( "fmt")type strCase struct{}type intCase struct{}
2016-03-19 19:15:39
4675
1
原创 Go计算运行的时间
函数time.Since()计算golang运行的时间是非常有用的性能衡量指标,特别是在并发基准测试中。下面将介绍如何简单地使用Go语言来计算程序运行的时间。简单地使用Golang的time.Since()函数即可。下面有一个完整例子展示这个用法。package mainimport ( "fmt" "time")func StartCac() { t1 := time.N
2016-03-18 14:42:57
25473
Machine Learning With Go
2017-10-22
Maven学习教材
2013-04-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人