Go-Themis 项目使用教程
go-themisthemis-client go implementation项目地址:https://gitcode.com/gh_mirrors/go/go-themis
1. 项目的目录结构及介绍
Go-Themis 项目的目录结构如下:
go-themis/
├── benchmark
├── example
├── oracle
├── protobuf
├── .gitignore
├── .travis.yml
├── LICENSE
├── README.md
├── themis.pb.go
├── consts.go
├── lock.go
├── mutation_cache.go
├── mutation_cache_test.go
├── parallel_test.go
├── themis_lock.go
├── themis_lock_manager.go
├── themis_primary_lock.go
├── themis_rpc.go
├── themis_scan.go
├── themis_secondary_lock.go
├── themis_txn.go
├── txn.go
├── txn_hook.go
├── txn_test.go
└── util
目录介绍
benchmark
: 包含性能测试相关文件。example
: 包含示例代码,展示如何使用 Go-Themis。oracle
: 包含与 Oracle 相关的实现文件。protobuf
: 包含 Protocol Buffer 相关文件。.gitignore
: Git 忽略文件配置。.travis.yml
: Travis CI 配置文件。LICENSE
: 项目许可证文件。README.md
: 项目说明文档。themis.pb.go
: Protocol Buffer 生成的 Go 文件。consts.go
: 常量定义文件。lock.go
: 锁相关实现文件。mutation_cache.go
: 变更缓存相关实现文件。mutation_cache_test.go
: 变更缓存测试文件。parallel_test.go
: 并行测试文件。themis_lock.go
: Themis 锁相关实现文件。themis_lock_manager.go
: Themis 锁管理器相关实现文件。themis_primary_lock.go
: Themis 主锁相关实现文件。themis_rpc.go
: Themis RPC 相关实现文件。themis_scan.go
: Themis 扫描相关实现文件。themis_secondary_lock.go
: Themis 次锁相关实现文件。themis_txn.go
: Themis 事务相关实现文件。txn.go
: 事务相关实现文件。txn_hook.go
: 事务钩子相关实现文件。txn_test.go
: 事务测试文件。util
: 工具类文件夹。
2. 项目的启动文件介绍
Go-Themis 项目的启动文件通常是 main.go
或 example
目录下的示例文件。这些文件展示了如何初始化和使用 Go-Themis 库。
示例启动文件
package main
import (
"github.com/pingcap/go-themis"
"github.com/pingcap/go-hbase"
)
func main() {
c := hbase.NewClient("localhost:2181")
tx := themis.NewTxn(c, oracles.NewLocalOracle())
put := hbase.NewPut([]byte("Row1"))
put.AddValue([]byte("cf"), []byte("q"), []byte("value"))
put2 := hbase.NewPut([]byte("Row2"))
put2.AddValue([]byte("cf"), []byte("q"), []byte("value"))
tx.Put("tableName", put)
tx.Put("tableName", put2)
tx.Commit()
}
3. 项目的配置文件介绍
Go-Themis 项目的配置文件通常是 .travis.yml
和 README.md
。
.travis.yml
.travis.yml
文件用于配置 Travis CI 的持续集成流程,确保每次代码提交后都能自动运行测试和构建。
README.md
README.md
文件是项目的说明文档,包含项目的基本信息、安装指南、使用示例和贡献指南等。
# Go-Themis
Go-Themis 是一个用于在 HBase 上实现跨行/跨表事务的 Go 客户端,基于 Google 的 Percolator 模型。
##
go-themisthemis-client go implementation项目地址:https://gitcode.com/gh_mirrors/go/go-themis