-
golang内存管理
所属栏目:[大数据] 日期:2020-12-16 热度:75
最近粗略看了下golang内存初始化相关的代码,结合大牛们的一些源码分析,自己整理了一下学习总结。 几个关键数据结构 mspan 由mheap管理的页面,记录了所分配的块大小和起始地址等 mcache 与P(可看做cpu)绑定的线程级别的本地缓存 mcenter 全局空间的缓存,[详细]
-
Go数据结构之栈
所属栏目:[大数据] 日期:2020-12-16 热度:112
一、什么是栈 这是杭州地铁1号线线路图。大卫哥考考大家,地铁列车如何调头? 我也不卖关子了,列车通常是用“人字轨道”来变换车道。 列车先从A轨道开进“人字轨道”里,再从B轨道开出。从A轨道开进去的时候1号车厢是车头,从B开出来的时候4号车厢就变成车[详细]
-
golang使用odbc链接hive
所属栏目:[大数据] 日期:2020-12-16 热度:56
golang使用odbc链接hive 安装odbc yum install unixODBCyum install unixODBC-devel ## mysql driver require yum install mysql-connector-odbc ## hive driver require ## https://cwiki.apache.org/confluence/display/Hive/HiveODBC ## 官方说不提供hive[详细]
-
Go实战--golang中的JQUERY(PuerkitoBio/goquery、从html中获取链
所属栏目:[大数据] 日期:2020-12-16 热度:79
生命不止,继续 go go go !!! jQuery应该说是家喻户晓。 jQuery is a fast,small,and feature-rich JavaScript library. It makes things like HTML document traversal and manipulation,event handling,animation,and Ajax much simpler with an easy-to-u[详细]
-
Golang 基础 XML
所属栏目:[大数据] 日期:2020-12-16 热度:118
本篇只是自己学习过程中的一个记录 首先需要引入xml包 import "encoding/xml" 这里我们先定义一个用于序列化和反序列化的结构用于测试。 type TTest struct {Path string `xml:"path"`Val int `xml:"val"`Name string `xml:"name,attr"` // 属性的也可写作 x[详细]
-
Golang 基础 JSON
所属栏目:[大数据] 日期:2020-12-16 热度:197
本篇只是自己学习过程中的一个记录 首先需要引入json包 import "encoding/json" 这里我们先定义一个用于序列化和反序列化的结构用于测试。 type TTest struct {Path string `json:"path"`Val int `json:"val"`} 序列化 test := TTest{"C:abc123",22222}b[详细]
-
Golang 基础 HTTP服务器
所属栏目:[大数据] 日期:2020-12-16 热度:79
本篇只是自己学习过程中的一个记录 首先需要引入"net/http"包 import "net/http" 导入了相关包后,接下来在main函数中初始化即可,几行代码就搭建好一个http服务器 err := http.ListenAndServe(":8080",nil)if err != nil {fmt.Println("服务启动失败。")}[详细]
-
Golang 基础 HTTP请求
所属栏目:[大数据] 日期:2020-12-16 热度:95
本篇只是自己学习过程中的一个记录 首先需要引入”net/http”包 import "net/http" 最简单的Get和Post请求 GET resp,err := http.Get("http://blog.csdn.net/zyjying520/article/details/52669538")if err != nil {return}defer resp.Body.Close()// 一次性[详细]
-
Golang 文章正文抽取(readability)
所属栏目:[大数据] 日期:2020-12-16 热度:177
readability for golang Golang版本是根据readabiliity for node.js以及readability for python所改写,并加入了些自己的,比如支持gzip等。 引用的第三方包 github.com/PuerkitoBio/goquery github.com/axgle/mahonia 使用方法 package mainimport ("fmt""g[详细]
-
Golang 生成Mac OS X dylib调用问题
所属栏目:[大数据] 日期:2020-12-16 热度:111
突然想试试用go写个dylib供Objective-c调用,确发现总是报无法找到库的错误,无奈只好试试百度跟谷歌,总算是找到一个关于类似的问题的(ps:那些说改选项的就是个坑,都没说到关键点)。 不甘心后面又找到种方法了,见:http://log.zyxar.com/blog/2012/03/1[详细]
-
Golang 文件名命名规则
所属栏目:[大数据] 日期:2020-12-16 热度:57
1、平台区分 文件名_平台。 例: file_windows.go,file_unix.go 可选为:windows,unix,posix,plan9,darwin,bsd,linux,freebsd,nacl,netbsd,openbsd,solaris,dragonfly,notbsd, android,stubs 2、测试单元 文件名_test.go或者 文件名_平台_test.go。 例: p[详细]
-
Golang - 阿里大于最新sdk 2017-05-25
所属栏目:[大数据] 日期:2020-12-16 热度:91
阿里大于最新sdk 2017-05-25 本sdk基于阿里大于java最新版,版本为2017-05-25 因开发中需求短信发送,一开始没准备自己写,找了几个go版本的,发现怎么调用都会错, 后来在阿里的sdk中发现原来所有的都改变了,原sdk已经无法现使用,没办法,只好自己 封装。[详细]
-
Golang ReverseProxy 简单的反向代理用于内网穿透
所属栏目:[大数据] 日期:2020-12-16 热度:165
简单的反向代理用于内网穿透 特别注意,此工具只适合小文件类的访问测试,用来做做数据调试 前言 最近周末闲来无事,想起了做下微信公共号的开发,但微信限制只能80端口的,自己用的城中村的那种宽带,共用一个公网,没办法自己用路由做端口映射。自己的服务[详细]
-
golang cannot assign to
所属栏目:[大数据] 日期:2020-12-16 热度:182
问题: # command-line-arguments .example.go:22: cannot assign to m.V.(BasicMessage).Length 想在函数中修改interface表示的结构体的成员变量的值,编译时遇到这个编译错误,问题代码如下: package main import ( "fmt" ) type Message struct { V int[详细]
-
golang基础-tailf日志组件使用
所属栏目:[大数据] 日期:2020-12-16 热度:179
git上log日志组件 https://github.com/hpcloud/tail/blob/master/tail.go 我们写个test来测试下这个组件 package main import ( "fmt" "github.com/hpcloud/tail" "time" ) func main() { filename := "E:developkafkakafka_2.12-1.0.0configserve[详细]
-
golang基础-kafka、zookeeper搭建、go终端发送数据给kafka
所属栏目:[大数据] 日期:2020-12-16 热度:117
zookeeper搭建 kafka搭建 kafka链接zookeeper 在go终端写入kafka zookeeper搭建 1、安装JAVA-JDK,从oracle下载最新的SDK安装(我用的是1.8的) 2、安装zookeeper3.3.6,下载地址:http://apache.fayea.com/zookeeper/ 3、重命名conf/zoo_sample.cfg 为conf/zo[详细]
-
golang结构体json格式化的时间格式问题
所属栏目:[大数据] 日期:2020-12-16 热度:193
最近开发一个公司项目,发现Go语言结构体Json转换时,存在时间格式不一样问题。在网上找了很久也没有找到一个很好的方案。即结构体序列化后的格式是`1993-01-01T20:08:23.000000028+08:00`。但为了兼容公司以往的项目,希望沿用`1993-01-01 20:08:23`这[详细]
-
golang基础-beego读取配置、log日志输出
所属栏目:[大数据] 日期:2020-12-16 热度:174
beego读取配置文件 配置文件内容如下: [server] listen_ip = "0.0.0.0" listen_port = 8888 [logs] log_level= debug log_path= ./logs/logagent.log [collect] log_path= D:projectlogslogagent.log topic= nginx_log chan_size= 100 通过代码读取配置文[详细]
-
golang log模块之log4go使用介绍
所属栏目:[大数据] 日期:2020-12-16 热度:187
1. 描述 在go语言中,自身已经集成了一定log模块,开发者可以使用go语言自身的log包(import “log”)。也有不少对自身log的开源封装。对于一些简单的开发,自身的log模块就已经足够应付。但是对一些大型,复杂的开发,log需要分门别类的输出,或者通过网络进[详细]
-
重温一遍数据结构之顺序存储结构(golang版)
所属栏目:[大数据] 日期:2020-12-16 热度:70
目的 因为最近工作中碰到了一些关于数据结构的问题,发现有些生疏了,所以想重新自己再理一遍,就当是给自己的记录,之所以用golang主要也是因为对goalng比较感兴趣,写起来也比较顺手。 本意也不是想分享关于什么是数据结构,因为这种概念性的东西没有什么[详细]
-
重温一遍数据结构之单链表(golang版)
所属栏目:[大数据] 日期:2020-12-16 热度:118
说明 上一篇说的是线性表中的顺序存储结构,他的读取复杂度虽然是o(1),但是它的缺点也很明显,插入和删除需要移动很多元素,而且需要分配一块连续的内存区域 线性表之单链表 单链表在一定程度上解决了一部分上面的问题,而且也不要一大块连续的内存区域,代[详细]
-
Golang以OO的方式实现二叉查找树
所属栏目:[大数据] 日期:2020-12-16 热度:63
二叉查找树 是一种满足如下性质的二叉树: (1) 某个节点的左子树中的所有节点的值都比这个节点的值小 (2) 某个节点的右子树中的所有节点的值都比这个节点的值大 下面有Go实现的非常详尽的代码,采用了Go风格的OO进行了封装。代码中主函数的例子的参照图如下[详细]
-
Go实战--golang中使用echo和MySQL搭建api(labstack/echo、go-sql
所属栏目:[大数据] 日期:2020-12-16 热度:198
生命不止,继续 go go go!!! 前面有几篇博客跟大家分享了一个golang的框架iris: Go实战–也许最快的Go语言Web框架kataras/iris初识四(i18n、filelogger、recaptcha) Go实战–也许最快的Go语言Web框架kataras/iris初识三(Redis、leveldb、BoltDB) Go实战–也[详细]
-
golang reflection
所属栏目:[大数据] 日期:2020-12-16 热度:68
介绍 反射是通过types能够查看类型本身的结构,本文档将会介绍Go语言中反射是如何工作的. 类型和接口 因为反射是建立在类型type的基础之上的,首先我们来回顾一下Go语言中的类型types,Go是一个静态类型的语言,每个变量都有一个静态的类型(在编译的时候已经能够[详细]
-
golang使用yaml格式解析构建配置文件
所属栏目:[大数据] 日期:2020-12-16 热度:159
golang使用yaml格式解析构建配置文件 现在主流的配置文件格式有这么几种,xml、yaml、config… xml就算了,太挫了,太土, 太繁琐… config 就是mysql,apache my.cnf的那种格式,这个格式适合功能分层,不适合写同级的配置端. yaml是我最喜欢的配置格式,像a[详细]
