go培训市场有多大?大家说说看!安卓众多产品的未来
拉钩网上 http://www.lagou.com/ go的需求职位为80个,大部分是服务器端,基本没有web开发。 安卓产品很多::系统,手环,健康器械,汽车,无人机,火...阅读全文
拉钩网上 http://www.lagou.com/ go的需求职位为80个,大部分是服务器端,基本没有web开发。 安卓产品很多::系统,手环,健康器械,汽车,无人机,火...阅读全文
func test_json() { x, _ := json.Marshal([]string{"aaa:123", "bbb:456"}) fmt.Println(x) var caps []string json.Unmarshal(x, &caps) fmt.Println(caps) } //输出结果 ------------------------------- [91 34 97 97 97 58 49 50 51 34 44 34 98 98 98 58 52 53 54 34 93] [aaa:123 bbb:456] //把每个字符都转成对应ascill数值 通过反射找到具体的编码器,此例子对应编码器为string func (e *encodeState) string...阅读全文
title: goquery的使用 tags: go,goquery,爬虫 author: Clown95 本文参考 飞雪无痕 的 《golang goquery selector(选择器) 示例大全》 概述 相信很多小伙伴对爬虫有着很大的兴趣,今天我们就来说下go语言的爬虫利器goquery,有使用过jquery的小伙伴是不是看着这个很眼熟?goquery类似jquery,它是jquery的go版本实现,使用它,可以很方便的对HTML进行处理。 goquery是基于 Go net/htm包和css选择器库 cascadia。由于net/htm解析器返回的是DOM节点,而不是完整的DOM树,因此, jQuery的状态操作函数没有实现(像height(), css(), detach) 注意:...阅读全文
四川麻将玩法, 血战到底(三人模式/四人模式)服务器程序, 房卡模式, 支持俱乐部. 基于[`Nano`](https://github.com/lonnng/nano)开发, 本程序主要用于演示如何使用`nano`进行游戏服务器程序开发, 演示客户端下载地址: iOS: [https://fir.im/tios](https://fir.im/tios) Android: [https://fir.im/tand](https://fir.im/tand) 如果要连接自己的服务器, 可以反编译android的包, 然后修改appConfig.lua中的远程服务器地址, 然后重新打包就可以玩了. 首次运行自动创建MySQL数据库表结构 结构化日志 血战三人玩法/四人玩法完整实现...阅读全文
 我们的目标是实现一个能处理 HTTP 和 HTTPS 的[代理服务器](https://en.wikipedia.org/wiki/Proxy_server)。代理 HTTP 请求的过程其实就是一个解析请求、将该请求转发到目的服务器、读取目的服务器响应并将其传回原客户端的过程。这个过程只需要内置的 HTTP 服务器和客户端([net/http](https://golang.org/pkg/net/http/))就能实现。HTTPS 的不同之处在于使用了名为 “HTTP CONNECT 隧道”的技术。首先...阅读全文
Agones 是谷歌和游戏厂商育碧联合开发的游戏服务器。它是一个用于在 Kubernetes 上托管、运行和扩展专用游戏服务器的库。 谷歌在开发文档中表示未来谷歌将会使用 Kubernetes 实现服务器的集群管理和游戏扩展。而育碧方面也表示,通过 Agones 服务器,可以更好地安排服务器资源,为玩家们提供最出色的多人游戏服务。 **主要特性** - 能够在 Kubernetes 中定义一个 GameServer - 通过 yaml 或 API - 管理 GameServer 生命周期 - 包括健康检查和连接信息 - 客户端 SDK 与专用游戏服务器集成 **工作原理**  request_file用于请求文件传输,附带的命令参数是文件key. file_size用于通告客户端文件的大小. transfering用于传输文件内容,附带参数是文件内容的二进制数据. 服务器的文件配置示例 ../learnyouhaskell.pdf=haskell ../golang.1.1.2.chm=golang ../NodeJS.pdf=NodeJS 上面的文件配置了3个文件可供传输=左边是文件路径,右边是请求...阅读全文
或许人都是寂寞的,都想有某种宿求,都想说一些想说的话,今天是第一次写博客,因为心情有点儿乱吧,想在这里梳理一下。 还没自我介绍过,就先说说自己吧。 我是天津工业大学计算机与软件学院大三学生,专业是软件工程。我们的学院有点儿特殊,又是天津市大学生软件学院,这样的双重身份是有点儿特殊的,是天津市继续软件类人才了就创建了这些学院。学院是2010年建立的,我是第一批入驻的学生之一。 在没上第一节C语言课之前,我是不知道程序是那样的……时至今日,感觉心里很乱,但还是有一点儿思路的。(我的说话语气一直用可能,这是我的性格的第一反应吧,我觉得这该改改了。)嗯,是的,是有思路的。但可能是自己太偏执,一直想要弄清楚那个过程,而且要求还是一步一步的,从人的思维到机器思维的完全转变。这有点儿强迫症的意思了。当然一...阅读全文
gitee.com OSchina推出的git仓库。服务端可以直接克隆github.com上的项目进来。 git.code.tencent.com 腾讯推出的git仓库,貌似不可以直接在服务器拉取其他git仓库的项目。而且蛋疼的是不支持go get code.aliyun.com 最后选定用这个了。可以在服务器端拉项目但是超时4分钟,基本拉不成。最重要的是支持go get...因为有golang项目,决定用他了! 阿里云注册地址: https://chuangke.aliyun.com/ 可以直接点击申请...阅读全文
文链接:https://www.cnblogs.com/xiaoyan2017/p/9266179.html运用html5开发的仿微信聊天室实战项目weChatRoom,基于h5+css3+zepto+weui+wcPop+swiper等技术混合开发,整体采用flex布局模式,兼容适配各种手机屏幕,实现了消息、表情发送,动图gif,图片、视频预览,红包/打赏等功能。// ...滚动聊天区底部 function wchat_ToBottom(){ //$(".wc__chatMsg-panel").animate({scrollTop: $("#J__chatMsgList").height()}, 0); $(".wc__slimscroll2").slimscroll({ scrollB...阅读全文
狗洞是一个高速的 P2P 端口映射工具,同时支持Socks5代理。 0.5版后开始开源,UDP底层基于开源库KCP重写,效率大大提高,在恶劣环境下优势明显。 同时提供非P2P版本(Lite版本),两端连接过程完全不依赖中间服务器,支持加密和登陆认证,自动重连,但是需要人为确保两端能正常连通(否则请使用默认的P2P版本)  特性: * 数据安全,P2P模式通讯时数据不经过服务端,用户可自定义访问密码 * P2P模式底层采用KCP协议,在恶劣网络环境下比TCP延迟降低 30%-40% * P2P模式支持AES加密 * P2P模式可...阅读全文
bytes.buffer是一个缓冲byte类型的缓冲器存放着都是byte Buffer 是 bytes 包中的一个 type Buffer struct{…} A buffer is a variable-sized buffer of bytes with Read and Write methods. The zero value for Buffer is an empty buffer ready to use. (是一个变长的 buffer,具有 Read 和Write 方法。 Buffer 的 零值 是一个 空的 buffer,但是可以使用) Buffer 就像一个集装箱容器,可以存东西,取东西(存取数据) 创建 一个 Buffer (其实底层就是一个 []byte, 字节切片)...阅读全文
go代理服务器代码 最近用废弃的小笔记本搭了个centos服务器挂着,搭了ssh,tomcat,go环境,想搭个代理服务器访问路由,不想安装,想自己写一个,顺便复习一下go语言知识。 一开始,我网上搜了一下go语言写代理服务器的代理,搜索到一个: 来自:http://symphony.b3log.org/article/1357452978419 (原文地址:http://kejibo.com/golang-http-proxy-server 已失效) package main import ( "http" "log" "os" "io/ioutil" ) func handler(w http.ResponseWriter, r *http.Request) { resp, err :=...阅读全文
alect发布于 2009-06-14 12:50:33| 17397 次阅读 字体:大 小 打印预览 var ReTitle = '回复:3G门户GO手机浏览器试用 '; 3G门户花大手笔打造的GO浏览器自上次流出界面截图后,就吸引了机友们的眼球。 近日,3G门户进行了一次小规模的试用,通信之家第一时间拿到泄露版。现在就听我们一一道来试用感受。 安装 目前GO浏览器只支持Symbian S60第三版,sis安装包大小为2.61MB,安装后占用了约3MB的内存,还预装了一个TTF通用矢量字体。安装和启动速度比较快,1分钟内搞定了。 支持GPRS和Wi-Fi连接。安装后会跳出“帮助”,用户可以自行关闭,比较人性化。 启动过程 界面 GO采用了Akebono UI进行开发,号称“可以让用户在普通...阅读全文
[gobyexample](https://gobyexample.com/) 应该很多 gopher 都知道。现在有网友翻译成了中文版,可以对照着看看。 Go 是一个被设计用来建立简单,快速和可信赖的软件的开源程序设计语言。 Go by Example 是一个实践性的通过带注释的例子程序去介绍 Go。 [中文版](http://gobyexample.everyx.in/) 查看[第一个例子](http://gobyexample.everyx.in/hello-world/)。以下是例子主题: 你好,世界 值 变量 常量 For循环 if/else 分支 分支结构 数组 切片 关联数组 Range 遍历 函数 多...阅读全文
1.为什么使用信道(channel)而不使用TCP连接发送AMQP命令? 对操作系统来说频繁的建立和销毁TCP连接开销非常昂贵,而操作系统每秒建立的连接是有上限的,性能瓶颈不可避免,而只建立一条TCP连接无疑是一个很好的方案,在这条连接当中建立多条信道与RabbitMQ进行私密通信,相当于光纤电缆一样,一条电缆有多条光束,信道是没有限制的 2.队列 1)AMQP的命令basic.consume与basic.get 如果需要消息一到达队列就自动接收的话,应该使用basic.consume basic.get会订阅消息,获得单条消息,然后取消订阅,值得注意的是不应该循环basic.get来替代basic.consume,应该理性使用basic.consume实现高吞吐量 消息如果到达无人订阅的队...阅读全文
API文档上的内容 注册公众平台什么的就不说了,消息接入部分,文档地址: http://mp.weixin.qq.com/wiki/index.php?title=%E6%B6%88%E6%81%AF%E6%8E%A5%E5%8F%A3%E6%8C%87%E5%8D%97#.E7.94.B3.E8.AF.B7.E6.B6.88.E6.81.AF.E6.8E.A5.E5.8F.A3 简言之就是,提交申请,微信服务器将发送GET请求到你所填写的URL上,这个GET请求附带四个参数: 参数 描述 signature 微信加密签名 timestamp 时间戳 nonce 随机数 echostr 随机字符串 过程很简单,校验数据,确认请求来自微信服务器,则原样返回echostr参数内容,接入生效。 校...阅读全文
funcmain() { httpserver() } //http服务器 func httpserver() { //文件浏览 http.Handle("/", http.FileServer(http.Dir("file"))) err := http.ListenAndServe(":8080", nil) if err != nil { log.Fatal("ListenAndServe: ", err) } } 版权声明:本文为博主原创文章,未经博主允许不得转载...阅读全文
前言Golang的结构体标签可能每一个Gopher都在用,尤其是在json处理的地方用。比如: 123456type NetConf struct { Master string `json:"master"` Mode string `json:"mode"` MTU int `json:"mtu"` Debug bool `json:"debug"`} 毋庸置疑,这个 NetConf 结构体实体变量在转换 json 的时候,Master 字段会变为 json 字符串中的 “master “。 如果你对结构体标签了解仅此不多,那可以继续往下看了。 从一个结构体标签可以从属多个字段开始说123456type T struct { f1 string "f one" f2 string f3 ...阅读全文
#####用go写的socks5服务器端代码: 1.默认只支持用户名密码的认证方式(username:abc , password:123),监听 tcp 8083 端口; 2.CMD支持TCP、UDP,不支持BIND,需要的可自行再实现; 3.支持ipv4、domain,目前不支持 ipv6; 4.建议客户端使用 proxycap, proxycap、SocksCap64 测试过能很好支持。(玩LOL,正常游戏)建议客户端不设置服务器端做DNS解析,效率相对会慢些; 5.注意服务端 防火墙 tcp 8083 端口开放及UDP协议全开放; 6.使用时有bug或问题欢迎留言; 7.想尝试用 go 写个简单的客户端,支持 lsp 劫持,配合服务器端做代...阅读全文
OpenPitrix 是一个将应用程序打包和部署到诸如 QingCloud,AWS,Kubernetes 等多个云环境中的开放平台. Pixrix [Paitriks] 是指 PaaS 和 IaaS 的矩阵,可以轻松开发,部署,管理各种应用程序,包括各种 PaaS 运行时环境,即 Pitrix = PaaS + IaaS + Matrix。 它也意味着一个包含无尽的矩阵(PI - 希腊字母“π”)应用程序。 设计: 基本思想是解耦应用程序存储库和运行时环境。 应用程序可以运行的运行时环境是通过匹配运行时环境的标签和应用程序所在的存储库的选择器。详情请查看[如何设计项目](https://github.com/openpitrix/openpitrix/blob/master/docs...阅读全文
最强围棋程序Alpha Go 浅析 去年谷歌的围棋程序Alpha Go一举打败所有已知的围棋AI程序,以及以5:0的大比分打败了专业棋手Fan Hui。随后在《nature》上报到了Alpha Go 的内幕。作为一个伪的围棋爱好者和一个机器学习爱好者,看了该文章,并看了其他的分析,写下自己的心得: 围棋的智能对弈程序最早当属我国的手谈,那个时期的自动对弈程序属于经验型的。随后从国外对围棋研究后,产生了蒙特卡洛树搜索的方法应运于围棋对弈,产生了一系列的强AI,可以达到业余水准,关于蒙特卡洛树搜索可以参看《基于蒙特卡洛树搜索的计算机围棋博弈研究》,可以说对该方法进行了详细的说明,阅读也较容易,可以得到围棋AI的一些背景,制约蒙特卡洛方法更近一步的原因是:树的展开,以及搜索的深度的确定。于此同时,...阅读全文
websocket: close 1006 (abnormal closure): unexpected EOF read: connection reset by peer 几乎所有用户全部掉线,并且重连不...阅读全文
学习教程地址:http://www.imooc.com/topic/golang?mc_marking=ed9ea9bd605fe0066c71d80cc8603806&mc_channel=bdgoyyzt&audience=230227github地址:https://github.com/leeeboo/leeeboo.github.com微信公众号开发文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp14452414321 微信公众号的开发逻辑2 GO开发环境3 开发一个微信公众号的后端程序 (1)开始一个Web应用 (2)完成公众号URL+Token验证 解析请求中的GET参数 (补充: 两种常用的http请求——在...阅读全文
Puffs,全名为 Parsing Untrusted File Formats Safely ,是 Google 开源的一个用于特定领域的语言和库,可安全地解析不受信任的文件格式,包括图像、音频、视频、字体和压缩档案等。 与 C 语言不同,Puffs 对于缓冲区溢出、整数算术溢出和空指针解引用是非常安全的。Puff 和其他内存安全语言之间的主要区别在于,所有这些检查都是在编译时完成的,而不是在运行时完成的。 Puffs 旨在像 Go 或 Rust 一样生成安全的软件库,同时能像 C 一样快,可以在任何使用 C 库的地方使用。但需注意的是,Puffs 不是一种通用的编程语言,虽然在技术上可行,但似乎不值得去写一个专门的 Puffs 编译器出来...阅读全文
本人是个go初学者,由于之前一直用pycharm写python,就想仍然用原来的编辑器学习,下载了go插件之后,它要我选择global library ,projcet library,moddule library,不是很懂这些的区别,每次import一个库进去就提示我unused import,我看了一下所有的package都在go/src文件下,但是全部选择这个文件夹之后也没有用。 不知道该怎么办了,求大神帮帮忙,教教我怎么配置墙的,发现很多人是用go-(xxoo)agent的,而我当时完全没听说过go-agent,因为我已经N多年不翻(什么)墙了,于是,有人就说:“连go-(xxoo)agent都没用过你还是程序员吗?”说实话,我也不希望我是程序员啊!可我真的没用过go-(xxoo)agent啊! 想起我一位前同事,工作很多年了,却从来没用过linux!(也不知道他说的是真的还是假的,至于你信不信,反正我是信了。)他说这是他第一次用linux!(也难怪啊,他在原来的公司干里好多年,公司是用.net的。自然没必要用linux。)但我不能说他不是程序员,事实上,他工作完成得很出色。i第一次接触linux,很快就熟悉了。 不用linux还可以用windows,不用go...阅读全文
golang select 选择器 常规模式: package main import ( "fmt" "strconv" ) func main() { var chs1 = make(chan int) var chs2 = make(chan float64) var chs3 = make(chan string) var ch4close = make(chan int) defer close(ch4close) go func(c chan int, ch4close chan int) { for i := 0; i < 5; i++ { c <- i } close(c) ch4close <- 1 }(chs1, ch4close) go func(c chan floa...阅读全文
今天周末,即使立冬已过,阳光依然独好,闲着没事做,coding。 一直用bm。。。/pq的SQL驱动,忘记叫啥了,一直没问题,今天看到地址转到了lib/pq,重新获取了驱动,继续使用,有如下一段代码, func DB() (db *sql.DB) { db, err := sql.Open("postgres", "user=postgres password=123456 dbname=test sslmode=verify-full") if err != nil { Fatal("数据库连接失败" + err.Error()) } return db } 编译,运行,不知道搞毛,db一直为空,搞了好久,都没搞明白,偶然间看到了 import( ) 居然为空,我去,我去,好吧,我的编辑器...阅读全文
为方便测试,想做一个运行web应用后自动打开浏览器的功能,应该如何实...阅读全文
nohup命令 在 linux 下面部署,我们可以利用 nohup 命令,把应用部署在后端,如下所示: nohup ./yourapp & 这样你的应用就跑在了 Linux 系统的守护进程 nohup命令:如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。nohup就是不挂起的意思( no hang up)。 一般如何如下两种方式使用它: nohup command 或者 nohup command & 这之间的差别是带&的命令行,即使terminal(终端)关闭,或者电脑死机程序依然运行(前提是你把程序递交到服务器上); 使用它需要注意的问题是:它把标准输出(STDOUT)和标准错误(STDE...阅读全文
go游戏服务器语言开发过程,大家都用框架吗,还是直接原生写的,有什么建议吗。leaf框架怎么...阅读全文
ubuntu安装配置好go环境后,终端执行”go”则会显示出一些常用命令。其中有一些是在编译安装信令服务器时使用到的。 执行“go”后, Usage: go command [arguments] The commands are: build compile packages and dependencies clean remove object files env print Go environment information fix run go tool fix on packages fmt run gofmt on package sources get download and install packages and dependencies install compil...阅读全文
chromr浏览器注意:在地址栏里输入 "chrome://flags/",然后查找QUIC,启用该协议,同时建议启用 "SPDY/4",能让访问更流畅。 #google hosts 2015#更新时间:2015年1月13日#持续更新地址:http://www.cnblogs.com/echoyy/ #base services 64.233.168.87 google.com 64.233.168.87 www.google.com 64.233.168.87 m.google.com 64.233.168.87 scholar.google.com 64.233.168.87 translate.google.com 64.233.168.87 books.google.com 64.2...阅读全文
文:https://www.cnblogs.com/hwcs/p/7203605.html 一、游戏服务器特征 游戏服务器,是一个会长期运行程序,并且它还要服务于多个不定时,不定点的网络请求。所以这类服务的特点是要特别关注稳定性和性能。这类程序如果需要多个协作来提高承载能力,则还要关注部署和扩容的便利性;同时,还需要考虑如何实现某种程度容灾需求。由于多进程协同工作,也带来了开发的复杂度,这也是需要关注的问题。 功能约束,是架构设计决定性因素。基于游戏业务的功能特征,对服务器端系统来说,有以下几个特殊的需求: 游戏和玩家的数据存储落地 对玩家交互数据进行广播和同步 重要逻辑要在服务器上运算,做好验证,防止外挂。 针对以上的需求特征,在服务器端,我们往往会关注对电脑内存和CPU的使用,以求在特定...阅读全文
目前比较大家熟知的有比特币,以太坊eth,etc等等。但是关于比特币是用什么语言实现的,就并不太清楚了,实现比特币开发的语言是谷歌开发的golang语言,今天下面的文章主要讲的就是如何的搭建go语言开发环境;关于开发环境,没有接触过计算的人来说就是你下载美图秀秀,然后在电脑安装,现在都是简易安装,你使用美图秀秀P图,我们是用go语言编程,其实说白了就是下个程序,然后安装。链接一:go语言下载链接 golang.org/dl/谷歌的网页貌似加载了某种识别程序,能够直接识别这是windows系统,而且直接识别是64位系统的。(如果这个链接打不开,也可以在其他地址找到相应的下载) golang语言下载页 点击红色方框部分下载即可,如果你是其他系统的选择相应的文件下来。然后双击开始运行,如果你是新手...阅读全文
从比特币看区块链与Golang实战 原创者:文思一、区块链脉络 1、哈希 哈希以上特点决定了其对区块链支持的天然性。2、加密2.1对称加密:明文—加密方法-->密文密文—解密方法-->明文以上密码本一旦暴露,就毫无安全加密可言。2.2非对称加密:公钥加密、私钥解密 以上非对称加密可以解决加密问题,但无法解决传数据来源的验证问题,因为公钥公开发布,无法解决网络截取数据被劫持替换的问题。(截取网络数据,并伪造数据用公钥加密后传输)现在就需要数字签名: 3、UTXOUnspent Transaction Output,未花费的交易输出 比特币的概念没有余额的概念,只有输入与输出,在管理钱包时,记录的是交易记录,而不是余额(为了节省交易空间)例如:钱包内的UTXO已接收3笔比特币,1BTC、2BTC...阅读全文
问题描述 最近把Golang升级到了1.14,突然发现Goland编辑器没法Debug调试程序了,会报出如下错误: Version of Go is too old for this version of Delve (minimum supported version 1.13, suppress this error with --check-go-version=false) 解决方法 首先,更新本机的delve组件(直接打开cmd操作,不要在项目内) go get github.com/go-delve/delve/cmd/dlv 如果操作有问题,可以参看作者的文档:https://github.com/derekparker/delve/blob/master/Documentat...阅读全文
用go语言来实现socks5代理服务器,后面会加入ssh远程代理,用户验证,均衡负载一些吧 首先监听8080端口,循环接收tcp连接 server, err := net.Listen("tcp", ":8080") if err != nil { log.Panic(err) } defer server.Close() log.Println("开始接受连接") for { client, err := server.Accept() if err != nil { log.Println(err) return } log.Println("一个新连接") go socks5Proxy(client) } socks5Proxy函数用来实现sock5代理 先介绍一下sock5代理协议 ...阅读全文
# Gobang 五子棋,在线多人游戏。Go语言编写。 # Getting Started Linux用户可以在这里获取Release版本 https://github.com/hcrgm/Gobang-Go/releases 构建: 1. 安装Go语言环境 2. 克隆项目,执行./install.sh 然后让程序跑起来 1. 依照 `config_sample.json` 配置,命名为 `config.json` 2. 执行 `nohup ./gobang > golang.log 2>&1 &` 3. 大功告成,用浏览器打开看看~ # LICENSE GPLv...阅读全文
https://blog.jetbrains.com/go/2017/06/27/gogland-eap-10-is-out-go-1-9-better-remote-debugger-and-mor...阅读全文
一般来说,协程就像轻量级的线程。线程一般有固定的栈,有一个固定的大小。而goroutines为了避免资源浪费(亦或是资源缺乏),采用动态扩张收缩的策略:初始量为2k,最大可以扩张到1G。每个线程都有一个id,在线程创建的时候就会被返回,所以我们可以通过线程的id来操纵线程。但是在golang中没有这个概念,因此我们在编码之初就要考虑协程的创建和释放问题。线程和 goroutine 切换调度开销方面线程/goroutine 切换开销方面,goroutine 远比线程小线程:涉及模式切换(从用户态切换到内核态)、16个寄存器、PC、SP...等寄存器的刷新等。因为协程在用户态由协程调度器完成,不需要陷入内核,这代价就小了。所以goroutine:只有三个寄存器的值修改 - PC / SP / D...阅读全文
记录李航大佬说过(原文链接) 计算机上达到和人同等的对话能力还非常困难。现在的技术,一般是数据驱动,基于机器学习的。 单轮对话有基于分析的,基于检索的,基于生成的方法。 好吧, 我也感觉基于检索的是low的, 但是现在各家智能音箱貌似都没有突破这个坎. 大家听到的siri的b-box, 背后是一个无聊的逗逼程序员; 小爱同学的惊人语录, 写语料也许是一群抠脚大汉. 这半年的工作, 主要集中在开发一个基于检索的语义理解平台, 最近几天刚刚完成了第三版的进化. 初代目 去年年底, 刚来这里接手这项工作的时候, 老大给我的架构是简单的纯检索, 基于ES, 把事先编好的模板写到搜索引擎里. 每次收到前台请求, 将asr获得的文本扔到ES里搜, 一开始模板量比较少的时候, 分类效果挺不错的, 甚至还有...阅读全文
Golang 网络爬虫框架gocolly/colly 三 熟悉了《Golang 网络爬虫框架gocolly/colly 一》和《Golang 网络爬虫框架gocolly/colly 二》之后就可以在网络上爬取大部分数据了。本文接下来将爬取中证指数有限公司提供的行业市盈率。(http://www.csindex.com.cn/zh-CN/downloads/industry-price-earnings-ratio) 定义数据结构体, //证监会行业市盈率 type ZhjhHyShyl struct { Hydm string `json:"行业代码"` Hymc string `json:"行业名称"` Zxsj *float64 `json:"最新数据"` Gpjs int `json:...阅读全文
Tim是一个分布式聊天服务器,采用go语言开发,有很好的并发支持与良好的性能。 1.支持im的基本功能。 2.支持群聊。 3.支持用户状态信息推送,"在线","离开"等。 4.支持消息回执.消息不丢失。 5.支持离线信息,聊天信息等存储与拉取。 6.通过协议拓展,可以支持视频,音频等通讯。 7.支持心跳检测异常断开的客户端,检测客户端验证超时等。 8.支持可配置的同一账号多客户端同时登陆。 9.可以配置关联其他数据库用户系统,tim可以独立于业务之外。 10.支持无数据库模式,此模式无法保存数据。 11.支持自定义消息类型,如发送位置,分享购物信息等。 12.支持分布式部署,服务器横向拓展。 目前实现的...阅读全文
1、代码 2、编译及运行 1、目录结构 1.1) 1 $ tree 2 . 3 ├── mplayer.go 4 └── src 5 ├── mlib 6 │ ├── manager.go 7 │ └── manager_test.go 8 └── mp 9 ├── mp3.go 10 └── play.go 1.2)mlib库的代码 1.2.1)manager.go代码 1 package library 2 3 import "errors" 4 5 type MusicEntry struct { 6 Id string 7 Name string 8 Artist string 9 Genre string 10 Source string 11 Type string 12 } 1...阅读全文
rhino励志打造一个可靠的游戏服务器框架,以及提供基础功能支...阅读全文