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

使用 beego 搭建 web 应用之一

介绍 你是一个从PHP,Python,Ruby等动态语言转移到Go的web应用开发人员吗?想知道怎样使用Go开发基于web的应用程序吗?你想要知道怎样使用类似于已知的框架的方式进行开发,在那儿你能重复的利用已知的知识? 如果是这样,那么你可能已经做了一些搜索,无论是在谷歌,StackOverflow的或其他网站,以寻求一个框架来帮助你;你可能已经看到了有许多可能的选择,包括Beego,Martini和Gorilla,另外还有net/http包。 这四个当中,我尝试的最多的就是Beego。我认为,它的功能十分的丰富,但是不太复杂,因此上手是相对较快的。 地狱星星翻译于 3 个月 前 0人顶 顶 翻译的不错哦! Beego不是一般的web开发包。它构建在大量已存在的Go之上,提供了许多的功能,以...阅读全文

博文 2014-10-04 19:25:57 中奖啦, 地狱星星, --zxp

Go语言现有Web开发框架

经常有人问:Go有哪些Web开发框架? 做Web开发的总是想要一个开发框架。好的框架的确很有用处。不过,如果Go新手,记得一定别被框架束缚住了,一定要学习Go的基础。 为了方便大家,我将现有的一些框架(**文档比较全的**)做一个汇总(没用过,没法提供各种对比): 1、web.go,源码地址:https://github.com/hoisie/web,官方首页:http://webgo.io/ 2、revel,类似Java的play框架。源码地址:https://github.com/robfig/revel,官方首页:http://robfig.github.io/revel/。Danny.Tian总结的学习笔记:[一步一步学习Revel Web开源框架](http...阅读全文

Golang几大框架的优势和区别?

Martini、Beego、Revel 等等…… golang-china 讨论组的回答: 苏沛: 试用了一下 Martini , 感觉现在的一些第三方插件数量和质量并不是特别好,会有一些坑或者要自己写些中间件。 总体不如另外两个框架成熟。 我去年开始研究Go语言,不知不觉快有一年了。以前我研究php和nodejs,都是弱类型的解释性语言。想找一个编译型的强类型语言继续学习,就选中了新奇的Go语言。我只关注Web方面的应用,看了很多有兴趣的开源的Go Web框架,随便吐槽一下。 Fan Yang: 刚刚开始用Beego,也就是图它是中国人做的,有问题可能直接问作者什么的也方便些。 框架的对比。来自[Go语言的Web框架](http:/...阅读全文

golang和java的http性能对比

公司要重构一个统计项目,统计部分要提供一个web收数的接口,因为统计系统的日志量十分大,所以对web服务的性能要求很严格,在技术选择的背景下做了golang和java的性能对比. 测试环境: mac pro 13.4.0 golang: go version go1.3.1 darwin/amd64 java: 1.7.0_71, 基于tomcat容器 测试工具 apache Ab工具: http://httpd.apache.org/docs/2.2/programs/ab.html 测试流程 golang使用源生的net/http服务搭建http项目,接口输出hello world java使用servlet 搭建web项目,接口同样输出hello world ab工具使用 ab -c ...阅读全文

博文 2015-01-12 23:27 dandy

Go Web 框架Macaron

Macaron 是一个具有高生产力和模块化设计的 Go Web 框架。框架秉承了 Martini 的基本思想,并在此基础上做出高级扩展。 ##主要特性 - 支持子路由的强大路由设计 - 支持灵活多变的路由组合 - 支持无限路由组的无限嵌套 - 支持直接集成现有的服务 - 支持运行时动态设置需要渲染的模板集 - 支持对模块的轻松接入与解除 - 采用 inject 提供的便利的依赖注入 - 采用更好的路由层和更少的反射来提升执行速度 ...阅读全文

开源项目 2014-11-07 12:55:55 无闻

GO语言的开源库

Indexes and search engines These sites provide indexes and search engines for Go packages: godoc.org gowalker gosearch Sourcegraph Contributing To edit this page you must be a contributor to the go-wiki project. To get contributor access, send mail to adg@golang.org from your Google Account. Dead projects If you find a project in this list that is ...阅读全文

博文 2015-02-16 09:47 chu888chu888

Golang Web编程的Get和Post请求发送与解析

Golang Web编程的Get和Post请求发送与解析 时间 2014-08-19 15:26:48 CSDN博客 原文 http://blog.csdn.net/typ2004/article/details/38669949 本文的是一篇入门文章,通过一个简单的例子介绍Golang的Web编程主要用到的技术。 文章结构包括: Client-Get 请求 Client-Post 请求 Server 处理 Get 和 Post 数据 在数据的封装中,我们部分采用了json,因而本文也涉及到Golang中json的编码和解码。 一、Client-Get package main import ( "fmt" "net/url" "net/http" "io/ioutil" "log" ) f...阅读全文

博文 2015-01-30 09:28 stephen830

搭建自己的ngrok服务

搭建自己的ngrok服务 三 14 bigwhite技术志 Amazon, DNS, EC2, github, Go, Golang, http, https, Linux, ngrok, ngrokd, tunnel, Ubuntu, vps, 亚马逊, 代理, 企业号, 公众号, 域名, 开源, 微信, 隧道 1 Comment 在国内开发微信公众号、企业号以及做前端开发的朋友想必对ngrok都不陌生吧,就目前来看,ngrok可是最佳的在内网调试微信服务的tunnel工 具。记得今年春节前,ngrok.com提供的服务还一切正常呢,但春节后似乎就一切不正常了。ngrok.com无法访问,ngrok虽然能连上 ngrok.com提供的服务,但微信端因为无法访问ngrok.com,导致消息一...阅读全文

博文 2015-03-14 bigwhite

2015 学习推荐书籍(golang ,web ,机器学习)

golang 以下都是来源于studygolang(一般人都知道): 《The Way to Go 中文 — 无闻译》 https://gobyexample.com/ 50 个 Go 开发者常犯的错误(英) 相对于《golang语言编程》比较适合新手入门。 《golang语言编程》 许式伟 比较全面讲解golang,有项目实例,有跟其他语言的对比,有深度也有广度,当然也就没那么细节了。 个人感觉,不适合第一门语言学习吧。唯有对比才有体会这门工程性语言。 估计,c++和python 都了解后 看更有感触! 《Go 学习笔记 第三版 — 雨痕》 总结性,看完语法在看这个不错,下半部分分析源码的,没投精力看,跳看,个人觉得了解/原理得话,看《深入理解go》加上其他blog就够了。。 ps : 他...阅读全文

博文 2015-06-23 06:59 u010129347

A list of Go projects

Indexes and search engines These sites provide indexes and search engines for Go packages: godoc.orggo-searchgowalkerSourcegraph Contributing To edit this page you must be a contributor to the go-wiki project. To get contributor access, send mail to adg@golang.org from your Google Account. Dead projects If you find a project in this list that is de...阅读全文

博文 2014-07-29 22:43 julong2011

使用go,基于martini,和websocket开发简易聊天室

一、首先,需要了解一下websocket基本原理:here 二、go语言的websocket实现: 基于go语言的websocket也有不少,比如github.com/gorilla/websocket。这里选用的应该算是官方的实现code.google.com/p/go.net/websocket 使用go get安装下载即可。(不过,由于周知的原因:(,我是通过golangtc.com的第三方包下载功能才下载来的) 三、server端 第一个遇到的问题,websocket如何和martini集成? 安装websocket的文档,和http服务集成,应该使用如下方式 func ChatService (ws *websocket.Conn) { for{ io.Copy(ws,ws); }...阅读全文

博文 2015-01-13 18:30 dajianshi

go语言的一些资料

1.首先推荐一个基础学习go的,趣味性,针对性不错,对基础很好。http://go-tour-zh.appsp0t.com/#1 2.tideide 一个好go编辑器,能调试,有项目构建,方便配置交叉编译,语法高亮功能。 3.go文档,中文的虽然不全,但是基本的都有https://golang-china.googlecode.com/svn/trunk/Chinese/golang.org/index.html#toc11 (也许要架梯子,你懂的) 4.go语言google group https://groups.google.com/forum/#!forum/golang-china 5.go实现的blog合集:http://www.cnblogs.c...阅读全文

Golang初学者学习资料大汇总

网站教程 GO语言编程 and GO语言开发2048 from 实验楼 Go语言后台应用开发 form 优才网 Go语言第一课 form 慕课网 入门书籍 《Go 入门指南》(《The Way to Go》中文版) 《Go 编程基础》 《学习 Go 语言》 《GO 标准库》: Polaris出品,一本有价值的入门书籍。 《Go Web 编程》 《Go并发编程实战》 and 《Go命令教程》由@特价萝卜 出品。 视频资料 《Go编程基础》视频教程:由@Unknown 出品,与书籍配套。 《Go Web基础》视频教程 《Go名库讲解》视频教程 社区交流 StudyGolang Golang中国 Go友团 其他补充 Go学习笔记 by 雨痕大神 Golang在线开发环境 由Go语言中文网和实验楼共...阅读全文

博文 2015-05-04 13:49 严爬爬

golang几种post方式

用golang进行http请求类型多了,总结备忘一下。 1.普通的post\get请求 var r http.Request r.ParseForm() r.Form.Add("uuid", orderUUID) bodystr := strings.TrimSpace(r.Form.Encode()) request, err := http.NewRequest("GET", url, strings.NewReader(bodystr)) if err != nil { //TODO: } request.Header.Set("Content-Type", "application/x-www-form-urlencoded") request.Header.Set("Connect...阅读全文

博文 2015-06-24 18:04 zhangqingping

go web应用的部署和热更新

### 序言 Golang标准库的http部分提供了强大的web应用支持,再加上negroni等中间件框架的支持,可以开发高性能的web应用(如提供Restful的api服务等)。 通常这些web应用部署在多台Linux操作系统的应用服务器上,并用Nginx等做为反向代理,实现高可用的集群服务。 当应用版本升级时,如何实现比较优雅的多态服务器的版本更新呢?我google、baidu了一下,也许我输入的关键字不对,也许这对很多人不是个问题,反正我是没有找到完整的方案。 ### 问题 Web应用的更新,我觉得可能需要考虑几个方面的问题: * 编译好的应用二进制文件、配置文件上传到服务器上; * 应用服务器能感知到有新的版本上传; * 在没有停止服务的情况下,热更新...阅读全文

Python、Java、Scala、Go Package对照表

格式转换类 分类 Python Java Scala Go Excel xlwt/xlrd, XlsxWriter POI - - PDF PyPDF2 Apache FOP - - CSV csvkit, tablib - - - XML解析 BeautifulSoup/bs4 - - - JSON - jackson json4s, spray-json - 数据处理和计算类 分类 Python Java Scala Go 二维数据分析 pandas - Saddle - 网络分析 networkx JUNG - - 矩阵计算 numpy - Algebird, Breeze blas, gocomplex, go-fn 科学计算 scipy SCaVis - - 符号计算 sympy ...阅读全文

博文 2015-03-24 21:05 Worldguy

使用go tool pprof分析内存泄漏、CPU消耗

go中提供了pprof包来做代码的性能监控,在两个地方有包: net/http/pprof runtime/pprof 其实net/http/pprof中只是使用runtime/pprof包来进行封装了一下,并在http端口上暴露出来。 使用 net/http/pprof 做WEB服务器的性能监控 如果你的go程序是用http包启动的web服务器,想要查看自己的web服务器的状态。这个时候就可以选择net/http/pprof。 import _ "net/http/pprof"然后就可以在浏览器中使用http://localhost:port/debug/pprof/ 直接看到当前web服务的状态,包括CPU占用情况和内存使用情况等。当然,非WEB的也可以用下面方式启动WEB。在 main...阅读全文

博文 2016-05-09 13:49 ghj1976

2015年web开发的预测。。go语言

本文中,我们将一同看看当今 Web 开发的发展趋势,给大家分享我对 2015 年及未来的一些看法、观察和预测。我从 2000 年就开始做 Web 技术方面的工作,而近几年主要是做云架构解决方案。作为一名 Web 开发者,我曾在 .Net、Node.js 和 Go 技术栈上开发 Web 应用和 Web 服务。最近,我将 Web 技术和开发趋势作为整体研究了一遍,在这里分享一下我的想法和观察结果。首先,让我分享一些我所观察到的可用性和体系结构目前的趋势。可用性的趋势如今,用户体验变得比以往更重要,响应式网页设计(RWD)也成为了网站必备的特性。RWD 能让最终用户在不同尺寸的设备上访问网站,包括手机和平板浏览器。有了 RWD 取代移动网站,我们便无需为移动用户单独开发额外的网站。特别是当我们需要...阅读全文

博文 2015-03-05 08:43 蘑蘑茶

微服务实战(一):微服务架构的优势与不足

【编者的话】本文来自Nginx官方博客,是微服务系列文章的第一篇,主要探讨了传统的单体式应用的不足,以及微服务架构的优势与挑战。正如作者所说,微服务架构更适合用于构建复杂的应用,尽管它也有自己的不足。 这篇文章作者是Chris Richardson,他是早期基于Java的Amazonite EC2 PaaS平台CloudFoundry.com的创始人。现在他为企业提供如何开发和部署应用的咨询服务。他也经常在http://microservices.io上发表有关微服务的文章。 微服务正在博客、社交媒体讨论组和会议演讲中获得越来越多的关注,在Gartner的2014 Hype Cycle上它的排名非常靠前。同时,软件社区中也有不少持怀疑论者,认为微服务不是什么新东西。Naysayers认为这就...阅读全文

博文 2015-05-24 hokingyang

Go语言发展状况和前景

在2015年10月16日,技术大牛许式伟做了有关Go语言发展状况的演讲。 “ 1 大纲 . Go语言语法及标准库变化 . Go语言未来发展的判断 . Go语言开源项目 1.1Go语言语法及标准库变化 1.1.1 Go1.1 • 语言变化 – 支持方法值(Method values) •p.Write 等价于: func(b []byte) (int, error) { return p.Write(b) } •区别于方法表达式(Method expressions): (*Foo).Write,结果类型为 func(p *Foo, b []byte) (int, error) – int,uint 类型长度调整 •自 Go1.1 后,int,uint 的尺寸统一是 64bits,即使是在 3...阅读全文

博文 2016-03-02 10:52 GreatElite

WebStorm 10搭建Golang开发环境

>我是一名Java Web开发者,使用IDEA作为日常开发工具。对于Golang开发其实更应该选择WebStorm配合Go Plugin,这样会更轻量些。 PS: iNote是在IDEA里开发的。 ##下载WebStorm 10 ####[官方下载地址](https://www.jetbrains.com/webstorm/whatsnew/ "下载地址") ##安装WebStorm ####Windows请参考Win版的安装方式 ![enter image description here][1] ##下载Golang Plugin(最新版本是201) ####[Go Plugin](https://github.com/go-lang-plugin-org/g...阅读全文

Go语言(golang)开源项目大全

内容目录 Astronomy 构建工具 缓存 云计算 命令行选项解析器 命令行工具 压缩 配置文件解析器 控制台用户界面 加密 数据处理 数据结构 数据库和存储 开发工具 分布式/网格计算 文档 编辑器 Encodings and Character Sets Games GIS Go Implementations Graphics and Audio GUIs and Widget Toolkits Hardware Language and Linguistics 日志 机器学习 Mathematics Misc Music 网络 Operating System Interfaces Other Random Toys, Experiments and Example Code P2...阅读全文

博文 2015-07-10 09:55 davygeek

使用 Beego 与 Mgo 开发的示例程序

本文为技术翻译,原文地址(需翻墙):http://www.goinggo.net/2013/12/sample-web-application-using-beego-and.html 简介 当我发现 beego 框架时感觉非常激动。我只用了大约 4 个小时就将一个现有的 Web 应用程序移植到了该框架上并做了一些端对端测试的调用扩展。我想要与你分享这个基于 beego 的站点。 我构建了一个具有以下功能的示例 Web 应用程序: 实现了 2 个通过 mgo 驱动拉取 MongoDB 数据的 Web 调用。 使用 envconfig 配置环境变量作为参数。 通过 goconvey 书写测试用例。 结合我的 logging 包。 这个示例的代码可以在 GoingGo 帐户下的 GitHub 仓...阅读全文

博文 2014-01-16 无闻

Awesome Go

Awesome Go A curated list of awesome Go frameworks, libraries and software. Inspired by awesome-python. Contributing Please take a quick gander at the contribution guidelines first. Thanks to all contributors; you rock! Join us on IRC at #awesome-go on freenode web access Contents Awesome Go Audio & MusicAuthentication & OAuthCSS PreprocessorsConfi...阅读全文

博文 2015-02-27 17:27 x_focus

GO 语言学习的五个阶段(带例子)

Francesc (@francesc) is a member of the Go core team and a developer advocate for Google Cloud Platform. He’s a lover of programming languages, a master of technical instruction at Google, and one of the creators of the Go tour. This talk was inspired by another talk from Raquel Vélez at JSConf. Slides for this talk have been posted here. Sourcegra...阅读全文

博文 2015-02-28 18:00:00 泥土笨笨, 砼砼, 社会主义好, 暗夜在火星, ShowColors, soaring, 无若

go语言init和main函数

Go里面有两个保留的函数:init函数和main函数。下边就来比较一下两个函数的异同。 相同点:两个函数在定义时不能有任何的参数和返回值,且Go程序自动调用。 不同点:init可以应用于任意包中,且可以重复定义多个。main函数只能用于main包中,且只能定义一个。 下边说一下两个函数的执行顺序: 对同一个go文件的init()调用顺序是从上到下的 对同一个package中不同文件是按文件名字符串比较“从小到大”顺序调用各文件中的init()函数,对于 对不同的package,如果不相互依赖的话,按照main包中"先import的后调用"的顺序调用其包中的init() 如果package存在依赖,则先调用最早被依赖的package中的init() 最后调用main函数 下图截自astaxie...阅读全文

博文 2015-03-24 15:46 Mervyn1205

Golang优秀开源项目汇总(持续更新。。。)

Golang优秀开源项目汇总(持续更新。。。) 我把这个汇总放在github上了, 后面更新也会在github上更新。 https://github.com/hackstoic/golang-open-source-projects 。 欢迎fork, star , watch, 提issue。 资料参考来源:http://studygolang.com/projects 监控系统 序号 名称 项目地址 简介 1 OpenFalcon http://github.com/open-falcon/of-release OpenFalcon是一款小米监控系统。功能:*数据采集免配置:agent自发现、支持Plugin、主动推送模式; *容量水平扩展:生产环境每秒50万次数据收集、告警、存储、绘图...阅读全文

博文 2016-07-23 23:55 hackstoic

bleve: a modern search indexing library for Go, with examples

Marty Schoch (@mschoch) is an engineer at Couchbase, maker of the high-performance NoSQL distributed database of the same name. Working with Go for almost 2 and half years, he has been using it to prototype new solutions at Couchbase. This talk introduces bleve, a text search indexing library for Go. The slides for this talk have been posted here. ...阅读全文

博文 2015-03-10 08:17 Sourcegraph

Golang资料集

##Golang资料集 * [《Platform-native GUI library for Go》](https://github.com/andlabs/ui) 介绍:跨平台的golang GUI库,支持Windows(xp以上),Unix,Mac OS X(Mac OS X 10.7以上) * [《Gopm 快速入门》](http://blog.go-china.org/25-gopm-intro) 介绍:Gopm(Go 包管理工具) 是一个用于搜索、安装、更新和分享 Go 包的管理工具。 * [《go build 命令是如何工作的?》](http://blog.go-china.org/19-how-go-build-works) 介绍:本文以 ...阅读全文

资源 2015-05-09 13:02:15 polaris

使用go的net/http实现读取web页面

package main import ( "fmt" "io/ioutil" //[1] "net/http" //[2] "os" //[3] "path/filepath" // [4] ) func main() { if len(os.Args) != 2 { fmt.Printf("useage:%s http://url", filepath.Base(os.Args[0])) os.Exit(1) } resp, err := http.Get(os.Args[1]) if err != nil { fmt.Println(err) //go语言会内含详细的错误描述,可以尝试不同的参数来测试 os.Exit(2) } defer resp.Body.Close() //The...阅读全文

博文 2014-05-08 12:01 学思

ngrok原理浅析

ngrok原理浅析 五 14 bigwhite技术志 firewall, ftp, github, Go, Golang, http, https, network, ngrok, ngrokd, Opensource, proxy, SSH, SSL, TCP, TLS, tunnel, VNC, vpn, Wechat, 代理, 开源, 微信, 远程桌面, 防火墙, 隧道 No Comments 之前在进行微信Demo开发时曾用到过ngrok这个强大的tunnel(隧道)工具,ngrok在其github官方页面上的自我诠释是 “introspected tunnels to localhost",这个诠释有两层含义: 1、可以用来建立public到localhost的tunnel,让居于...阅读全文

博文 2015-05-14 bigwhite

2015年之后 Web 开发的趋势

文章 [《Web Development Trends For 2015 And Beyond》](https://medium.com/@shijuvar/web-development-trends-for-2015-and-beyond-c2d3c1ef5718) 从以下方面分析和预测了 Web 开发的趋势: 1、可用性 提到交互式设计,涉及到的库:Bootstrap、Zurb Foundation 和 Yahoo Pure CSS 2、应用架构 移动设备的流行,更多会是 Web API 3、API 驱动开发的进一步火热 主要是 RESTFULL 风格的 API 4、SPA(ingle Page Applications) 崭露头...阅读全文

O2O,商城go2o

Go2o ================ # What's Go2o # Golang combine simple o2o DDD domain-driven design realization, including multi-channel (businesses), multi-store, multi-member commodity,Promotions, orders, coupons implementation also includes a mini-framework in package "ops/cf", providing ORM, Reporting, Web Framework,Rpc Framework. # Deploy # ##...阅读全文

开源项目 2014-12-22 10:01:04

GO性能测试:未进行任何优化

srs.go中对于GO的tcp模块,以及web服务器martini做了初步的性能测试,没有做任何优化。 TCP部分 TCP部分参考:https://github.com/winlinvip/srs.go/tree/master/research/tcp GO作为服务器 GO作为服务器 go build ./tcp.server.go && ./tcp.server 1 1990 4096 >/dev/null g++ tcp.client.cpp -g -O0 -o tcp.client && ./tcp.client 1990 4096 >/dev/null ----total-cpu-usage---- -dsk/total- ---net/lo-- ---paging-- ---sys...阅读全文

博文 2014-11-03 18:02 winlinvip

go的session问题

我发现现在go的在web开发中的session功能还不是"session"啊..比如网上找到的一些资料.还有beego..都表现得像cookies一样.. session本意就是"会话"..应该是一个会话一个session才对..但现在所有session的表现都是同一浏览器的所有窗口共用一个session..不主动删除session内容的话就一直能读到session的内容(即使你已经关闭且重新打工浏览器)... 求指教..求讨...阅读全文

[翻译]理解 Go 语言的内存使用

许多人在刚开始接触 Go 语言时,经常会有的疑惑就是“为什么一个 Hello world 会占用如此之多的内存?”。Understanding Go Lang Memory Usage 很好的解释了这个问题。不过“简介”就是“简介”,更加深入的内容恐怕要读者自己去探索了。另外,文章写到最后,作者飘了,估计引起了一些公愤,于是又自己给自己补刀,左一刀,右一刀…… ————翻译分隔线———— 理解 Go 语言的内存使用 2014年12月22日,星期一 温馨提示:这仅是关于 Go 语言内存的简介,俗话说不入虎穴、焉得虎子,读者可以进行更加深入的探索。 大多数 Go 开发者都会尝试像这样简单的 hello world 程序: package main import ( "fmt" "time" ) ...阅读全文

博文 2014/12/24 mikespook

学习Golang的步骤建议

一、快速入门 通过快速入门可以宏观的了解Go相关知识。快速入门可以去学习 go-tour 国内可以访问的中文版的 go-tour 地址有下面一些: http://gotour.qizhanming.com/#1 也可以自行搭建 go-tour 的环境, 搭建方法参考: http://www.cnblogs.com/ghj1976/archive/2013/03/08/2949237.html https://github.com/meilihao/tour_book/blob/master/go/conf.md 完成这个快速入门,就可以自己写一些小工具玩玩了, 碰到问题再具体搜索就行。 比如爬虫 Go语言 爬虫1-网络请求 http://www.cnblogs.com/ghj1976/arc...阅读全文

博文 2015-05-29 14:46 ghj1976

go语言实现一个简单的登录注册web小程序

最近学习golang也有一段时间了,基础差不多学了个大概,因为本人是java程序员,所以对web更感兴趣。根据《go web编程》中的例子改编一个更简单的例子,供新手参考,废话不多说,上菜: 这个例子使用到了beego框架和beedb框架,如果是go新手beego和beedb得自己去google下载安装。 目录结构: index.go package controllers import ( "fmt" "github.com/astaxie/beego" "login/models" ) type IndexController struct { beego.Controller } func (index *IndexController) Get() { sess := index.S...阅读全文

博文 2013-04-25 08:09 chengxw

Boom — Go语言实现的性能测试工具

Boom — Go语言实现的性能测试工具 HTTP(S) load generator, ApacheBench (ab) replacement, written in Go Boom is a tiny program that sends some load to a web application. It's similar to Apache Bench (ab), but with better availability across different platforms and a less troubling installation experience. 项目地址:[https://github.com/rakyll/boom](https:/...阅读全文

Go实现的HTTP/2 Web服务器Caddy

Caddy 是一个支持 HTTP/2 的跨平台 Web 服务器,使用和配置都非常简单。Caddy 支持 HTTP/2, IPv6, Markdown, WebSockets, FastCGI, 模板等等。 一个 Caddy 配置示例: http://www.oschina.net # Your site's address ext .html # Clean URLs errors { log ../errors.log # Error log 404 error-404.html # Custom error page } fastcgi /blog localhost:9000 php # PHP bac...阅读全文

开源项目 2015-05-29 09:56:28 mholt

用Golang的 http 包建立 Web 服务器

http 包建立 Web 服务器 package main import ( "fmt" "log" "net/http" "strings" ) func sayhelloName(w http.ResponseWriter, r *http.Request) { r.ParseForm() //解析参数, 默认是不会解析的 fmt.Println(r.Form) //这些是服务器端的打印信息 fmt.Println("path", r.URL.Path) fmt.Println("scheme", r.URL.Scheme) fmt.Println(r.Form["url_long"]) for k, v := range r.Form { fmt.Println("key:", k) ...阅读全文

博文 2014-12-30 kanglecjr

用Go语言进行ajax回传

一、后端部分 要想使用ajax,先要准备一个func (http.ResponseWriter, *http.Request)类型的函数来处理前端发过来的请求。 func OnAjax(res http.ResponseWriter, req *http.Request) { io.WriteString(res, "这是从后台发送的数据") } 接下来,要把一个网址和它对应起来,例如主页下的“/ajax”: http.HandleFunc("/ajax", OnAjax) 二、HTML部分 网页上的内容很简单,只有一个按钮和一个文字输入框。 阅读全文

博文 2015-03-24 14:37 独立风华

求助,安装Beego的工具bee出现问题

刚开始学golang web,感觉就掉入坑里,bee工具怎么都装不上。老是提示: ``` D:\google\src\github.com\beego\bee\watch.go:27:2: no buildable Go source files i n D:\google\src\github.com\howeyc\fsnotify ``` 问题已解决,watch引用的地址发生变化,改为gopkg.in/fsnotify.v0,一切正常,我还很难理解为什么会这样...阅读全文

作为一名Java程序员,我为什么不在生产项目中转向Go

自Google在2009年发布Go语言的第一个正式版之后,这门语言就以出色的语言特性受到大家的追捧,尤其是在需要高并发的场景下,大家都会想到是不是该用Go。随后,在国内涌现出了一批以七牛为代表的使用Go作为主要语言的团队,而许世伟大神本人也在各种场合下极力推动Go在国内的发展,于是在这种大环境下,中国的Go开发者群体逐渐超越了其他地区。 那么问题来了,业余时间好学是一回事,真正要将一个新东西运用到生产中则是另一回事。JavaScript的开发者可以义无反顾地选择Node.js,但是对于Java开发者来说,在下一个大项目里究竟是该选择Go,还是Java呢? 郑重声明:本文并不是来探讨Go或者Java谁是更好的语言,每种语言都有自己的设计哲学和适用场景,今天主要是在探讨实际工程中的选择和权衡的问...阅读全文

博文 2015-09-23 10:40:41 丁雪丰

Golang Web文件上传

// fileUpload project main.go package main import ( "fmt" "html/template" "io" "log" "net/http" "os" ) var buf []byte func upload(w http.ResponseWriter, r *http.Request) { r.ParseForm() if r.Method == "GET" { t, err := template.ParseFiles("upload.gptl") checkErr(err) t.Execute(w, nil) } else { file, handle, err := r.FormFile("file") checkErr(err) f...阅读全文

博文 2015-02-12 18:34 未来还没来

微服务实战(二):使用API Gateway

【编者的话】本系列的第一篇介绍了微服务架构模式。它讨论了采用微服务的优点和缺点,除了一些复杂的微服务,这种模式还是复杂应用的理想选择。 当你决定将应用作为一组微服务时,需要决定应用客户端如何与微服务交互。在单体式程序中,通常只有一组冗余的或者负载均衡的服务提供点。在微服务架构中,每一个微服务暴露一组细粒度的服务提供点。在本篇文章中,我们来看它如何影响客户端到服务端通信,同时提出一种API Gateway的方法。 介绍假定你正在为在线购物应用开发一个原生手机客户端。你需要实现一个产品最终页来展示商品信息。 例如,下面的图展示了你在亚马逊Android客户端上滑动产品最终页时看到的信息。 虽然这是一个智能手机应用,这个产品最终页展示了非常多的信息。例如,不仅这里有产品基本信息(名字、描述和价格)...阅读全文

博文 2015-07-01 Sonyfe25cp

Go 语言项目

出处:https://code.google.com/p/go-wiki/wiki/Projects Indexes and search engines These sites provide indexes and search engines for Go packages: godoc.orggowalkergosearchSourcegraph Contributing To edit this page you must be a contributor to the go-wiki project. To get contributor access, send mail to adg@golang.org from your Google Account. Dead proj...阅读全文

博文 2013-11-11 12:00 leonzhouwei

Golang Web框架Web.go

Web.go 跟 web.py 类似,但使用的是 Go 编程语言实现的 Web 应用开发框架。Go发布没多久该框架就诞生了,差不多是最早的Go框架。目前已经有段时间没有更新了。不过,该框架代码不多,其源码可以读一读。 ##安装## `go get github.com/hoisie/web` ##创建一个 Hello World 应用## ``` package main import ( "github.com/hoisie/web" ) func hello(val string) string { return "hello " + val } func main() { web.Get("/(.*)"...阅读全文

开源项目 2014-10-29 13:45:53 hoisie

内网穿透工具 frp

frp 是一个高性能的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务,支持 tcp, http, https 等协议类型,并且 web 服务支持根据域名进行路由转发。 ### frp 的作用 * 利用处于内网或防火墙后的机器,对外网环境提供 http 或 https 服务。 * 对于 http 服务支持基于域名的虚拟主机,支持自定义域名绑定,使多个域名可以共用一个80端口。 * 利用处于内网或防火墙后的机器,对外网环境提供 tcp 服务,例如在家里通过 ssh 访问处于公司内网环境内的主机。 * 可查看通过代理的所有 http 请求和响应的详细信息。(待开发) ### 开发状态 frp 目前正在前期开发阶段,master ...阅读全文

开源项目 2016-09-07 23:56:33 fatedier