时序数据库 InfluxDB(二)
RP
先回顾一下 RP 策略( retention policy ),它由三个部分构成:
- DURATION:数据的保留时长。
- REPLICATION:集群模式下数据的副本数,单节点无效。
- SHARD DURATION:可选项,shard group 划分的时间范围。
前两个部分没啥好说的,而 shard duration 和 shard group 的概念你可能会感到比较陌生。
先回顾一下 RP 策略( retention policy ),它由三个部分构成:
前两个部分没啥好说的,而 shard duration 和 shard group 的概念你可能会感到比较陌生。
数据库种类有很多,比如传统的关系型数据库 RDBMS( 如 MySQL ),NoSQL 数据库( 如 MongoDB ),Key-Value 类型( 如 redis ),Wide column 类型( 如 HBase )等等等等,当然还有本系列文章将会介绍的时序数据库 TSDB( 如 InfluxDB )。
Golang 中的 error 是一个内置的特殊的接口类型:
|
|
在 Go 1.13 版本之前,有关 error 的方法只有两个:
errors.New
:
|
|
fmt.Errorf
:
|
|
这两个方法都是用来生成一个新的 error 类型的数据。
Garbage Collection( GC )也就是垃圾回收到底是什么?内存空间是有限的,诸如变量等需要分配内存才能存储数据,而当这个变量不再使用的时候就需要释放它占用的内存,这就是垃圾回收。
本文翻译自: https://betterprogramming.pub/is-node-js-really-single-threaded-7ea59bcc8d64
CPU密集型任务会阻塞 Node.js 吗?
让我们使用加密任务做个简单测试:
如图所示,连续执行四次加密任务,打印耗时,结果会发生什么?
文本翻译自: https://blog.logrocket.com/how-javascript-works-optimizing-the-v8-compiler-for-efficiency
理解 JavaScript 是如何工作的对于编写高效的 JS 大有帮助。
V8 执行 JS 分为三个阶段:
第一个阶段并不是文本的讨论范围,第二三阶段对于编写优化 JS 有直接影响。
RPC 是什么?Remote Procedure Call ,远程过程调用,一种通信协议。你可以理解为,在某台机器上调用另外一台机器上的服务或方法。
应用服务对外可以提供 REST 接口以供进行服务的调用,那么对于分布式系统内部的微服务之间的相互调用呢?REST 的方式仍然可行,但是效率不高,因此 RPC 出现了。
自从 Go v1.11 版本之后 Go modules 成了官方的包管理方式,与此同时还有一个 Go module proxy
,它到底是个什么东西?顾名思义,其实就是个代理,所有的模块和依赖库都可以从这个代理上下载。
文本翻译自: https://itnext.io/the-top-10-most-common-mistakes-ive-seen-in-go-projects-4b79d4f6cd65
本文将会介绍 Go 开发中十种最常犯的错误,内容不算少,请耐心观看。
示例:
|
|
示例中使用了 iota 创建了枚举值,其结果就是:
Dockerfile 是用来构建 docker 镜像的配置文件,语法简单上手容易,你可以很轻松的就编写一个能正常使用的 Dockerfile ,但是它很有可能还不够好,本文将会从细节上介绍一些 tips 助你实现最佳实践。