什么是工作流

1. 核心定义 工作流是对目标实现过程的效率化拆解与有序组织,通过: 任务分解:将复杂行为拆解为简单任务单元 流程编排:建立任务间协作规则,逼近全局最优路径 2. 两大设计哲学 分而治之(Divide and Conquer) 把大任务拆解为可管理的小任务 自动协调(Orchestration) 让小任务按预定规则自动流转 从生物层面来看,器官功能模块化分工即为拆分,生命活动的行为就是组合。 从企业层面来看,企业岗位即为拆分,同事协作就是组合。 从微服务架构来看,微服务解耦即为拆分,服务间互相调用就是组合。 让一个人手搓原子弹,让一百个人做一道菜,都是荒唐之举,拆分过粗,无法形成并行;拆分过细,则会引入不必要的沟通成本和冗余的资源调度。 3. 拆分粒度控制原则 | 维度 | 核心关注点 | 评估方法 | |———————|————————————-|——————————| | 任务复杂度 | 流程环节数量、分支路径、异常概率 | 任务分解树分析 | | 执行单元效能 | 资源占用率、响应延迟、容错能力 | 单元性能基线测试 | | 接口稳定性 | 协议一致性、数据格式、调用频率 | 接口兼容性测试 | | 依赖强度 | 同步/异步比例、超时阈值、回滚机制 | 依赖关系拓扑分析 | 4. 流程设计思路

April 29, 2024 · 1 min

基于docker构建Redis Cluster

1. 拉取 Redis 镜像 使用以下命令拉取 Redis 6.2 版本镜像(选了一个较为稳定的版本): 1 docker pull redis:6.2 2、创建配置文件 比如在服务器的用户目录下/home/w/(俺的服务器用户目录) 1 2 3 4 5 6 7 8 9 10 11 mkdir redis_cluster cd redis_cluster mkdir bin mkdir conf mkdir data cd data mkdir node-1 mkdir node-2 mkdir node-3 mkdir node-5 mkdir node-6 conf目录创建配置文件vim redis-node-1.conf ,依次6个文件redis-node-1.conf redis-node-2.conf redis-node-3.conf redis-node-4.conf redis-node-5.conf redis-node-6.conf 1 2 3 4 5 6 7 8 9 10 11 12 13 bind 0.0.0.0 protected-mode no cluster-enabled yes cluster-config-file nodes-7000.conf cluster-node-timeout 5000 cluster-announce-ip 192.168.1.6 cluster-announce-port 7000 cluster-announce-bus-port 17000 user r_user on >read123 ~* +@read ~* -@write ~* -@admin user rw_user on >write123 ~* +@read ~* +@write ~* -@admin user admin on >admin123 ~* &* +@all user default off 3、创建脚本 创建初始化脚本 vim init_redis.sh ...

April 28, 2024 · 2 min