-
理解Golang包导入
所属栏目:[大数据] 日期:2020-12-16 热度:115
http://tonybai.com/2015/03/09/understanding-import-packages/ 理解Golang包导入 三月 9,2015 6 条评论 Golang使用包(package)这种语法元素来组织源码,所有语法可见性均定义在package这个级别,与Java 、python等语言相比,这算不上什么创新,但与C传统[详细]
-
golang中的init函数和main函数
所属栏目:[大数据] 日期:2020-12-16 热度:124
main函数 main 函数只能在package main中。 init函数 init 函数可在package main中,可在其他package中,可在同一个package中出现多次。 golang里面有两个保留的函数:init函数(能够应用于所有的package)和main函数(只能应用于package main)。这两个函数[详细]
-
Golang高性能json包:easyjson
所属栏目:[大数据] 日期:2020-12-16 热度:93
简介 easyjson是什么呢? 根据官网介绍,easyjson是提供高效快速且易用的结构体structs--json转换包。easyjson并没有使用反射方式实现,所以性能比其他的json包该4-5倍,比golang 自带的json包快2-3倍。 easyjson目标是维持生成去代码简单,以致于它可以轻松[详细]
-
Prometheus 初体验(1) - 安装
所属栏目:[大数据] 日期:2020-12-16 热度:145
Promethus 的监控能力好像特别不错,自己来搭建一个尝试监控下 mysql 的运行情况。 1、下载安装 $ wget https://github.com/prometheus/prometheus/releases/download/v1.7.1/prometheus-1.7.1.linux-amd64.tar.gz$ mkdir app$ tar zxvf prometheus-1.7.1.da[详细]
-
LiteIDE无法自动补全提示代码 更新Golang新版本后
所属栏目:[大数据] 日期:2020-12-16 热度:69
原文链接 gocode下载地址 环境什么的都不说了,安装好Golang和LiteIDE发现代码没有自动补全。 从gocode下载地址下载 gocode-master ,并解压 在 Windows 命令行运行如下命令: C:gocode-master go build gocode.go autocompletecontext.go autocompletefile[详细]
-
Golang Web 框架 Beego 快速入门 - 01
所属栏目:[大数据] 日期:2020-12-16 热度:79
https://github.com/tencupofkaiwater/beedoc/tree/master/zh-CN/quickstart 快速入门 安装 beego 包含一些示例应用程序以帮您学习并使用 beego 应用框架。 您需要安装 Go 1.1+ 以确保所有功能的正常使用。 你需要安装或者升级 Beego 和 Bee 的开发工具: g o[详细]
-
Golang Web 框架 Beego 创建项目 - 02
所属栏目:[大数据] 日期:2020-12-16 热度:176
创建项目 beego 的项目基本都是通过 bee 命令来创建的,所以在创建项目之前确保你已经安装了 bee 工具和 beego。如果你还没有安装,那么请查阅 beego 的安装 和 bee 工具的安装。 现在一切就绪我们就可以开始创建项目了,打开终端,进入 $GOPATH/src 所在的[详细]
-
Golang Web 框架 Beego 路由设置 - 03
所属栏目:[大数据] 日期:2020-12-16 热度:86
项目路由设置 前面我们已经创建了 beego 项目,而且我们也看到它已经运行起来了,那么是如何运行起来的呢?让我们从入口文件先分析起来吧: package main import ( _ “quickstart/routers” “github.com/astaxie/beego” ) func main() { beego.Run() } 我[详细]
-
Golang Web 框架 Beego controller 运行机制 - 04
所属栏目:[大数据] 日期:2020-12-16 热度:177
controller 逻辑 前面我们了解了如何把用户的请求分发到控制器,这小节我们就介绍大家如何来写控制器,首先我们还是从源码分析入手: package controllers import ( “github.com/astaxie/beego” ) type MainController struct { beego.Controller } func ([详细]
-
Golang Web 框架 Beego model 逻辑 - 05
所属栏目:[大数据] 日期:2020-12-16 热度:187
model 分析 我们知道 Web 应用中我们用的最多的就是数据库操作,而 model 层一般用来做这些操作,我们的 bee new 例子不存在 Model 的演示,但是 bee api 应用中存在 model 的应用。说的简单一点,如果您的应用足够简单,那么 Controller 可以处理一切的逻辑[详细]
-
Golang Web 框架 Beego view 渲染 - 06
所属栏目:[大数据] 日期:2020-12-16 热度:111
View 编写 在前面编写 Controller 的时候,我们在 Get 里面写过这样的语句 this.TplName = “index.tpl”,设置显示的模板文件,默认支持 tpl 和 html 的后缀名,如果想设置其他后缀你可以调用 beego.AddTemplateExt 接口设置,那么模板如何来显示相应的数据[详细]
-
Golang Web 框架 Beego 静态文件处理 - 07
所属栏目:[大数据] 日期:2020-12-16 热度:143
静态文件处理 前面我们介绍了如何输出静态页面,但是我们的网页往往包含了很多的静态文件,包括图片、JS、CSS 等,刚才创建的应用里面就创建了如下目录: ├── static │ ├── css │ ├── img │ └── js beego 默认注册了 static 目录为静态处理的[详细]
-
剖析使Go语言高效的5个特性(2/5): 函数调用不是免费的
所属栏目:[大数据] 日期:2020-12-16 热度:187
翻译原文链接 转帖/转载请注明出处 英文原文链接 发表于2014/06/07 函数调用不是免费的 一个函数调用有三个步骤。创建一个新的堆栈框(stack frame)并把调用者的详细信息记录下来。把任何会被被调用函数用到的寄存器内容保存到堆栈。计算被调用函数的地址[详细]
-
[golang]函数用例
所属栏目:[大数据] 日期:2020-12-16 热度:74
基本用法 golang函数是不支持嵌套(但是可以使用匿名函数实现嵌套)、默认参数、重载,但支持: - 不定长度的变参 - 多返回值(类似python的返回元组?) - 显式命名返回值参数 - 匿名函数 - 函数闭包 以下是一些基本用法示例: // 一般用法,无返回值 func funcName1[详细]
-
[golang]array与slice
所属栏目:[大数据] 日期:2020-12-16 热度:143
array类型 1)基础特性 array为固定长度的数组,其内存分配为连续的,使用前需确定长度; 数组为值类型,赋值操作的新变量是原数组的一份完整拷贝; 作为函数的传递参数,实际也是数组的一份拷贝,效率也就比传递指针低; 数组长度也是Type一部分,如[4]int和[2]int类[详细]
-
[golang]map/set类型
所属栏目:[大数据] 日期:2020-12-16 热度:50
map类型 1. 基础特性 map是一种无序的键值对的集合; 所以可以类似数组/slice一样进行迭代 map的值可以使内建类型,也可以是struct类型 内部使用hash表实现,map的hash表包含了一个collection of buckets(桶集合) 2. 声明与初始化 package main import ( "fmt[详细]
-
新手学xingo golang服务器之-修改xingo 支持字符协议(二)
所属栏目:[大数据] 日期:2020-12-16 热度:76
新手学xingo golang服务器之-修改xingo 支持字符协议(二) 项目地址: https://github.com/atgczcl/xingo-string-api 上一节我们只是修改了,api_router部分支持字符串,由于上行,下行需要传输和解析msgId, string类型的MsgId有这不确定的长度,因此,如果[详细]
-
新手学xingo golang服务器之-golang和unity3d的Protobuf生成(三
所属栏目:[大数据] 日期:2020-12-16 热度:80
xingo协议用的是Protobuf,如果是Unity3d客户端也要生成Protobuf,因此在这里我提取出来进行一下说明: 从网上找了一个unity3d的protobuf生成工具,我把它fork了一下: https://github.com/atgczcl/UnityGolang_Protobuf3_gen 或者 https://github.com/Mikejin[详细]
-
Goroutine是如何工作的?
所属栏目:[大数据] 日期:2020-12-16 热度:148
翻译原文链接 转帖/转载请注明出处 英文原文链接 发表于2014/02/24 Go语言 如果你刚刚接触Go语言,或者说你并不理解“并发不等于并行”这句话的含义,那么Rob Pike的讲座值得一看(在youtube上)。这个视频有30分钟长,我保证花30分钟看这段视频是非常值得[详细]
-
Golang Protobuf
所属栏目:[大数据] 日期:2020-12-16 热度:189
Golang Protobuf 转自:http://studygolang.com/articles/4872 在 Golang 中使用 Protobuf 安装 goprotobuf 1. 从 https://github.com/google/protobuf/releases 获取 Protobuf 编译器 protoc (可下载到 Windows 下的二进制版本 wgethttps://github.com/goo[详细]
-
Golang官方依赖管理工具:dep
所属栏目:[大数据] 日期:2020-12-16 热度:88
在这里声明一下,百度或者google看到的 godep 不是我这篇博文说的 dep ,那它们是什么关系呢?按照Peter Bourgon博文来说,它们的作者都有相同的人,但是一个是dep是官方版本,godep是第三方工具。 我今天介绍的是dep,之前也有介绍过glide,有兴趣的可以到G[详细]
-
Go语言实战读书笔记
所属栏目:[大数据] 日期:2020-12-16 热度:114
Go语言实战读书笔记 第二章 通道(channel)、映射(map)和切片(slice)是引用类型。引用类型的对象需要使用make函数进行构造。 在Go程序中,如果函数main()返回,整个程序就终止了。这时,Go会关闭全部goroutine。 使用for range迭代切片时,每次迭代前会[详细]
-
【golang】aws s3 go sdk
所属栏目:[大数据] 日期:2020-12-16 热度:157
aws s3 go sdk 使用 引入包 "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/service/s3" 创建 session func newSession () (*session.Session , error[详细]
-
[golang]pprof性能分析工具
所属栏目:[大数据] 日期:2020-12-16 热度:181
1. 关于pprof pprof是golang程序一个性能分析的工具,可以查看堆栈、cpu信息等。 2. 源码示例 package main import ( "flag" "log" "net/http" _ "net/http/pprof" "sync" "time" ) func Counter(wg *sync.WaitGroup) { time.Sleep(time.Second) var counter[详细]
-
【golang】golang redis 的使用
所属栏目:[大数据] 日期:2020-12-16 热度:196
前言 Redis 是一个开源的、使用C语言编写的、基于内存也可持久化的 Key-Value 数据库。 Redis 优势 性能高 – Redis 读速度 110000 次/s,写速度 81000次/s 。 支持的数据类型多 – Redis支持 Strings,Lists,Hashes,Sets 及 Ordered Sets 数据类型。 原子 –[详细]
