随笔分类 - GO语言开发
摘要:安装必要工具 首先安装以下工具 然后切换到解压后的liteide的目录 下面开始安装 "官网" 提供的安装步骤安装: 当执行到 的时候,就产生类似下面这的报错: 错误信息就是不能加载这个包,那怎么办,我们手动把这个安装脚本要下载的包给下载下来, 安装无误后,就把build_linux.sh 里面 这
阅读全文
摘要:如何等待一组goroutine结束 1. 使用不带缓冲区的channel实现。 原理: 每个goroutine都往一个channel里写入一个值,然后我们去遍历这个管道的数值,由于不带缓冲区,那么必须等到写入端写入一个值后,for循环才能循环下去。这样等循环完成后,那么goroutine也都执行完成
阅读全文
摘要:单元测试 Go本身提供了一套轻量级的测试框架。符合规则的测试代码会在运行测试时被自动识别并执行。单元测试源文件的命名规则如下: 1. 必须是以_test.go结尾的文件,比如manager_test.go Go的单元测试函数分为两类:功能测试函数和性能测试函数,分别以Test和Benchmark为函
阅读全文
摘要:what is cookie? cookie是存储在客户端的,用于标识客户身份的! what is session session 是存储在服务端,也是用于客户身份标识,用于跟踪用户会话。 BeeGo session保存方式 Beego内置了session模块,目前session模块支持的后端引擎包
阅读全文
摘要:gorm 昨天我的ldap账户改了以后,openfalcon(v2.1) dashboard竟然无法登陆了!显然,没有把我的密码同步到本地数据库里面,怎么办?只能改openfalcon用户认证的源码了,把ldap密码同步到数据库里面,在这里改动的当中,发现openfalcon使用的gorm来操作数据
阅读全文
摘要:Controller Controller等同于Django里的view,处理逻辑都是在Controller里面完成的,下面就写一个最简单的Controller。 我们在写自己的controller的时候,一定要继承beego.Controller,也一定要记得导入 开始动手 1. 我们先在rout
阅读全文
摘要:beeGo 的参数配置 beeGo默认会解析当前应用下的conf/app.conf文件 默认的配置如下: runmode是可以这是配置当前生效的是哪块的配置生效,我们可以把配置弄成三份,比如dev,prod,test,在什么环境那么runmode就配置成什么,如下所示: runmode 配置为dev
阅读全文
摘要:简介 1. BeeGo是一个快速开发Go而应用的HTTP框架,他可以用来快速开发API,web以及后端服务等各种应用,是一个restful 的框架,主要涉及灵感来源于tornado,sinatr和flask这三个框架,但是结合了Go本身一些的特性(interface,struct嵌入等)而设计的一个
阅读全文
摘要:preface 之前我使用python写了cmdb采集的脚本,打包成exe的二进制文件后放在windows上执行,也达到了预期的效果。 但是最近部门要上open falcon监控体系,每个服务器都要安装一个open falcon的agent的,那么问题来了:我们可以使用open falcon来采集服
阅读全文
摘要:http请求原理 http请求原理我就不多说了,网上一搜就能搜索到,下面我注意是记录下http模块的使用方法 http 模块 HTTP server hello world 我们使用HandleFunc来把url与处理函数绑定在一块就可以处理http请求了。 HTTP Client 我们使用http
阅读全文
摘要:mysql模块下载 mysql模块我们从github上下载,地址为:www.github.com/go sql driver/mysql struct字段名一样 我们先创建一个表来做测试,sql语句如下 我们如果要操作数据库数据,首先要定义一个结构体,结构体的变量名字必须和表字段一样。 type P
阅读全文
摘要:主要涉及的模块 1. os 2. bufio 3. ioutil 终端读取 终端读取我们可以使用os模块,分别是: 1. os.Stdin 标准输入 2. os.Stdout 标准输出 3. os.Stderr 标准错误输出 终端读例子: fmt不带缓冲区 的读。 读取的话可以使用最简单的fmt模块
阅读全文
摘要:include 1. 冒泡排序 2. 插入排序 3. 快速排序 4. 选择排序 这4种算法的内涵不再做解释了 "github地址" 冒泡排序算法 快速排序 选择排序 怎么调用这些函数 那么我们就写一个main函数来调用吧 如果对算法有异议,可以联系我 18500776523@sina.cn。
阅读全文
摘要:include 1. 指针 2. 递增递减语句 3. 判断语句if 4. 循环语句for 5. switch 语句 6. 跳转语句 goto,break,continue 指针 go虽然保留了指针,但是与其他的编程语言不同的是,在Go当中不支持指针运算以及“ ” 运算符,而直接采用“.” 选择符来操
阅读全文
摘要:函数 1. go函数不支持嵌套、重载和默认参数 2. 但支持一下特性: 无需要申明原型、不定长度变参、多返回值、命名返回值参数和匿名函数、闭包 3. 定义函数使用关键字func,且左大括号不能另起一行 4. 函数也可以作为一种类型使用 如何定义函数 func 函数名(参数类型 参数,参数类型 参数)
阅读全文
摘要:include 1. 常量的定义 2. 常量的初始化规则与枚举 3. 在定义常量组的时候,如果不提供初始值,则表示使用上行的表达式 4. iota 5. 运算符(一元运算符,二元运算符) 常量的定义 常量的值在编译的时候就已经确定了 常量的定义格式与变量基本相同 等号右侧必须是常量或者常量表达式 常
阅读全文
摘要:include 1. 数据基本类型 2. 单个变量的声明与赋值 3. 多个变量声明与赋值 4. 变量的类型转换 5. 小练习: 数据基本类型 1. bool值 1.1. 长度为1 1.2. 取值范围:true,false 1.3. 注意事项:不可以用数字代表true或false 2. 整型 int/
阅读全文
摘要:include 1. 内置关键字 2. 注释方法 3. 代码结构(常量,变量,接口,函数的定义) 4. 导入包以及包别名 5. 可见性规则 6. 小练习 内置关键字(25个均为小写) 1. break 2. case 3. chan 4. const 5. continue 6. default 7
阅读全文
摘要:什么是go语言 go是一门并发支持,垃圾回收的编译型 系统编程语言,旨在创造一门具有静态编译语言的高性能和动态语言的高效开发之间拥有一个良好平衡点 的一门编程语言。 go有什么优点? 1. 自动垃圾回收机制,和python类似,开发者不需要关心内存垃圾是怎么回收的,由系统自动判断在合适的时候(比如C
阅读全文
摘要:其他编程语言并发编程的效果 并发编程可以让开发者实现并行的算法以及编写充分利用多核处理器和多核性能的程序。在当前大部分主流的编程语言里,如C,C++,java等,编写维护和调试并发程序相比单线程程序而言要困难的多。而且也不可能总是为了使用多线程而将一个过程切分成更小的粒度来处理。whatever,由
阅读全文