go实现缓存组件
总结用golang从分析,设计到实现一个可用的缓存组件。
总结用golang从分析,设计到实现一个可用的缓存组件。
在UML的定义中,描述类和对象之间的关系,包括以下几种方式:依赖(Dependency
)、关联(Association
)、聚合(Aggregation
)、组合(Composition
)、泛化(Generalization
)和实现(Realization
)。现分别说明如下:
golang是强类型语言,在赋值和解析过程中需要先定义好数据类型,否在会报类型错误,下面总结在处理数据库表时遇到字段为空或零值的情况
golang tool chains 提供了很多好用的工具, 但是如果直接安装的话,大多数需要翻墙才能安装, 而且比较麻烦; 本文记录一种不需要翻墙就能顺利安装相应的工具的方法.
Golang 提供了database/sql
包用于对SQL数据库
的访问, 作为操作数据库的入口对象sql.DB
, 主要为我们提供了两个重要的功能:
尽管go1.7.3编译生成的可执行程序已经很小了,但是通过编译参数控制还能编译出更小的可执行文件,总结如下,
将mac自带的vim7.3 升级到vim8.0
在ticker
和goroutine
组合使用中当调用ticker.Stop()
关闭ticker
之后,相应的goroutine
中的ticker.C
并没有停掉,下面总结一种优雅的方式关闭ticker
.
golang这边将map
结构序列化通常采用json.Marshal
和json.Unmarshal
来做,但是在php server端还需要做json
反序列化解析才能用, 用golang模拟表单提交, php server端则非常方便提取相应的数据字段.
在Ubuntu16.04
上, 安装php7
的redis
扩展, 记录安装过程。