Go Web 框架,根据 github star 排序
https://github.com/mingrammer/go-web-framework-star...阅读全文
https://github.com/mingrammer/go-web-framework-star...阅读全文
beego介绍 beego是一个Golang实现的开源Go应用开发框架,他可以用来快速开发 API、Web 及后端服务等各种应用,是一个 RESTful的框架,主要设计灵感来源于tornado、sinatra和flask这三个框架,但是结合了Go本身的一些特性(interface、struct 嵌入等)而设计的一个框架。 Beego Framework: 一个使用 Go 的思维来帮助您构建并开发 Go 应用程序的开源框架 beego简介 beego安装, bee命令 安装beego #go get github.com/astaxie/beego 安装bee工具,bee工具是一个为了协助快速开发beego项目而创建的项目,可以通过bee快速创建项目、实现热编译、开发测试以及开发完之后打包发布...阅读全文
最近在想给这个小站增加点赞和评论功能,第三方系统又有各种限制,就想自己弄个后端,实现类似的功能,对于个人来说,数据量不是很大,单机的 mysql 足够存下所有数据,mysql 作为底层存储是个不错的选择 之前在公司是直接用的 github.com/go-sql-driver/mysql 访问数据库都是直接用写 sql,取出结果然后自己拼成对象,使用上面不是很方便,可读性也不好。想起之前研究 php laravel 框架的时候,直接把数据库层屏蔽了,用户看到的只有对象,使用非常方便,java 里面这种操作方式基本上已经成了标准做法,就去 github 上找了一下 golang 里面有没有类似的东西,果然已经有非常成熟的框架了,github.com/jinzhu/gorm 已经有 7k+ 的 s...阅读全文
TJ何许人也? 他medium自我介绍:TJ Holowaychuk,程序员兼艺术家,Koa、Co、Express、jade、mocha、node-canvas、commander.js等知名开源项目的创建和贡献者。 社区影响: https://nodejsmodules.org 第一页出现次数最多的那个少年 Quora: How is TJ Holowaychuk so insanely productive? —高产到令人发指,Quora上甚至有人猜测TJ不是一个人,而事实上他就是一个人。 substack/npmtop:对node npm社区代码贡献截止目前占到整个社区的3.04% rank percent packages author ---- ------- -------- -...阅读全文
整理目的 记录用的人较多或者出镜率比较高的Golang项目。 如果我漏了你觉得重要的项目,麻烦帮我指出,我尽快补上,谢谢! 下面列表中的每一个项目都配上了Star增长趋势的图片,可以看出该项目的热度。 特别是与区块链相关的两个项目fabric和go-ethereum,能够明显看出区块链行业的起伏。 整理过程中收获: 1、了解到docker项目已经改名为moby,当前仓库为:https://github.com/moby/moby。 2、了解到时间序列数据库,库中每一个数据都有时间属性。 项目列表 Gin 仓库地址:https://github.com/gin-gonic/gin Gin是用Go语言实现的一款web框架。 它的特点和Martini类似,但是API的性能更好,大概快40倍。如果你...阅读全文
http://nordicapis.com/7-frameworks-to-build-a-rest-api-in-go...阅读全文
服务器非业余研究http://blog.csdn.net/erlib 作者Sunface 估计很多同学看到这里都会觉得迷惑,go的大名已经如雷贯耳了,但是erlang?这个东东是神马?难道是编程语言?怎么从来没听说过。 这里请允许我先介绍一下使用Erlang开发的比较有名的应用: 一:whatsapp 只凭32个技术人员,如何应付4.5亿的用户?对于刚刚被Facebook用190亿美元收购的WhatsApp来说,答案是Erlang——一种诞生于上世纪80年代的编程语言,终于在此时走到了聚光灯下。 这个应用把erlang的特性发挥到了极致,利用到了它最好的vm、 集群基础设施、数据库mnesia, 消除了非常多的数据Scale、内存池和锁的问题, 提到的技术和修正点非常值得我们参考。 虽然大部...阅读全文
要的就是速度,Angular 4.0.0 beta0 发布 由于想将核心包版本对齐,加上语义化版本控制,Angular 2 之后将迎来 Angular 4。更新内容: fix(编译器):修复 compiler_host 中的合并错误 common: add a titlecase pipe common: export NgLocaleLocalization compiler: add id property to i18nMessage compiler: digest methods return i18nMessage id if sets forms: add novalidate by default http: simplify URLSearchParams creation...阅读全文
1,关于gui golang 还真的有gui的开发框架。在mac上面好像比较简单。直接用就好。 不知道在其他平台上面咋样。 github项目地址: https://github.com/andlabs/ui/wiki/Getting-Started 起重核心还是使用了:https://github.com/andlabs/libui 在github上面加星的还是挺多的。非常的活跃的项目。 doc文档: https://godoc.org/github.com/andlabs/ui 其他的想好想也没有啥了。感觉上wxWidgets应该也是跨平台的。 https://github.com/dontpanic92/wxGo 也有一个哥们做的封装。 但是看了下加星的比较少呢。还是用andlabs/u...阅读全文
GopherChina2019(北京)大会视频大全 Day1 1、基于 Go 语言的大规模微服务框架设计 2、如何用Go打造高性能路径规划和ETA引擎 3、TiDB 的 Golang 实践 4、How to write testable code 5、Go 业务基础库之 Error & Context 6、Go 同步和并发设计模式 7、百度 APP Go语言实践 8、用Golang搭建实时音视频云 Tutormeet Day2 1、基于MINIO的对象存储方案在探探的实践 2、从零开始用GO实现Lexer & Parser 3、高性能高可用开发框架TarsGo的腾讯实践 4、BTC的小额支付解决方案--闪电网络 5、Go Modules in everyday life 6、用GO构建高性能...阅读全文
Martini框架是使用Go语言作为开发语言的一个强力的快速构建模块化web应用与服务的开发框架。Martini是一个专门用来处理Web相关内容的框架,其并没有自带有关ORM或详细的分层内容。所以当我们使用Martini作为我们的开发框架时,我们还需要选取适合的ORM等其他包。昨天大象哥哥看了下,感觉还是蛮屌蛮简单的,不啰嗦上代码。 package main import ( "github.com/astaxie/beego/context" "github.com/go-martini/martini" "github.com/martini-contrib/render" "net/http" "fmt" ) //定义一个自己的中间件,这里将beego的context注入 func m...阅读全文
摘要超级账本(Hyperledger)是linux基金会下的众多项目中的一个。是由IBM、因特尔,还有金融公司,GP摩根以及其他联合机构于2015年提出来的区块链项目,超级账本还包括5个框架项目:Sawtooth、Iroha、Fabric、Burrow、Indy和3个工具项目:Blockchain explorer、Cello、Composer。其中广为人知的是Fabric。当前成员大约140个,其中1/4来自中国,现在中国技术组由万达、华为、IBM担任主要负责,负责中国会员和中国需求的提供,以及推进代码。下图是项目之间的逻辑关系图: Hyperledger Fabric: 区块链技术的一个实现,它的目标是成为开发应用和解决方案的基础,设计为模块化架构,允许组件如共识和成员服务模块,可以插入...阅读全文
导读:即使2020开局有一些变化 ,但请保持精进。是的,Web开发人员需要在不断发展的环境中成长,需要适应技术的变化,跟得上和学得进去新技术。软件开发行业,其实与其它行业一样,紧跟最新出现的重要趋势和技术,避免学习不成熟或未就绪的技术也很重要。在这里,我们总结一份清单,列出2020年以及之后主导的技术趋势,供各位参考。1、人工智能 根据Gartner预测,到2022年,人工智能市场规模将达到3.9亿美元,许多公司已经将AI纳入其数字化战略中,目前亦没有任何迹象表明它会放缓。结合目前冠状肺炎的情势,我们可以创建一个移动医疗应用,给病人提供症状检查,供医生咨询并访问病人的全部健康档案。这里可以通过人工智能技术(AI)与在线面对面的咨询结合,从功能上超越传统的在线健康应用。还有很多企业早已经使用了...阅读全文
github地址:https://github.com/chenhg5/gin-template web开发的项目模块: - mysql、redis链接 - mysql 读写分离 - redis 集群 - 中间件 - 全局环境配置 - govendor包管理 - session / cache - 性能分析 pprof - 模型 ORM - 全局错误处理 - 前端资源管理 - 微信/支付宝开发sdk - 队列任务【todo】 - log日志分析【todo】 - 快速开发脚手架脚本【todo...阅读全文
Teleport beta2.0 实现了一个全新的Golang TCP Socket框架,它通用、高效、灵活!可被用于Peer-Peer对等通信、RPC、长连接网关、微服务、推送服务,游戏服务等领域。 teleport_server 1. 特性 服务器和客户端之间对等通信,两者API方法基本一致 底层通信数据包包含Header和Body两部分 支持单独定制Header和Body编码类型,例如JSON Protobuf Body支持gzip压缩 Header包含状态码及其描述文本 支持推,拉,回复等通信方式 支持插件机制,可以自定义认证、心跳、微服务注册中心、统计信息插件等。 无论服务器或客户端,均支持都优雅重启、优雅关闭 支持实现反向代理功能 日志信息详尽,支持打印输入、输出消息的详细信息(...阅读全文
ByteEdu 每日新闻(2019-03-14) Golang资料集Go最新资料汇总链接更改 http://www.byteedu.com/forum.php?mod=viewthread&tid=25 字节教育 Go语言初学者的学习资料 http://www.byteedu.com/forum.php?mod=viewthread&tid=191&extra=page%3D1 Unity3D学习路线与学习经验分享 http://www.byteedu.com/forum.php?mod=viewthread&tid=325&extra= LollipopGo开源游戏服务器源码剖析(视频教程) http://www.byteedu.com/forum.php?mod=viewthread&t...阅读全文
今日头条使用 Go 语言构建了大规模的微服务架构,本文结合 Go 语言特性着重讲解了并发,超时控制,性能等在构建微服务中的实践 编者按:本文来自微信公众号“InfoQ”(ID:infoqchina),作者项超;36氪经授权发布。 今日头条当前后端服务超过80%的流量是跑在 Go 构建的服务上。微服务数量超过100个,高峰 QPS 超过700万,日处理请求量超过3000亿,是业内最大规模的 Go 应用。 Go 构建微服务的历程 在2015年之前,头条的主要编程语言是 Python 以及部分 C++。随着业务和流量的快速增长,服务端的压力越来越大,随之而来问题频出。Python 的解释性语言特性以及其落后的多进程服务模型受到了巨大的挑战。此外,当时的服务端架构是一个典型的单体架构,耦合严重,部分...阅读全文
# GMS 今天是2020年10月24日,一年一度的程序员节,把这个还在开发中的项目开源出来,感兴趣的朋友可以一起参与开发。如果有大神路过请多指教。 GMS是一款基于[gnet](https://github.com/panjf2000/gnet)网络框架开发的Golang RPC微服务框架。 ## 特点: **1:非常简单、学习成本极低。GMS处于初期阶段您想参与开发也非常简单。** 只要您之前使用过类似Gin、beego这样的web框架。就能快速上手,使用方法和这些web框架一样简单。 **2: 不用定义proto等协议文件。** 写proto文件不仅麻烦还容易出错。而且使用协议文件定义服务,最终在框架内部实现都要使用反射去调用目标方...阅读全文
在前一阵介绍单元测试的系列文章中,曾经简单介绍过wire依赖注入框架。但当时的wire还处于alpha阶段,不过最近wire已经发布了首个beta版,API发生了一些变化,同时也承诺除非万不得已,将不会破坏API的兼容性。在前文中,介绍了一些wire的基本概况,本篇就不再重复,感兴趣的小伙伴们可以回看一下:搞定Go单元测试(四)—— 依赖注入框架(wire)。本篇将具体介绍wire的使用方法和一些最佳实践。 本篇中的代码的完整示例可以在这里找到:wire-examples Installing go get github.com/google/wire/cmd/wire 复制代码Quick Start 我们先通过一个简单的例子,让小伙伴们对wire有一个直观的认识。下面的例子展示了一个简易w...阅读全文
ByteEdu 每日新闻(2019-03-15) Golang资料集Go最新资料汇总链接更改 http://www.byteedu.com/forum.php?mod=viewthread&tid=25 字节教育 Go语言初学者的学习资料 http://www.byteedu.com/forum.php?mod=viewthread&tid=191&extra=page%3D1 关于海外支付SDK的集成方案与总结 http://www.byteedu.com/forum.php?mod=viewthread&tid=330&extra= LollipopGo开源游戏服务器源码剖析(视频教程) http://www.byteedu.com/forum.php?mod=viewthread&ti...阅读全文
golang单元测试 要开始一个单元测试,需要准备一个 go 源码文件,在命名文件时需要让文件必须以_test结尾 单元测试源码文件可以由多个测试用例组成,每个测试用例函数需要以Test为前缀,例如: func TestXXX( t *testing.T ) 测试用例文件不会参与正常源码编译,不会被包含到可执行文件中。 测试用例文件使用 go test 指令来执行,没有也不需要 main() 作为函数入口。所有在以_test结尾的源码内以Test开头的函数会自动被执行。 单元测试文件 (*_test.go) 里的测试入口必须以 Test 开始,参数为 *testing.T 的函数。一个单元测试文件可以有多个测试入口。 使用 testing 包的 T 结构提供的 Log() 方法打印字符串。 ...阅读全文
关于Dart与Golang在chrome浏览器中嵌入一个Dart虚拟机,可以用Dart语言开发Web APP。虽然Dart声称通过Dart2JS可以编译成纯JS文件可运行在各个浏览器商,但一个Hello world的JS编译就让人成了笑话。但不排除未来的精进优化,要知道Dart的负责人是V8引擎负责人,V8是Chrome浏览器中的JS引擎,这是一款优秀的速度闪电的JS引擎,所以Dart JS技术的优化精进似乎不是问题。Dart更像JAVA。而JAVA要么通过J2SE运行在操作系统桌面上,要么通过J2EE运行在服务器上,要么通过J2ME运行在手机上,还没有JAVA运行在浏览器中(早期Applet不说)。从语法复杂性来说,我个人的感受是Dart不亚于JAVA。现在Android手机本地App用J...阅读全文
Project Name Stars Forks Description beego 12195 2810 beego is an open-source, high-performance web framework for the Go programming language. gin 11602 1357 Gin is a HTTP web framework written in Go (Golang). It features a Martini-like API with much better performance -- up to 40 times faster. If you need smashing performance, get yourself some Gi...阅读全文
Gin 是一个用 Go 语言开发的 Web 框架,提供类 Martini 的 API,但是性能更好。因为有了 [httprouter](http://www.oschina.net/p/httprouter) 性能提升了 40 倍之多。 
$ cat test.go
packa...阅读全文
要点 Go的自动化测试框架比JUnit、PyUnit等更加轻量级。要点如下: - 测试代码以xxx_test.go方式命名 - 测试代码中import “testing” - 测试函数形如 func Testxyz(t *Testing.T) {…} - 执行测试:go test 示例 比较要创建一个mymath package。 mymath.go package mymath func Add(x, y int) int { return x + y } func Minus(x, y int) int { return x - y } mymath_test.go package mymath_test import "mymath" import "testing" func Tes...阅读全文
每一种语言都会有一个定义良好的语法结构.函数是由申明和语句构成的,而语句又是由表达式构成的.经常用来描述语法的是BNF[1].Go使用的是相应的变种,在Go的官方文档中有很详细的spec描述[2].一门语言的设计其实就在这份描述当中,这是一门语言的语法和规则的定义,是表面程序员可以接触到的部分,而运行时却可以改变,这相当于和程序员约定的接口,只要按照这个接口编写源代码,就能产生正常可以编译的二进制文件,但是最后的二进制文件如何运行,对于每条语法转换成了什么,有什么优化都是编译器优化和运行时的工作.所以一门语言必须有一个详尽的描述,这和一个网络协议一样,是非常重要的部分. 语法分析器也是有工具可以自动生成的,比如yacc[3].我在之前提到过使用工具的利弊,就不赘述了. 本文主要看一下Go的语...阅读全文
goWeb中有像mybatis这样好用的orm框架...阅读全文
我们在开发的过程中往往需要记录日志,记录日志可以帮我们追踪错误,追踪业务需求。那么gin中是如何记录日志的呢? package main import ( "github.com/gin-gonic/gin" "io" "os" ) func main() { // 记录到文件。 f, _ := os.Create("gin.log") gin.DefaultWriter = io.MultiWriter(f) router := gin.Default() router.Run() } 我们自定义了log的记录方式,但是这种方式国语简单,不利于我们收集错误信息。在这里为大家推荐一个记录日志的库github.com/sirupsen/logrus。logrus是目前Github上star数量...阅读全文
招聘岗位:全栈工程师 会计 创客教师岗位:全栈工程师岗位职责1.负责公司产品中服务器端的研发、优化和维护工作;2.负责公司产品中前端页面的开发、优化和维护工作,包括微信小程序和Web前端等;3.参与公司产品的业务,框架选型等调研及讨论工作;岗位要求1.统招本科及以上, 计算机相关专业,如软件工程,计算机工程与技术等;2.熟悉并精通至少一种常用编程语言(JAVA/Python/Golang等);3.熟悉HTML/CSS/JS/AJAX等前端技术,有丰富前端开发经验者优先;4.熟悉Linux常用命令,有一定运维经验者优先;5.了解常用MySQL命令,有查询语句优化经验者优先;5.了解Nginx/Tomcat/Apache等至少一种者优先;6.了解Spring Boot等框架者优先;了解熟悉分布式...阅读全文
 每一天,或者是每隔几天,总有人来到 [/r/golang](https://www.reddit.com/r/golang/) ,并询问些类似如下的问题“哪个框架是最好的?”。我认为我们应该尝试提出这个问题,至少以一种容易理解的方式提出。你不应该使用框架。 对于一个复杂的问题,这也许是一个非常简洁的答案。这并不是说你任何时候都不应该使用框架。众所周知,当我们开发软件的时候,有这么一种趋势,慢慢形成适应通用开发的模式,并且一次又一次地加快开发同样的东西。它试着尽可能的消除重复代码。 ## 标准库或 ...阅读全文
2017年我们公司需要快速迭代一款产品,当时,我们团队的后端框架是spring mvc ,该框架结构清晰,上手快,但是由于我们的产品迭代速度快,底层数据库操作接口变动频繁,导致service层工作量巨大,不胜其烦。另外,随着项目的成长,代码量越来越大,项目启动越来越慢,严重影响了开发调试速度。在这种情况下,我们希望寻找一种新的框架或编程语言,我们期望他具备调试简单,上手快,启动速度快,保密性高,以及适用于高并发及web编程,性能优越等优点。当时手上备选框架有spring boot和golang,综合比较,在巨大的遗憾中,我们选择了springboot,相关选型参考信息如下。1、从功能满足度比较在启动该产品研发时,我们梳理了自己的需求,主要在三个方面,一是支持高性能的restful api服务...阅读全文
erguotou "二锅头"是基于FastHttp的Http Web框架 品鉴、品味、品质,红星二锅头采用传统工艺传承八百年,国粹流芳,红星青花瓷,国粹二锅头...阅读全文
Gin Web Framework Gin是为速度而生的框架,相比较其它框架,它的速度是最快的,与此同时,它还提供了中间件功能,我们可以轻松集成权限验证,记录压缩等功能。 Gin框架对于开发api接口非常适合,它提供了丰富的渲染机制,同时也可以作为web后端处理应用。同时它也是支持扩展的,已经有很多第三方扩展可以直接拿来使用。 盘点十大主流go web框架 Revel 我们知道作为编译型语言,每次修改都需要重新编译对我们开发非常的不友好,庆幸地是,Revel提供了热加载机制,只要我们修改了源代码,它就会自动重新编译,非常方便我们开发测试。 盘点十大主流go web框架 Revel为开发者提供了一整套web开发工具,从路由,session会话到缓存,测试,可以说我们常用的功能Revel都能为我...阅读全文
每种语言都有自己最擅长的领域,Golang 最适合的领域就是服务器端程序。 做为服务器端程序,需要考虑性能同时也要考虑与各种语言之间方便的通讯。采用http协议简单,但性能不高。采用TCP通讯,则需要考虑封包、解包、粘包等等很多因素,而且想写个高效的TCP服务,也很难。 其实,对于此类需求,采用RPC(Remote Procedure Call Protocol)编程最靠谱。使用 RPC 编程被认为是在分布式环境中运行的客户机和服务器应用程序之间进行可靠通信的最强大、最高效的方法之一。 Golang内置了对RPC支持,但只能适用于go语言程序之间调用,且貌似序列化、反序列化性能不高。如果go语言能使用Thrift开发,那么就如虎添翼了。可惜,thrift虽然很早就包含了golang的代码,但...阅读全文
全称:德方智链科技(深圳)有限公司成立时间:2018年5月8日招聘岗位:区块链开发工程师薪资待遇:30-50k招聘需求: 岗位职责 1. 负责基于HyperLedger Fabric的金融产品的设计和研发 2. 开发基于区块链的资产交易金融平台和基础框架 3. 跟踪金融领域相关技术变化,并应用于实际研发产品中。 任职资格: 1. 8年以上互联网及金融应用开发经验,或相关的工作经历; 2. 有2年以上Hyperledger Fabric商用项目的实际开发经验 3. 精通Hyperledger Fabric 和 它的底层架构 4. 熟悉共识算法或一致性算法者,如PoW、PBFT、PoS、DPos、RPCA、Raft熟悉各种数据结构和算法,对密码学,安全协议和加密算法有研究; 5. 熟悉 Linu...阅读全文
rpcx是一个类似阿里巴巴 [Dubbo](https://www.oschina.net/p/dubbo) 和微博 [Motan](https://www.oschina.net/p/motan-weibo) 的分布式的RPC服务框架,基于Golang net/rpc实现。 [](https://github.com/smallnest/rpcx/blob/master/_documents/throughput.png) [ 2017年,你是否有一个小目标,打算在新的一年事业更上一层楼、代码写的更优美、对互联网生态拥有更多宏观的战略性了解? 小编精心挑选2016云栖大会、历届在线技术峰会、云栖技术直播核心资料,只把最好的呈现给你!因为资料集合过于庞大,所以分批放出,随时关注社区,可以看到全套400余份资料合集哦! 大数据、人工智能、云计算、互联网通用技术……全球技术热点一网打尽,资深专家亲授核心技术。 满足你对各类热点技术的学习需求,下载下来存起来,足够看一年的了! 版权公告:资料版权归属为云栖社区,转载请注明出处。未经允许,不可商用。如发现违规违法使用,保留追究法律责任的权利。 资料获取攻略:使用阿里云账号或淘宝账号登录后,点击...阅读全文
Golang教科书般的web框架 今天给大家分享的是由杭州的工程师徐佳军开源的web router 框架,应该来说,在golang的世界里,最不缺的就是web框架,在github上搜索关键词 “ golang web ” 可以看到很多的开源项目,数不胜数,那今天推荐这款框架的理由是什么?推荐理由简单,就是简单,框架简单到只有两个.go文件,麻雀虽小,五脏俱全xujiajun/gorouteris a simple and fast HTTP router for Go. It is easy to build RESTful APIs and your web framework.。FeaturesFast - see BenchmarksURL parametersRegex parame...阅读全文
在使用lua进行服务器端游戏逻辑开发时,发现了LUA的各种不方便的地方,不能编译检查,不能断点调试,笔误的函数和变量不提示出错等等,所以有了全部使用go来做服务器端开发的想法。 如果不需要热更新,那使用go开发服务器逻辑是很轻松的,而游戏服务器特别是页游,一般都需要支持热更新,所以我决定使用go的动态链接库方式来实现,也就是底层框架是go,上层逻辑是go的动态链接库。go原生不支持动态链接库,在查阅了很多文章之后,决定使用gccgo来实现。 经过了大约一周的时间,终于把框架搭建起来了,期间遇到了一些比较坑的问题,记录在此,以便以后不会再犯,也可以帮助其他有同样需求的同学快速搭建这样的框架。 这个例子需要了解go目录构建和环境变量的知识,如果不了解,可以先看看网上的文章,很简单的。 整个框架搭...阅读全文
gin是Go语言写的一个web框架,API性能超强,运行速度号称较httprouter要快40倍。封装比较优雅,API友好,源码注释比较明确,具有快速灵活,容错方便等特点。 Github地址:https://github.com/gin-gonic/gin gin的安装:go get github.com/gin-gonic/gin API gin.Default() 创建路由 gin.DisableConsoleColor() 禁用控制台颜色 gin.SetMode() 设置gin模式。参数可以传递:gin.DebugMode、gin.ReleaseMode、gin.TestMode。 路由的方法为:假定我们先创建一个路由 router := gin.Default() 获取的方式可以为 ...阅读全文
go语言中日志框架log4go用法 [plain] view plaincopyprint? package main import ( l4g "github.com/alecthomas/log4go" ) func main() { l4g.AddFilter("stdout", l4g.DEBUG, l4g.NewConsoleLogWriter()) //输出到控制台,级别为DEBUG l4g.AddFilter("file", l4g.DEBUG, l4g.NewFileLogWriter("test.log", false)) //输出到文件,级别为DEBUG,文件名为test.log,每次追加该原文件 //l4g.LoadConfiguration("log.xml")//使...阅读全文
- 课程主页:http://t.cn/RzPWX6M - 网易云课堂:[在线学习](http://study.163.com/course/courseLearn.htm?courseId=510006#/learn/video?lessonId=1051887&courseId=510006) ## 课时大纲 [00:00] 框架简介 [05:31] 最简实例 [14:13] 扩展示例 [23:54] 小...阅读全文
本文中,我们将一同看看当今 Web 开发的发展趋势,给大家分享我对 2015 年及未来的一些看法、观察和预测。我从 2000 年就开始做 Web 技术方面的工作,而近几年主要是做云架构解决方案。作为一名 Web 开发者,我曾在 .Net、Node.js 和 Go 技术栈上开发 Web 应用和 Web 服务。最近,我将 Web 技术和开发趋势作为整体研究了一遍,在这里分享一下我的想法和观察结果。首先,让我分享一些我所观察到的可用性和体系结构目前的趋势。可用性的趋势如今,用户体验变得比以往更重要,响应式网页设计(RWD)也成为了网站必备的特性。RWD 能让最终用户在不同尺寸的设备上访问网站,包括手机和平板浏览器。有了 RWD 取代移动网站,我们便无需为移动用户单独开发额外的网站。特别是当我们需要...阅读全文
### 技术选型 框架: gin 日志处理: zap orm: gorm 优雅重启HTTP服务: gracehttp 测试框架: ginkgo ### 接口风格 RESTFUL ### 项目结构 * api - handler函数 * route - 路由注册 * model - 数据模型以及数据库操作 * doc - 接口文档 * log - 日志处理 * config - 配置文件 * tools - 公共工具类 * vendor - 项目依赖其他开源项目目录 * dist - 打包生成安装包的存放路径 * main.go - 程序执行入口 * Makefile 提供编译、打包、测试等功能的脚本文件 * ginkgo 二进制文件,容器内执行测试用例的时候需要使用的命令,请勿移除 * ju...阅读全文
有关自学的公开秘密俗话说:“开始回忆过去才标志进入老年”对应断言则是:“人类的进步根源在 — 一向没从历史中学到什么教训”结合起来理解, 应该就是:经验其实并没什么用?但历史故事却总是很有市场,那么俺就专注说说故事吧,私人的……每个好故事都必须狗血开篇从 Pascal 到 Python90 年代,大家如果看穿越小说就知道,那是中国开始腾飞的年代,计算机专业最火的年代。俺也无法逃避历史规律,又因为是第一批宅文化受洗者,从海南摄影美术出版社开始,深度沉迷在日本漫画/动画中,并且,在广州无意间看到深夜转播香港电视台的:“アキラ”,惊为天人;也进一步明确,3D 动画是趋势,所以,专业选择计算机及应用;以便日后转向 3D 动画制作,毕竟, 3D 动画是只能由电脑生成了嘛; 可以说, 当年的内心戏非常中...阅读全文
最近看了好多web 的框架,但是各种优缺点过多了,求推荐一个好的框架,能列出各个的优缺点更好!...阅读全文
CSDN开源夏令营已经过去十多天了,我的项目名称是“基于golang的dbus框架”,导师是Deepin的夏彬老师。这个项目吸引我的主要有两点:第一是因为我对Linux桌面比较感兴趣,通过完成这个项目可以了解Linux桌面的许多内部机制;第二是因为从我了解的知识来看,Go本来是为系统编程而生的,把它用在Linux桌面上十分有趣。 其实这次的开源夏令营并不能算是一个独立的项目,因为我的工作是在原有go-dbus代码的基础上完善使用体验,不过对我来说,要学习的东西还是很多的。过去的十几天我都在了解Go和D-Bus相关的知识,和导师沟通具体的方案。目前的工作目标主要是实现函数参数和结构体字段导出功能,希望能在七月份完成这个目标。 继续努力...阅读全文
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("/(.*)"...阅读全文