- 博客(100)
- 资源 (1)
- 收藏
- 关注
原创 Golang Code Review
导入多种类型的包,建议以「标准库」>「依赖库」>「本地包」的顺序排序,使用 goimports -w -local。静态代码检查:集成常用的代码检查工具,并提供统一的配置入口和输出格式。for 循环里面使用 Goroutine。. 会将 import 自动排版。
2023-12-16 09:39:02
281
1
原创 Temporal 服务限制说明
最大字符数:64可以为每个命名空间创建的时态云中每种类型的自定义搜索属性bool:20double:20datetime:20int:20keyword:20text: 5有关可以创建的自定义搜索属性的数量和大小限制的更多信息,请参阅自定义搜索属性限制。
2023-12-12 17:35:03
327
原创 Temporal 常见 F&Q 速查
Temporal workflow 数据默认保留三天(Namespace 维度),需调整数据保留时限(目前最大支持 30 天)翻译下:当在没有可执行的 Workflow 任务的时,Worker 会长轮询超时(Go SDK为70)警告,属于正常日志。解决:连接失败,请检查获取 temporal client 的代码。temporal 默认是没有开启 schedule 的,需。解决:没找到链接资源,需检查服务发现相关代码再次重试即可。针对非预期重试失败,解决偶然性问题的,可支持。(1)指定的时间点没有触发。
2023-12-12 17:33:12
425
原创 Temporal 的资源隔离和可用性介绍
每个 Worker 会设置一个 Task Queue 以及配置信息,通过 Task Queue 可以实现业务间的隔离,绑定同一个 Task Queue 可以作为云效上的一个服务组,支持扩缩容,可以通过队列内任务的情况以及服务组机器的负载情况调整容器数量。也就是无论你把这个Workflow设置成执行几秒还是几年,无论系统负载如何,无论发生任意故障,都不会影响Workflow的执行。同时Workflow之间是并行去执行的,之间互不影响,如果Workflow之间需要通信的话,会通过消息传递的方式来进。
2023-12-12 17:30:50
180
原创 Temporal 部署
frontend history matching 在创建服务时选 GRPC 服务,worker 选择其他 (它在某个版本后不会暴露 GRPC 端口),然后客户端服务用 GRPC + 公司的服务发现连到 frontend 即可。pnpm build:server 生成 assets 文件,否则报 ui/assets 的 all:assets 找不到。推荐 CPU 资源量 = floor(v/4)推荐 CPU 资源量 = floor(v/2)推荐内存资源量 = floor(v/2)操作部署前请仔细阅读。
2023-12-12 17:29:31
1743
原创 常见的工作流编排引擎
Go: Cadence(Cadence由Uber开发并开源,Maxim Fateev是Cadence的主架构师)、Temporal(Maxim Fateev为了推广Workflow编排引擎的商业化,另立门户创建了Temporal)、工作流通常适用于,有状态的、异步、长时间执行等特性的业务场景,比较典型的场景包括。工作流框架还是比较多的,按照语言分类的话,有。开源,star: 29.1k,近1天有更新。开源,star: 6.8k,近1天有更新。针对我们自身的开发效率、支撑能力、稳定性。云效部署、流水线发布。
2023-12-12 17:27:01
1121
原创 Temporal 工作流超时篇
该命令包含各种元数据,包括活动类型 (SimpleActivity)、活动任务队列 (sampleTaskQueue)和活动 ID。通常大于 StartClose 和 ScheduleToStart 超时的总和(RetryPolicy.MaximumAttempts>1 时启用),建议使用Schedule-To-Close Timeout来限制重试次数,而不是调整最大尝试次数。接收到命令后, Temporal 服务器将一个活动任务添加到 sampleTaskQueue 活动任务队列。(不建议),监控使用。
2023-12-12 17:25:57
408
原创 03 Temporal 详细介绍
在后端开发中,大家是否有遇到如下类型的开发场景需要处理较多的异步事件需要的外部服务可靠性较低需要记录保存某个对象的复杂状态在以往的开发过程中,可能更多的直接使用数据库、定时任务、消息队列等作为基础,来解决上面的问题。然而即便如此,在代码开发中,也会有很多代码跟业务无关,比如 外部服务低可靠性情况下的重试,多异步事件下的程序逻辑组织等。最终会影响开发效率,并且可能会降低代码后期的维护性。针对上面的场景,抽象为工作流模式的话,可以减轻开发成本以及维护成本。
2023-12-12 17:25:00
1155
原创 01 了解 Temporal
本文详细介绍了 Temporal 里的几个核心概念,如果有想法就来快速试试吧 >>02 快速上手(Quick Start)篇,更多详细资料参考 >>03 Temporal 详细介绍篇或官网。
2023-12-12 17:16:49
690
原创 protobuf详解
1 protobuf 简介protobuf(protocol buffer) 是谷歌内部的混合语言数据标准。通过将结构化的数据进行序列化(串行化),用于通讯协议、数据存储等领域和语言无关、平台无关、可扩展的序列化结构数据格式。我们说的protobuf通常包括下面三点: 一种二进制数据交换格式。可以将 C++ 中定义的存储类的内容与二进制序列串相互转换,主要用于数据传输或保存 定义了一种源文件,扩展名为.proto(类比.cpp文件),使用这种源文件,可以定义存储类的内容 ...
2022-05-09 16:23:56
2485
原创 聊聊 go.sum
1.为什么要引入go.sum目录1.为什么要引入go.sumGOPATH(go1.5 版本之前)vendor(go1.5 版本)2.go.sum的内容3.GOSUMDB原理先来看下go的包管理发展历史GOPATH => vender => go moduleGOPATH(go1.5 版本之前)标准库:$GOROOT/src/目录下 第三方库:$GOPATH/src/目录下 项目私有库:$GOPATH/src/目录下编译时会去 $...
2021-12-29 23:47:47
9575
1
原创 安装Homebrew、Python3
Homebrew/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"报错fatal: unable to access 'https://github.com/Homebrew/homebrew-core/': LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54Error: Failure while execu
2021-11-21 14:24:18
215
乡镇银行管理信息系统HTML(cms管理系统模板_后台)
2018-01-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人