temporal 代码阅读记录
所属分类 temporal
浏览量 643
temporal server grpc 接口实现
AdminHandler gRPC handler interface for adminservice
WorkflowHandler gRPC handler interface for workflowservice
Handler gRPC handler interface for historyservice
Handler gRPC handler interface for matchingservice
temporal/service/frontend/adminHandler.go
temporal/service/frontend/workflowHandler.go
temporal/service/history/handler.go
temporal/service/matching/handler.go
DLQMessageHandler is the interface handles namespace DLQ messages
DLQ messages ?
DLQ(Dead Letter Queue) ?
temporal/common/persistence/dataInterfaces.go
// ClusterMetadataManager is used to manage cluster-wide metadata and configuration
ClusterMetadataManager interface {
Closeable
GetName() string
GetClusterMembers(request *GetClusterMembersRequest) (*GetClusterMembersResponse, error)
UpsertClusterMembership(request *UpsertClusterMembershipRequest) error
PruneClusterMembership(request *PruneClusterMembershipRequest) error
ListClusterMetadata(request *ListClusterMetadataRequest) (*ListClusterMetadataResponse, error)
GetCurrentClusterMetadata() (*GetClusterMetadataResponse, error)
GetClusterMetadata(request *GetClusterMetadataRequest) (*GetClusterMetadataResponse, error)
SaveClusterMetadata(request *SaveClusterMetadataRequest) (bool, error)
DeleteClusterMetadata(request *DeleteClusterMetadataRequest) error
}
temporal/common/util.go
// WorkflowIDToHistoryShard is used to map namespaceID-workflowID pair to a shardID
func WorkflowIDToHistoryShard(
namespaceID string,
workflowID string,
numberOfShards int32,
) int32 {
idBytes := []byte(namespaceID + "_" + workflowID)
hash := farm.Fingerprint32(idBytes)
return int32(hash%uint32(numberOfShards)) + 1 // ShardID starts with 1
}
上一篇
下一篇
GO json 序列化与反序列化
protobuf3二进制数据转java对象
PostgreSQL 连接信息查询
temporal namespace 信息获取 关键代码及堆栈信息
go.sum 生成
go google uuid 例子