Go语言中文网 为您找到相关结果 31

PyCharm Golang开发环境搭建(最方便快捷的GO语言开发环境)

IntelliJ太牛了。为了配置Go语言开发环境,折腾了半天,下IDE(Sublime Text,IntelliJ Idea),然后装Go插件。装Go插件还要下载插件项目源码,编译等等,Sublime还要输入python脚本,粘进去通不过,头疼。 突然悟出一个道理,如果你觉得当前手上的事情变得非常痛苦的时候,不是事情本身的问题,是你没找到好的解决方法的问题,或者说,“不是事情太痛苦,是你太笨了”。 在不停的装插件,尝试过程中,突然发现,PyCharm跟Idea一样,也是支持Go插件的,立马悟到,PyCharm可以开发GO,要Idea干毛。再一想,PyCharm和Idea都是IntelliJ的产品,支持应该不会差,于是果断放弃Idea。 在PyCharm(Idea一样)装GO插件,相当容易。 ...阅读全文

博文 2016-05-11 11:00:02 NerdWill

免费自学Cocos2d-js2016原创视频教程(17集)

代码下载地址:http://www.h5edu.cn/index.php?c=index&a=step&lessonid=53 视频下载地址:http://pan.baidu.com/s/1eQQo8AA 密码: 请加qq群:461039382 第1章 添加图片和文字 这一章主要讲解Cocos2d-js添加图片精灵和文字,设置它们的坐标,并且改变字体的颜色 第2章 定时调度器和动作行为 这一章主要讲解动作: 普通动作:Move, Rotate, Scale, Fade, Tint, etc. 组合动作:Sequence, Spawn, Repeat, Reverse 变速动作:Exp, Sin, Cubic, Elastic, etc. 其他动作:CallFunc...阅读全文

运维工具SmartPing

# SmartPing # SmartPing为一个各机器(点)间间互PING检测工具,支持互PING,单向PING,绘制拓扑及报警功能。 ## 功能 ## - 单向PING,反向Ping绘图 - 互PING间机器的状态拓扑 - 自定义延迟、丢包阈值报警 ## 设计思路 ## 本系统设计为无中心化原则,所有的数据均存储自身点中,默认每个Ping目标点的数据循环保留1个月时间,由自身点的数据绘制 **出PING包** 的状态,由各其他点的数据绘制 **进PING包** 的状态,从任意一点查询数据均会通过Ajax请求关联点的API接口获取其他点数据组装全部数据,绘制 出Ping曲线图,进Ping曲线图,网络互Ping拓扑图。并可以设置阈值进行报警,方便对网络质量...阅读全文

fswatch 根据文件变化触发相应指令,(参考了autogo, bee)的相关资料

[https://github.com/shxsun/fswatch](https://github.com/shxsun/fswatch) autogo我不太习惯,因为它还需要配置文件,我是希望什么都不用我管才好。后台开始用bee。 其实这个东西跟astaxie写的bee很像,可以自动检测代码的变化,然后运行`go test`。 为什么要再写一个呢? 主要原因还是bee没法自定义运行命令。 比如我想让代码变化是运行 go test -v。就只能改代码了。 我想做的呢,就是一个通用的东西。不管是go还是c++, 甚至php都能搞定。 因为系统的事件还是蛮多的。 需要进行事件的过滤,于是我就想到了.gitignore文件(这个git用的,所以学golang的对它应该不陌生...阅读全文

代码质量检测工具GoReporter

Golang 开发工具,提供代码质量检测/Golang 代码静态检测器/Golang 项目单元测试,根据自定义模版自动生成 Golang 代码质量检测报告。 ![image](https://static.oschina.net/uploads/space/2017/0406/113414_e0Od_2903254.png) Summary ![image](https://static.oschina.net/uploads/space/2017/0406/113431_ipJw_2903254.jpeg) UnitTest ![image](https://static.oschina.net/uploads/space/2017/0406/113446_U2OK_2903...阅读全文

Android 上的代码阅读器 CoderBrowserHD 修改支持 go 语言代码

我在Android上的代码阅读器用的是 https://github.com/zerob13/CoderBrowserHD 改造的版本,改造后的版本我放在 https://github.com/ghj1976/CoderBrowserHD 了。 主要的改造如下: 升级项目成 Android Studio 的项目 git 下载 https://github.com/zerob13/CoderBrowserHD 后的项目改造步骤如下: 1、Clone 到自己本地 2、Import Project (改成 Android Gradle projects ) 选择我们下载到本地的目录导入即可。 整个过程的选择,完全选择默认项。 修改导入过程中的error SDK 版本问题 第一个是 SDK 的 版本...阅读全文

博文 2016-03-01 03:00:01 ghj1976

Go 语言代码质量检测工具Revive

revive 是一个 Go 语言的代码质量检测工具(Linter for Go),具有快速、可配置、可扩展、灵活和美观这些特性,可作为 golint 的替代方案。 revive 为自定义规则的开发提供了一个框架,你也可以定义一个严格的预设来增强开发和代码审查流程。 revive 与 golint 的不同之处 可以使用配置文件来启用或禁用规则 使用 TOML 文件配置 linting 规则 运行相同的规则,比 golint 快两倍 与 golint 相比,revive 提供了更多规则 每个人都可以使用自定义规则或格式化器轻松对它进行扩展 …… ![image](https://oscimg.oschina.net/oscnet/a61b1a5d0f6b58ba0abd2686...阅读全文

开源项目 2018-06-14 18:30:00 网友

Golang通过反射检测变量类型

What you are wasting today is tomorrow for those who died yesterday; what you hate now is the future you can not go back. 你所浪费的今天是昨天死去的人奢望的明天; 你所厌恶的现在是未来的你回不去的曾经。 简单的记录一下吧。 package main import ( "reflect" "fmt" "strings" ) type Foo struct { A int `tag1:"Tag1" tag2:"Second Tag"` B string } func main(){ f := Foo{A: 10, B: "Salutations"} fPtr := &f m ...阅读全文

博文 2018-01-23 10:33:06 90design

MongoShake——基于MongoDB的跨数据中心的数据复制平台

摘要:MongoShake是基于MongoDB的通用型平台服务,作为数据连通的桥梁,打通各个闭环节点的通道。通过MongoShake的订阅消费,可以灵活对接以适应不同场景,例如日志订阅、数据中心同步、监控审计等。其中,集群数据同步作为核心应用场景,能够灵活实现灾备和多活的业务场景。背景在当前的数据库系统生态中,大部分系统都支持多个节点实例间的数据同步机制,如Mysql Master/Slave主从同步,Redis AOF主从同步等,MongoDB更是支持3节点及以上的副本集同步,上述机制很好的支撑了一个逻辑单元的数据冗余高可用。跨逻辑单元,甚至跨单元、跨数据中心的数据同步,在业务层有时候就显得很重要,它使得同城多机房的负载均衡,多机房的互备,甚至是异地多数据中心容灾和多活成为可能。由于目前M...阅读全文

博文 2018-06-26 17:34:53 猫耳呀

GolangGoreporte——代码质量检测

我们知道一个项目中除设计之外,代码质量是一个项目成功与健壮的基础,再好的设计但是实现代码混乱,风格混杂,明显性错误百出,我们仍然会认为这是一个失败的项目;相反,即使一个项目在架构和设计上无新奇之处,但代码实现质量高,例如风格统一,测试完善,接口明确,无冗余代码,实现中无明显错误或不安全用法,圈复杂度低等等,无论是对于项目的实现上还是后期代码维护都是有益的。所以,一个项目的代码质量是一个项目成功的关键基础。 C/C++,Java等等语言都有自己的代码质量检测工具,例如Cppcheck,PC-Lint,Splint等等,Golang语言出现时间不实很长,这方面的生态还不是非常完善。goreporter,一个golang代码检测的工具,它合并了多种检测工具,相当于很多工具的集合,使用起来非常容易...阅读全文

go语言学习---map

go的map和java的map在操作上区别不大。 不过有些内容还是不一样的。 1. 检测某个键是否存在: elem, ok = m[key] 如果 key 在 m 中,`ok` 为 true 。否则, ok 为 `false`,并且 elem 是 map 的元素类型的零值。 2. 如果某个键不存在,直接用这个键读value的话,返回的是 map 的元素类型的零值 例如: m := make(map[string]int) m["Answer"] = 42 fmt.Println("The value:", m["Answer"]) delete(m, "Answer") fmt.Println("The value:", m["Answer"]) 运行结果为: The value: 42 T...阅读全文

博文 2015-06-17 23:07:44 jwkfreedom

你再也不用设置 GOROOT 了

为什么不再需要设置 GOROOT 呢?推荐读两篇英文文章,我意译了下,将它们放在了一篇里。 第一篇是关于 Go 1.10 之前,怎么设置 GOROOT,发表与 2013 年。第二篇是从 Go 1.10 开始,如何处理 GOROOT,时间是 2018 年,Go 源码提交日志。这篇非常短小。 读完后,你会发现,大多数情况下,我们都不用手动设置 GOROOT 了。 第一篇 作者:Dave Cheney | 地址:you-dont-need-to-set-goroot-really 一篇小短文,解释了为什么在编译和使用 Go 时,不需要设置 GOROOT。 概要性介绍 一般来说,在 Go 1.0 之后,编译和使用 GO 不再需要设置 GOROOT。事实上,如果你的电脑上存在多个版本的 Go 语言环境...阅读全文

博文 2019-11-26 16:04:22 波罗学

网络质量监控神器SmartPingV0.3.0发布

SmartPingSmartPing为一个各机器(点)间间互PING检测工具,支持互PING,单向PING,绘制拓扑及报警功能。功能单向PING,反向Ping绘图互PING间机器的状态拓扑自定义延迟、丢包阈值报警设计思路本系统设计为无中心化原则,所有的数据均存储自身点中,默认每个Ping目标点的数据循环保留1个月时间,由自身点的数据绘制 出PING包 的状态,由各其他点的数据绘制 进PING包 的状态,从任意一点查询数据均会通过Ajax请求关联点的API接口获取其他点数据组装全部数据,绘制 出Ping曲线图,进Ping曲线图,网络互Ping拓扑图。并可以设置阈值进行报警,方便对网络质量的监控。程序架构数据结构项目截图​其他资料官网: http://smartping.org文档: https...阅读全文

博文 2017-09-16 15:36:46 toryzen

简单易用的命令行应用,工具库

Golang下的简单易用的命令行应用,工具库。包含运行命令,颜色风格,数据展示,进度显示,交互方法等 ## 截图展示 ![app-help](https://raw.githubusercontent.com/gookit/gcli/master/_examples/images/app-help.jpg) ## 功能特色 - 使用简单方便,轻量级,无额外依赖 - 支持添加多个命令,并且支持给命令添加别名 - 输入的命令错误时,将会提示相似命令(包含别名提示) - 快速方便的添加选项绑定 `--long`,支持添加短选项 `-s` - 支持绑定参数到指定名称, 支持必须`required`,可选,数组`isArray` 三种设定 - 运行命令时将会自...阅读全文

golang 类型检测方法

package main import ( "fmt" "reflect" ) func main() { fmt.Println(typeChck("xiaochuan", "string")) fmt.Println(typeChck(123, "int")) fmt.Println(typeChck(12.3, "int")) } //类型检测 要检测的变量 期望变量类型 func typeChck(params interface{}, t string) bool { //数据初始化 var ( return_val bool = false ) v := reflect.ValueOf(params) //获取传递参数类型 v_t := v.Type() //类型名称对比 if ...阅读全文

博文 2016-11-25 12:00:06 liangguangchuan

爬虫自动转码,获取城市列表:城市名称+URL

//下载插件工具 go get -v github.com/gpmgo/gopm //自动导入包插件 gopm get -g -v golang.org/x/tools/cmd/goimports //转码插件 gopm get -g -v golang.org/x/text //自动检测网页编码 gopm get -g -v golang.org/x/net/html package main import ( "net/http" "io/ioutil" "fmt" "golang.org/x/text/transform" "io" "golang.org/x/text/encoding" "golang.org/x/net/html/charset" "bufio" "regexp"...阅读全文

博文 2018-08-24 17:35:08 次序

有一个map,只对其进行新增,更新操作,现在写一个定时任务,定时检测map中的key是否被更新,若没被更新将其删掉,怎么检测是否被更新????

有一个map,只对其进行新增,更新操作,现在写一个定时任务,定时检测map中的key是否被更新,若没被更新将其删掉,怎么检测是否被更新???...阅读全文

Golang编译器自动检测类型是否实现接口

package main import "io" type myWriter struct { } func main() { // 检查 *myWriter 类型是否实现了 io.Writer 接口 var _ io.Writer = (*myWriter)(nil) // 检查 myWriter 类型是否实现了 io.Writer 接口 var _ io.Writer = myWriter{} } 注释掉为 myWriter 定义的 Write 函数后,运行程序,报错信息:*myWriter/myWriter 未实现 io.Writer 接口,也就是未实现 Write 方法 解除注释后,运行程序不报错。 实际上,上述赋值语句会发生隐式地类型转换,在转换的过程中,编译器会检测等号右边的类型...阅读全文

博文 2019-05-05 21:34:57 一只努力的微服务

手绘raft算法

在现实的分布式系统中,不能可能保证集群中的每一台机器都是100%可用可靠的,集群中的任何机器都可能发生宕机、网络连接等问题导致集群中的某个节点不可用,这样,那个节点的数据就有可能和集群不一致,所以需要有一种机制,来保证在大多数机器都存在的情况下向外提供可靠的数据服务。这里的大多数节点指的是集群半数以上的节点。 raft算法就是一种在分布式系统中解决集群中多节点之间数据一致性的算法。Golang生态圈中大名鼎鼎的etcd就是使用的raft算法来保持数据一致性的,与raft类似的一致性算法还有Paxos算法、Zab协议等。 其实,raft算法维持数据一致性的核心思想很简单,就是:“少数服从多数”。 leader选举 保证数据一致性,最好的方式就是只有唯一的一个节点,唯一的这个节点读,唯一的这个节...阅读全文

heartbleeder 自动检测 OpenSSL 心脏出血漏洞 (附修复指南)

heartbleeder 可以探测你的服务器是否存在 OpenSSL CVE-2014-0160 漏洞 (心脏出血漏洞)。 什么是心脏出血漏洞? CVE-2014-0160,心脏出血漏洞,是一个非常严重的 OpenSSL 漏洞。这个漏洞使得攻击者可以从存在漏洞的服务器上读取64KB大小的内存信息。这些信息中可能包含非常敏感的信息,包括用户请求、密码甚至证书的私钥。 据称,已经有攻击者在某宝上尝试使用漏洞读取数据,在读取200次后,获取了40多个用户名和7个密码。 如何使用 heartbleeder 检测心脏出血漏洞? 安装 可以在gobuild.io下载编译好的二进制文件的压缩包。包括Windows、Linux、MacOSX。 由于服务器操作系统最常用的是Linux,因此这里提供一下下载Li...阅读全文

博文 2017-02-09 13:31:56 weakish

gf框架之模板引擎 - 基本用法

文章来源:http://gf.johng.cn/591642 控制器视图 gf为控制器提供了良好的模板引擎支持,由gmvc.View视图对象进行管理,提供了良好的数据隔离性。控制器视图是并发安全设计的,允许在多线程中异步操作。 func (view *View) Assign(key string, value interface{}) func (view *View) Assigns(data map[string]interface{}) func (view *View) Parse(file string) ([]byte, error) func (view *View) ParseContent(content string) ([]byte, error) func (vie...阅读全文

Go 语言接口详解(二)

这是『就要学习 Go 语言』系列的第 20 篇分享文章提醒:文末给大家留了小练习,可以先看文章,再做练习,检验自己的学习成果!我们接着上一篇,继续讲接口的其他用法。实现多个接口一种类型可以实现多个接口,来看下例子: 1type Shape interface { 2 Area() float32 3} 4 5type Object interface { 6 Perimeter() float32 7} 8 9type Circle struct {10 radius float3211}1213func (c Circle) Area() float32 {14 return math.Pi * (c.radius * c.radius)15}1617func (c Circle) Per...阅读全文

博文 2019-07-20 09:13:29 Golang来啦

session 检测问题

~~~ 是这样的: 检测session是否存在 如2个页面 /admin/aaa /admin/bbb 以上2个都加了 判断session是否存在 等登录后 人工去访问 aaa bbb 2个页面,出现登录不上 解决办法 1:清除本地缓存 2:要访问也可以 后面加个 如:/admin/aaa?123 随机字符 也可以解决, 请问这样的问题 有什么办法解决! ~~...阅读全文

DM 源码阅读系列文章(五)Binlog replication 实现

作者:lan 本文为 DM 源码阅读系列文章的第五篇。上篇文章 介绍了 dump 和 load 两个数据同步处理单元的设计实现,对核心 interface 实现、数据导入并发模型、数据导入暂停或中断的恢复进行了分析。本篇文章将详细地介绍 DM 核心处理单元 Binlog replication,内容包含 binlog 读取、过滤、路由、转换,以及执行等逻辑。文内涉及到 shard merge 相关逻辑功能,如 column mapping、shard DDL 同步处理,会在 shard merge 篇单独详细讲解,这里就不赘述了。 Binlog replication 处理流程 从上图可以大致了解到 Binlog replication 的逻辑处理流程,对应的 逻辑入口代码。 从 relay...阅读全文

博文 2019-05-08 18:34:52 PingCAP

Linux服务器安全策略实战免费送给运维工程师

课程介绍 安全是IT行业一个老生常谈的话题了,从近几年层出不穷的安全事件中折射出了很多安全问题,处理好信息安全问题已变得刻不容缓。 因此做为运维人员,就必须了解一些安全运维准则,同时,要保护自己所负责的业务。 本课程主要讲解Linux服务器的安全策略。 课程目标 • 掌握Linux服务器安全策略 适合人群 • 运维工程师 课时列表 • 课时1:Linux服务器后门入侵检测工具和使用方法 • 课时2:Linux服务器遭受网络攻击后的处理思路和措施 开始学习http://click.aliyun.com/m/27897...阅读全文