GoVector:Go的矢量时钟记录库

时间:2024-05-22 00:57:35
【文件属性】:

文件名称:GoVector:Go的矢量时钟记录库

文件大小:89KB

文件格式:ZIP

更新时间:2024-05-22 00:57:35

go distributed-systems instrumentation vector-clock shiviz

GoVector是用Go编写的矢量时钟记录库。 用于在没有集中式时钟的情况下对分布式系统中的事件进行排序。 GoVector实现矢量时钟算法,并提供功能丰富的日志记录和编码基础结构。 向量时钟事件是使用3个关键函数( PrepareSend , UnpackReceive和LogLocalEvent 。 PrepareSend编码用于网络传输的消息,更新GoVectors当地时间,并记录发送事件。 UnpackReceive解码来自网络的消息,将GoVectors本地时钟与接收到的时钟合并,并记录接收事件。 LogLocalEvent事件滴答时钟,并记录一条消息。 可以将该库添加到Go项目中,以在并发或分布式系统中生成与兼容的矢量时钟带时间戳的事件日志。 该库还可用于生成与兼容的事件日志。 GoVector与Go 1.11+兼容,并且需要支持。 govec/ :包含库及其所有依赖项


【文件预览】:
GoVector-master
----.gitignore(692B)
----go.mod(219B)
----test.sh(497B)
----.travis.yml(178B)
----.images()
--------shiviz_output.png(43KB)
--------GoVector.png(13KB)
--------PriorityLoggerOutput.png(17KB)
----govec.go(2KB)
----go.sum(3KB)
----LICENSE.txt(1KB)
----shiviz.sh(128B)
----README.md(9KB)
----example()
--------MessagePack()
--------ClientServer()
--------RpcClientServer()
----.gitattributes(378B)
----govec()
--------govec_test.go(3KB)
--------vclock()
--------vrpc()
--------govec.go(15KB)
--------example_test.go(4KB)
----tsviz.sh(145B)

网友评论