Gox语言发送阿里云验证码短信的实例-GX42

下面是用Gox语言(1.05版本以上)内置的阿里云发送短消息服务包(github.com/aliyun/alibaba-cloud-sdk-go/services/dysmsapi)来进行验证码短信发送的实例,是经过实际生产环境检验的实例。由于Gox语言与Go语言(Golang)的紧密关系,代码改为Go语言代码也是很容易的。 话不多少,直接看代码,代码中有详细的注释,非常好懂。 // 设置阿里云短信发送包的简称 alisms = github_aliyun_alibabacloudsdkgo_s...阅读全文

简书 2020-07-07 17:47:50 陆满庭

五年前一位“Java首席架构师”的自述

“在平台,有幸结识了一帮趣味相投资深码农,离开以后很难再有这么一个团队来成长了……想想都是幸运,成天跟一群这么优秀的人在一起,想变差都不容易。”现在负责熊猫 TV 整体基础架构工作,是一个快 9 年工龄的码农。在 2007 年毕业,和很多同行一样,也是从小公司起步,曾做过 ERP,信息安全,互联网社交平台、游戏平台等,现在工作是直播娱乐平台。写过几年的语言有 Java、C/C++、PHP、Golang,偶尔写点 Python、Lua、NodeJS 等。花在开源上的时间不多,但也开源一些个人代码,...阅读全文

简书 2020-07-07 17:47:50 Java斗帝之路

编程入门

编程入门 什么是编程 我们通过有固定格式和固定词汇的“语言”来控制他人,让他人为我们做事情。语言有很多种,包括汉语、英语、法语、韩语等,虽然他们的词汇和格式都不一样,但是可以达到同样的目的,我们可以选择任意一种语言去控制他人。 同样,我们也可以通过”语言“来控制计算机,让计算机为我们做事情,这样的语言就叫做编程语言(Programming Language)。 编程语言也有固定的格式和词汇,我们必须经过学习才会使用,才能控制计算机。 总结:编程语言是用来控制计算机的一系列指令(Instructi...阅读全文

简书 2020-07-07 17:45:24 无心文先森

K8S集群部署Fabric笔记

1,安装docker 64 位版本的 CentOS 7 CentOS 系统的内核版本高于 3.10(uname -r命令可查看系统内核版本) 安装 Docker CE 设置 Docker 的镜像仓库并从中进行安装 下载 RPM 软件包并手动进行安装(例如,在不能访问互联网的隔离系统中安装 Docker) 1.从镜像仓库安装 确保 yum 包更新到最新: sudo yum update 安装一些必要的系统工具: yum-utils 提供了 yum-config-manager 实用程序,用于设置y...阅读全文

简书 2020-07-07 17:45:23 rectinajh

粗读web框架之go gin和python django

为什么引入web框架 web应用的本质 浏览器发送一个HTTP请求; 服务器收到请求,生成一个HTML文档; 服务器把HTML文档作为HTTP响应的Body发送给浏览器; 浏览器收到HTTP响应,从HTTP Body取出HTML文档并显示; 涉及的问题 解析http请求 找到对应的处理函数 生成并发送http响应 web框架工作流程 image image.gif ​ 中间件 中间件是请求或者应用开始和结束时注入代码的机制 常见的web中间件: 鉴权、打印log、session、统计信息、处理数...阅读全文

简书 2020-07-07 17:34:42 燕小乙1875

open-falcon-alarm 代码分析

总结:alarm消费由judge产生的redis报警事件,根据优先级高低是否做合并,发往不同的报警通道 高优先级报警比如p0: judge产生报警事件-->写入redis event:p0队列 -->alarm消费-->获取发送对象并处理调用回调函数(如果有)-->根据策略不同生成不同通道的报警(im,sms,mail,phone)等-->写入redis各个通道的发送队列 /im /sms /mail /phone -->发送报警的worker取出报警发送 低优先级报警比如p4: judge产生...阅读全文

Segmentfault 2020-07-15 10:32:39 ning1875

Go 使用validator进行后端数据校验

包下载:go get github.com/go-playground/validator/v10 一、概述 在接口开发经常会遇到一个问题是后端需要写大量的繁琐代码进行数据校验,所以就想着有没有像前端校验一样写规则进行匹配校验,然后就发现了validator包,一个比较强大的校验工具包下面是一些学习总结,详细内容可以查看validator 二、操作符说明 标记 标记说明 , 多操作符分割 | 或操作 - 跳过字段验证 三、常用标记说明 标记 标记说明 例 required 必填 Field或St...阅读全文

golang项目 配置Gitlab CI

pipeline流程 使用golangci-lint 检查代码 编译代码 部署二进制 before_script 设置环境变量 主要 GOPROXY设置 before_script: - echo "before_script" - git version - go env -w GOPRIVATE=code.haiziwang.com - mkdir -p .go - go version - go env -w GO111MODULE=on - go env -w GOPROXY="http...阅读全文

Segmentfault 2020-07-14 15:32:33 lidashuang

Go 语言操作 MySQL 之 SQLX 包

友情提示:此篇文章大约需要阅读 14分钟5秒,不足之处请多指教,感谢你的阅读。 订阅本站 SQLX 库 sqlx是 Go 的软件包,它在出色的内置database/sql软件包的基础上提供了一组扩展。 该库兼容sql原生包,同时又提供了更为强大的、优雅的查询、插入函数。 该库提供四个处理类型,分别是: sqlx.DB – 类似原生的 sql.DB; sqlx.Tx – 类似原生的 sql.Tx; sqlx.Stmt – 类似原生的 sql.Stmt, 准备 SQL 语句操作; sqlx.Name...阅读全文

Segmentfault 2020-07-14 09:32:32 Meng小羽

golang之类型解析

type T struct {} func (*T) foo(){ fmt.Println("foo,") } func (T) bar() { } type S struct { *T } s := S{} _ = s.T.foo s.T.foo() var t *T t.foo() _ = s.bar s.bar将被展开为(s.T).bar,而 s.T 是个空指针,解引用会 panic。而s.foo没有panic是因为T的方法集有foo(),而没有bar() 方法集规则如下: Values ...阅读全文

简书 2020-07-07 09:33:00 stevenyeahnet

golang面试题三

var k int = 1 var s = []int{1,2} 多重赋值分为两个步骤,有先后顺序, 算等号左边的索引表达式和取址表达式,接着计算等号右边的表达式;赋值运算等同于 k, s[1] = 0, 3。 k, s[k] = 0, 3 fmt.Println(s[0] + s[1]) 输出是4 defer func() { //这是捕获panic(2)的地方 fmt.Print(recover()) }() defer func() { //recover只在第一层defer函数中对外层的...阅读全文

简书 2020-07-07 09:32:59 stevenyeahnet

golang入门到放弃:3.数组、切片、map

数组 func main(){ //数组定义 var arr =[3]int{} fmt.Println(arr) //[0 0 0] //指定数组元素 var arr1=[3]int{1,2,3} fmt.Println(arr1) //[1 2 3] //自动推导数组长度 var arr2=[...]int{1,2,3} fmt.Println(arr2) //[1 2 3] } 切片 //不写元素个数叫切片 必须写元素个数的叫数组 c := []int{1, 2, 3} fmt.Print...阅读全文

简书 2020-07-07 09:32:59 不留余白

betterbridge 脚本构思

BetterBridge 脚本构思 最近在构思一个可以帮助开发者集成 iOS, Android 插件的项目. 其中自动化集成部分, 一直在思考用什么比较好. Python 好像是个不错的选择. 我做过的其它项目有使用到 Python , 实际中, 很多开发者没有 Python , 也分不清 Python 2.7 , Python 3.x 。 Golang 可以不分平台, 打出来的包, 也不需要依赖环境. 缺点也有,打出来的包大, Golang 主要是做网络服务, 用来做本地命令, 不确定合不合适...阅读全文

简书 2020-07-07 09:32:48 火锅Hugo

golang三元表达式

golang并没有像C语言一样提供三元表达式。三元表达式的好处是可以用一行代码解决原本需要多行代码才能完成的功能,让冗长的代码瞬间变得简洁。不过对于新手来说,建议还是少用三元表达式。在这里,我用golang通过函数的方式实现了三元表达式。packagemagic/*实现三元表达式的功能 */func If(condition bool, trueVal, falseValinterface{})interface{} {ifcondition {returntrueVal}else{return...阅读全文

简书 2020-07-07 09:32:46 keluda

Go语言基础之变量、常量、类型别名

一 简介 1 定义 Go 是一种开源的程序设计语言,它意在使得人们能够方便地构建简单,可靠,高效的软件。 2 产生原因 1 计算机硬件技术更新频繁,性能提高很快,目前主流编程语言发展落后,不能合理利用多核CPU优势来提高系统性能2 软件设计复杂度高,维护成本大3 C/C++编译速度过慢,需要解决提高速度 3 历史 Go是从2007年末由 Robert griesemer,rob pike,ken thompson 主持开发,后来加入了Ian Lance Taylor,Russ Cox,并最终于2...阅读全文

51CTO博客 2020-07-06 22:56:36 长跑者1号

从零创建发布属于自己的composer包

原文地址:www.wjcms.net/archives/%E… 今天给大家讲解一下如何从零创建发布属于自己的composer包。 composer包用起来确实非常方便,深受php开发者的青睐,但是如何创建自己的包呢?我们一起来看一下。 准备工作 注册并登录github账户,github.com/ 安装好git软件:git-scm.com/download/wi… 注册登录packagist账户:packagist.org/,并与github进行… 创建线上仓库 打开github,点击右上角加号,...阅读全文

掘金 2020年07月06日 神兵小将2016

Go语言基础(一)

一 简介 1 定义 Go 是一种开源的程序设计语言,它意在使得人们能够方便地构建简单,可靠,高效的软件。 2 产生原因 1 计算机硬件技术更新频繁,性能提高很快,目前主流编程语言发展落后,不能合理利用多核CPU优势来提高系统性能2 软件设计复杂度高,维护成本大3 C/C++编译速度过慢,需要解决提高速度 3 历史 Go是从2007年末由 Robert griesemer,rob pike,ken thompson 主持开发,后来加入了Ian Lance Taylor,Russ Cox,并最终于2...阅读全文

51CTO博客 2020-07-06 22:56:42 长跑者1号