golang事件机制

源码地址 https://github.com/slclub/goevents 概述 事件package。 我们可以自由灵活的使用事件,支持串行事件,并行事件; 且可以将串行事件 按定义的模块去触发. 事件函数的自定义参数无限制,但没有返回值。具体执行事件灵活自定义,用On 类函数接口注入到goevents。 可以灵活的绑定事件队列的参数。针对事件去绑定,或者,统一触发事件之前去绑定,或者混合着使用。单个绑定的优先级会更高一些 API English Doc 获取...阅读全文

2017-03-23 15:15:32

今日头条用Go建千亿级微服务 分析详细,适合新手理解概念[转载的]

今日头条当前后端服务超过80%的流量是跑在 Go 构建的服务上。微服务数量超过100个,高峰 QPS 超过700万,日处理请求量超过3000亿,是业内最大规模的 Go 应用。 Go 构建微服务的历程 在2015年之前,头条的主要编程语言是 Python 以及部分 C++。随着业务和流量的快速增长,服务端的压力越来越大,随之而来问题频出。Python 的解释性语言特性以及其落后的多进程服务模型受到了巨大的挑战。此外,当时的服务端架构是一个典型的单体架构,耦合严重,部分独立功能也急需从单体架构中...阅读全文

2018-08-04 11:41:12

详解CSS的Flex布局

> 本文由云+社区发表 Flex是Flexible Box 的缩写,意为"弹性布局",是CSS3的一种布局模式。通过Flex布局,可以很优雅地解决很多CSS布局的问题。下面会分别介绍容器的6个属性和项目的6个属性。每个属性会附上效果图,具体实现代码会以github路径形式更新于此。 # 1.浏览器支持情况 可以[点击](https://www.caniuse.com/#search=flex)查看各浏览器的兼容情况 # 2.容器的属性 注意,设为 Flex 布局以后...阅读全文

2018-12-13 11:51:39

GOLANG TYPE 妙用,Interface 和C/C++高阶template ,UNIX上通过

type 是 go 语法里的重要而且常用的关键字,type 绝不只是对应于 C/C++ 中的 typedef。搞清楚 type 的使用,就容易理解 go 语言中的核心概念 struct、interface、函数等的使用。以下我用例子代码总结描述,请特别留意代码中的注释。 1、定义结构体 ```go // 结构体定义 type person struct { name string //注意后面不能有逗号 age int } func main() { ...阅读全文

2018-12-17 15:48:28

从前端界面开发谈微信小程序体验

> 本文由云+社区发表 > 作者介绍:练小习,2011年加入搜狐,负责搜狐相册的产品策划与前端开发。2015年后加入腾讯 ISUX (社交用户体验设计部),目前主要负责腾讯云的UI开发工作,专注于人机交互,有丰富的UI开发经验。 这段时间有幸加入了一个关于微信小程序的项目开发组,从无到有的根据文档自行学习了小程序的开发过程,前面已经有几位前辈的文章珠玉在前,我这里就先从前端界面的开发方面谈一谈小程序以及我所遇到的问题吧。 在结构和样式方面,小程序提供了一些常用的...阅读全文

2018-12-29 18:06:51

基于 Gin + GORM + Casbin + Ant Design React 实现的RBAC权限管理脚手架,目的是提供一套轻量的中后台开发框架,方便、快速的完成业务需求的开发。

- [在线演示地址](https://demo.tiannianshou.com) (用户名:root,密码:abc-123)(`温馨提醒:为了达到更好的演示效果,这里给出了拥有最高权限的用户,请手下留情,只操作自己新增的数据,不要动平台本身的数据!谢谢!`) - 项目地址:[https://github.com/LyricTian/gin-admin](https://github.com/LyricTian/gin-admin) ## 特性 - 遵循 RESTful API 设...阅读全文

2019-03-28 08:27:35

Go module 模式下解决“墙”问题(转)

go modules炒得火热,今早学习下,整体挺好的,入手快捷,只是在配置被墙掉的包时,发现有点点小坑,现与学友分享学习。 在测试Emitter时,需要用到"golang.org/x/net"包,go mod拉取不到的原因就不废话了。 试用 go mod edit 命令,有两个flag: 1、-require=path@version  :手动加入依赖包; 2、-replace=old[@v]=new[@v]:用新的包替换require里面的原包; help介绍还算...阅读全文

2019-04-10 14:27:30

[译]Go如何优雅的处理异常

原文:https://hackernoon.com/golang-handling-errors-gracefully-8e27f1db729f <font color=#FF0000>注:译文中`error`可以理解为异常,但Go中的`error`和Java中的异常还是有很大区别的,需要读者慢慢体会,所以为了方便阅读和思考,译文中的名词`error`就不翻译了。</font> ## 正文 ![](https://user-gold-cdn.xitu.io/2019/5/29/...阅读全文

2019-05-29 23:46:27

go Module 代理服务仓库及golang镜像

阿里: https://mirrors.aliyun.com/goproxy/ 官方: https://goproxy.io/ 中国:https://goproxy.cn 其他:https://gocenter.io golang 下载: https://gomirrors.org/ https://golang.google.cn/dl/阅读全文

2019-07-25 21:48:11

怎么对接个人收款支付接口(扫码支付)

实现个人收款是一件很麻烦的事,可以通过 PAYJX 支付平台 注册个人收款接口,帮助签约个人支付宝,微信支付接口(不需要营业执照),几分钟就可以开通,申请开通后,获取商户号和通信密钥,然后开始对接,上一章讲了收银台模式支付,本章主要说一下扫码支付 扫码支付请求步骤:  1.构建请求参数  2.POST 参数到请求地址  3.根据返回内容展示二维码  4.用户支付成功后接收异步通知  5.扫码对接 php代码如下:   <?php $...阅读全文

2019-07-30 22:36:32