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

Golang 逐行读取文件

golang的错误处理有点奇怪. 插入代码时候, 使用插入代码(推荐) 出现错误: 无法解析服务器的 DNS 地址。 使用插入代码, 直接是文本插入, 连着色都没有. 插入图片要地址, 不能上传. 下载客户端, 转到微软的网站时已经是: We can’t find that page. 写个博客都这么难比较失望. package jutil import ( "bufio" "io" "os" "strings" ) func ReadLine(fileName string, handler func(string)) error { f, err := os.Open(fileName) if err != nil { return err } buf := bufio.NewReade...阅读全文

博文 2015-02-24 03:00:00 zoltun

go-sql-driver发生invalid connection(bad connection)解决方法讨论

在使用go-sql-driver过程中,有时候我发现会报invalid connection的错误,这个错误产生的原因设置了空闲连接不为0时,客户端拿到连接有可能是已经被服务端关闭了,此时就会发生invalid connection,网上有些解决方案是把空闲连接数设置0,不知道设置为0跟设置为50之类的性能有什么大的区别吗?跪求大神解答...阅读全文

GO微信小程序登录和支付

本文仅适用于微信小程序登录、支付golang服务器实现,而通用golang支付实现(支付宝、微信)请看另一篇。[官方文档]一、微信开发文档[微信支付][微信小程序服务器SDK][微信小程序客户端API]二、微信管理后台业务微信公众号管理后台,申请小程序,申请后需要注意两点: #. APPID、APPSECRET用于登录获取openid、sessionkey,其中openid用于支付API #. 开发配置小程序服务器域名和端口(eg: https://supercline.com:8090) 微信公众号商户后台:商户号(MCHID)和API支付密钥(APIKEY)三、HTTPS证书HTTPS服务器配置文档自己手动生成非认证调试证书Generate private key (.key) # Ke...阅读全文

博文 2019-08-21 16:03:11 SuperCLine

zookeepergolang客户端

官方客户端支持 go mod形式 ### demo ``` package main import ( "fmt" "github.com/go-zk/zk" "time" ) func main() { c, _, err := zk.Connect([]string{"127.0.0.1"}, time.Second) //*10) if err != nil { panic(err) } children, stat, ch, err := c.ChildrenW("/") if err != nil { panic(err) } fmt.Printf("%+v %+v\n", children, stat...阅读全文

开源项目 2020-06-30 10:25:48

go post json 遇到的问题

想用go写一个客户端,发一个JSON数据到JAVA的服务端接口, 结果,JAVA接收的BODY一直是空,但是PYTHON写的服务端是OK的 网上查了方法 其中:一些方法 也试过了, type RequestBody struct { Status string `json:"status"` Region []string `json:"region"` Percent string `json:"percent"` Task_id string `json:"task_id"` } b, err := json.Marshal(rbody) body := bytes.NewBuffer([]byte(b)) (1) resp, err := http.Post(url, "applica...阅读全文

博文 2015-09-18 15:00:01 vance928

进军人工智能,ai拼才会赢

2017的第一个月,已经让无数人类开始怀疑人生。错综复杂的人类大脑,终究败给了人工智能。当谷歌官宣横扫人类60局的Master其实就是升级版的AlphaGo的时候,人类对大脑的最后一点期待幻灭。 人工智能(AI)的概念已经火了两年,去年的乌镇互联网大会上,百度CEO李彦宏为了测试无人车,让工程师在马路上对无人车进行拦截,无人驾驶正式走进大众视野。一说到人工智能,大家会首先联想到有一个机器人的存在,其实,人工智能可不止在机器人上应用。 ![20170109172406_96866.jpg](http://studygolang.qiniudn.com/170110/8ee942f45dfcf80a7b804b97192fb41c.jpg) 过海关时的人像识别,开车时导航的路况...阅读全文

golang启动一个简单的http服务

自http://www.01happy.com/golang-simple-http-server/ golang中开发http服务,可以用net/http包提供的功能。net/http包提供了非常全的功能,并且启动的http服务也非常稳定和高效,完全可以用在生产环境中。 package main import ( "fmt" "log" "net/http" ) // w表示response对象,返回给客户端的内容都在对象里处理 // r表示客户端请求对象,包含了请求头,请求参数等等 func index(w http.ResponseWriter, r *http.Request) { // 往w里写入内容,就会在浏览器里输出 fmt.Fprintf(w, "Hello golang h...阅读全文

博文 2018-11-26 17:34:43 石见君

服务监控系统 Prometheus

Prometheus 是一个开源的服务监控系统和时间序列数据库。 ![image](http://static.oschina.net/uploads/space/2015/0205/082749_47Dp_5189.png) 特性: * 高维度数据模型 * 自定义查询语言 * 可视化数据展示 * 高效的存储策略 * 易于运维 * 提供各种客户端开发库 * 警告和报警 * 数据导...阅读全文

Elasticsearch的Go语言客户端开发包 Elastic-Go

Elastic是 [Elasticsearch](http://www.oschina.net/p/elasticsearch) 的 [Go](http://www.oschina.net/p/go) 语言客户端开发包。 快速入门:

// Create a client
client, err := elastic.NewClient()
if err != nil {
    // Handle error
}

// Create an index
_, err = client.CreateIndex("twitter").Do()
if err...阅读全文

golang连接rabbitmq

1.docke 中安装 rabbitmq docker pull rabbitmq 2.运行 rabbitmq docker run -d --name rabbitmq -p 5671:5671 -p 5672:5672 -p 4369:4369 -p 25672:25672 -p 15671:15671 -p 15672:15672 rabbitmq:latest 3.下载 rabbitmq golang 客户端 go get github.com/streadway/amqp 4.send.go 1 package main 2 3 import ( 4 "log" 5 6 "github.com/streadway/amqp" 7 ) 8 9 func failOnError(err...阅读全文

博文 2018-08-22 18:30:01 chaselogs

go实现的简易TCP的客户端和服务器

今天介绍golang版本的通信基础:基于TCP的客户端和服务器实现,参考书籍:The Way To Go 那时学习java的时候也是做过通信的,当时是socket编程,服务器监听某一个端口,然后客户机去连接,简单的聊天室就实现了。后来有变成多线程的聊天室,可以进行群聊什么的了,后期可以传图片传音乐,加上UI那一块儿,山寨QQ就OK了。现在我来用golang实现一下简易的聊天室,实现了客户机连接服务器,给服务器发消息,服务器接受消息,客户机退出,服务器可以收到退出信息,以及多个客户机同时连入一个服务器。主要的思路和java一样的,服务器监听某一个端口,客户机去连接,然后发送消息就OK了。上代码了。package main //服务器端import ( "fmt" "log" "net" //支...阅读全文

博文 2015-08-28 11:00:03 徐学良

golang 手游框架设计 - 本人浅陋的见解, 求达人指正

如有错误的地方,请同仁指正,非常感谢 第一种方式: 共3个进程 Login: 登陆服(同时用于聊天系统) socket长连接 Game: 游戏服(游戏逻辑处理) http短连接 Mysql: 数据库回写 socket 客户端socket连接login,保持长连接,验证成功后,向game服以http方式请求数据 game服向login服http方式验证该客户端是否已经正常登陆, 1: 没有登录则,game返回数据给客户,没有登录状态. 2: 已经登陆,则game返回所需数据给客户端. game将修改后的数据以sql语句形式发送给mysql服,同时记录当前sql到文件中用于备查. 使用单独login服的好处在于 客户端可以一直保持连接,并且login服逻辑处理少. 服务器压力小.同时在game服...阅读全文

博文 2014-10-04 19:27:45 984195889

golang ftp客户端示例 支持断点续传

package main import ( ftp4go "github.com/shenshouer/ftp4go" "fmt" "os" ) var( downloadFileName = "DockerToolbox-1.8.2a.pkg" BASE_FTP_PATH = "/home/bob/" // base data path in ftp server ) func main() { ftpClient := ftp4go.NewFTP(0) // 1 for debugging //connect _, err := ftpClient.Connect("172.8.4.101", ftp4go.DefaultFtpPort, "") if err != nil { fmt....阅读全文

博文 2015-11-18 13:00:02 shenshouer

go语言socket服务器端和客户端简单实现

服务器端: package main import ( "bufio" "fmt" "log" "net" ) func handleConnection(conn net.Conn) { defer conn.Close() data, err := bufio.NewReader(conn).ReadString('\n') if err != nil { log.Fatal(err) } fmt.Println(string(data)) fmt.Fprintf(conn, "who?\n") data, err = bufio.NewReader(conn).ReadString('\n') if err != nil { log.Fatal(err) } fmt.Println(s...阅读全文

比特币挖矿机开发之路(一)

开发分为两个部分,part A:LSP(Live Sequence Protocol)的开发 , part B:Distributed Bitcoin Miner 文档位置:https://github.com/modiziri/p1 正文: 【首先要说一下低级网络协议,之所以称之为低级是因为这种IP只能提供不可靠的数据传递服务,也就是说,这种简单的数据传输很容易导致延迟,丢包和重复。而且,还有最大字节的限制。不过,值得庆幸的是,低于1500字节的传输还是相对很安全的,不过要是超过,那就很容易发生上面的问题了。 几乎没有应用程序会直接用IP来传输数据,相应的,他们会用UDP和TCP代替。 UDP:也就是USER DATAGRAM PROTOCOL,用户数据包协议。这同样也是不可靠的数据服务,...阅读全文

博文 2014-10-07 21:23:25 modiziri

go简易udp客户端和服务器

go简易udp socket客户端和服务器 1.Socket编程 以前使用Socket编程时,一般是如下步骤 建立socket,socket 绑定socket,bind 监听,listen 接受连接,accept 接受/发送,recv/send Go语言对其进行了抽象和封装,刚开始接触有可能不太适应(譬如我第一天用的时候觉得API好难找……建议参考文档),后来发现用起来很爽 简单来说,客户端省去了很多!客户端只需要调用net.Dial()即可,服务器我这里还需要摸索一下,但是也是很简单了,不过流程感觉没简化- - 废话不多说,直接上代码 2.Server端 import ( "os" "fmt" "net" ) func checkError(err error){ if err != ni...阅读全文

博文 2016-04-01 02:00:00 qq_15437667

golang官方的websocket怎么知道客户端关闭连接

目前我使用code.google.com/p/go.net/websocket包来做websocket通讯,目前有一个主动推送通知的功能需要保存所有的连接conn,然后有新消息的时候主动推送给对应的conn,但是如果一个客户的conn关闭之后,我需要移除这个conn,但是看到websocket没有对应的isClose的判断。有什么好的办法解决吗...阅读全文

使用go的ssh包快速打造一个本地命令行ssh客户端

在开始之前,先来个热身运动。虽然标题党写着快速打造一个ssh客户端,但是和跑步一样,在运动前还是需要先热身一下,不然到时候身体(大脑)会吃不消。所以,在开始前,我们先来科普一下ssh的一些东西。 先来说说ssh,这里的ssh是指由IETF的网络小组(Network Working Group)所制定的为建立在应用层和传输层基础上的安全协议。(对于了解这个协议的请忽略本段文字)点这里了解更多ssh介绍 写过java web应用的同学应该还知道另一个ssh(struts+spring+hibernate),当然今天的主角并不是它。 其实接触过后端开发的同学对于ssh应该都不陌生,可能每天你都在使用它,没错,当你要远程登录服务器的时候,大多数情况下都离不开它,俨然已经成为Linux系统的标准配置。...阅读全文

博文 2016-06-22 10:00:00 vimsk

MQTT 代理 SurgeMQ

SurgeMQ 旨在提供 MQTT 代理和客户端开发包,完全兼容 MQTT sepc 3.1.1,此外尝试兼容 3.1。SurgeMQ 目前开发活跃,在一台 4 核 2.8G i7 处理器的 MBP 上性能可达: * **over 400,000** MPS in a 1:1 单发布者和生产者配置 * **over 450,000** MPS in a 20:1 fan-in configuration * **over 750,000** MPS in a 1:20 fan-out configuration * **over 700,000** MPS in a full mesh configuration with 20 clients ![image](http://st...阅读全文

Go后端+iOS端+Android端的AES256加密方案(Android端)

移动端与服务端通讯需要采用AES 256加密。 Androd客户端的实现代码为: import android.util.Base64; import java.io.UnsupportedEncodingException; import java.security.Key; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import javax.crypto.Cipher; import javax.crypto.spec.SecretKeySpec; public class AESEncrypt { private static final String KEY_A...阅读全文

博文 2015-07-06 18:00:00 陈小锅

golang rbac框架

在 https://github.com/mikespook/gorbac/tree/v1.0 github上新的版本是开发板,得用这里的老版 demo package main import ( "gopkg.in/mikespook/gorbac.v1" "fmt" ) func main() { permissions := []string{"admin","guest","normal"} rbac := gorbac.New() rbac.Add("rico",permissions[1:],[]string{}) IsGranted := rbac.IsGranted("rico","guest",nil) fmt.Println("grant is ", IsGranted)...阅读全文

博文 2016-02-03 10:00:02 ziyouchutuwenwu

基于go语言的心跳响应

我们在使用tcp ip 通讯的时候,都需要使用心跳机制来判断服务器与客户端的连接状态,如果服务器的心跳超时等,会做出重新连接等机制, 基于这种问题,我今天给大家推荐了一个基于go语言的心跳响应机制,废话不多说直接上code: 源码在这儿 # heartbeat The heartbeat timer Heartbeat简介 Heartbeat是一个基于Go的多任务的定时响应回调 ## 安装 go get -u github.com/noaway/heartbeat Heartbeat的简单使用 创建任务 name, spec := "12138", 5 ht, err := heartbeat.NewTast(name, spec) if err != nil { fmt.Println(e...阅读全文

博文 2016-04-15 01:00:06 TF12138

写一个模仿斗地主,持续更新中

模仿斗地主,现在只写到发牌阶段,怎么抢地主,发牌还没有写,大家一起交流一下 容错,异常,流程还在考虑中,各种大神给点意见 服务端:监控7777端口 ->role1,role2,role3三人都连接上并确认 -> 发牌 客户端:连接7777端口 -> 连上确认,等待下一步 server.go client.go