English |
中文版
A notebook that explains how to name a project or variable effectively. 在分布式系统、编排系统、任务调度系统 等复杂系统设计中,命名不仅是代码可读性的关键,也是系统架构表达的重要组成部分。以下是一份专业、系统化、可落地 的命名规范建议,涵盖分布式协调、任务编排、资源调度、状态管理、节点通信、弹性伸缩 等核心领域。
原则 说明 语义清晰 名称应准确表达其功能或职责,避免模糊词汇(如 Manager, Handler 单独使用时意义不明确)。 统一风格 同一模块或系统中使用一致的命名风格(如 Controller, Coordinator, Scheduler 等)。 结构化命名 推荐使用 {资源}{操作}{角色} 的结构化方式,如 JobScheduler, NodeReconciler。 领域术语优先 使用行业通用术语,如 Orchestrator, Scheduler, Reconciler, Controller, Agent 等。 区分同步与异步 如 SyncWorker vs AsyncWorker, SyncTask vs BackgroundTask。 区分状态与行为 如 NodeState vs NodeStateManager, JobStatus vs JobScheduler。
1. 分布式协调(Distributed Coordination) 单词 适用场景 示例 Coordinator 分布式协调器 TaskCoordinator, ClusterCoordinatorLeaderElector 领导选举机制 ETCDLeaderElector, RaftLeaderElectorLockManager 分布式锁管理 DistributedLockManager, ZooKeeperLockManagerMembershipManager 节点成员管理 ClusterMembershipManagerDiscoveryService 节点/服务发现 ServiceDiscovery, NodeDiscoveryConsensus 共识算法 RaftConsensus, PaxosConsensusBarrier 分布式屏障同步 DistributedBarrier, TaskBarrierRegistry 资源注册中心 ServiceRegistry, NodeRegistry
单词 适用场景 示例 Orchestrator 核心编排器 DeploymentOrchestrator, WorkflowOrchestratorReconciler 状态调和器(Kubernetes 风格) PodReconciler, StatefulSetReconcilerController 控制器 ReplicaSetController, DeploymentControllerPlanner 执行计划制定 ExecutionPlanner, ResourcePlannerDispatcher 任务分发器 TaskDispatcher, ActionDispatcherExecutor 任务执行器 RemoteExecutor, ContainerExecutorAgent 节点代理 NodeAgent, WorkerAgentWorker 工作节点 TaskWorker, ExecutionWorker
单词 适用场景 示例 Scheduler 通用调度器 JobScheduler, TaskSchedulerDispatcher 调度任务分发 ScheduleDispatcherPreemptionManager 优先级抢占管理 JobPreemptionManagerQueueManager 调度队列管理 PriorityQueueManagerSchedulerPolicy 调度策略 RoundRobinPolicy, LeastUsedPolicyNodeSelector 节点选择器 NodeSelector, AffinitySelectorResourceAllocator 资源分配器 CPUAllocator, GPUAllocatorSchedulerExtender 调度器扩展 CustomSchedulerExtender
4. 资源管理(Resource Management) 单词 适用场景 示例 ResourceManager 资源管理 ClusterResourceManager, NodeResourceManagerResourceMonitor 资源监控 MemoryMonitor, CPUUsageMonitorCapacityManager 容量管理 NodeCapacityManagerQuotaManager 配额管理 TenantQuotaManager, ResourceQuotaManagerAllocator 资源分配 IPAllocator, PortAllocatorProvisioner 资源供给 VolumeProvisioner, NodeProvisionerScaler 弹性伸缩 AutoScaler, ReplicaScaler
5. 任务与工作流(Task & Workflow) 单词 适用场景 示例 Job 任务单元 BatchJob, CronJobTask 子任务 MapTask, ReduceTaskWorkflow 工作流 DAGWorkflow, SequentialWorkflowStage 工作流阶段 ExecutionStage, ProcessingStageStep 工作流步骤 SetupStep, ExecutionStepAction 可执行操作 StartAction, StopActionPlan 执行计划 DeploymentPlan, ExecutionPlanPipeline 流水线 CI/CD Pipeline, DataPipeline
6. 状态与生命周期管理(State & Lifecycle) 单词 适用场景 示例 StateManager 状态管理 JobStateManager, TaskStateManagerLifecycleManager 生命周期管理 ContainerLifecycleManagerStatusReporter 状态上报 NodeStatusReporter, PodStatusReporterHealthChecker 健康检查 ServiceHealthChecker, NodeHealthCheckerReadinessProbe 就绪探针 HTTPReadinessProbe, ScriptReadinessProbeLivenessProbe 存活探针 TCPLivenessProbeStarter 启动器 PodStarter, ServiceStarterTerminator 终止器 JobTerminator, PodTerminator
类型 命名模板 示例 类名 {资源}{操作}{角色}JobScheduler, NodeReconciler接口名 I{操作}{资源}(C#)或 {Resource}{Operation}(Go)IScheduler, Scheduler, NodeSelector函数名 {动词}{资源}{方式}ScheduleJobNow, ReconcileNodeState变量名 {资源}{状态}{类型}jobStatus, lastScheduledTime
语言 推荐风格 Go 驼峰命名(首字母小写),如 nodeSelector, jobScheduler Java 驼峰命名(首字母小写),如 nodeSelector, jobScheduler C++ 驼峰命名或下划线命名,如 NodeSelector, job_scheduler Python 下划线命名,如 node_selector, job_scheduler Kubernetes 推荐使用 CamelCase,如 PodReconciler, StatefulSetController
📚 五、命名参考案例(Kubernetes 风格) 组件 命名 控制器 ReplicaSetController, DeploymentController调度器 DefaultScheduler, CustomScheduler调和器 PodReconciler, ServiceReconciler选择器 NodeSelector, AffinitySelector探针 LivenessProbe, ReadinessProbe管理器 ResourceManager, VolumeManager代理 Kubelet, NodeAgent执行器 ContainerExecutor, RemoteExecutor
在软件开发中,“同步”是一个广泛存在的概念,涉及并发控制、数据一致性、状态同步、资源协调等多个方面。为了帮助你更系统地命名与“同步”相关的模块、类、函数或变量,以下是一份同步领域命名建议指南 ,按不同场景和语义进行分类。
类型 描述 示例场景 并发控制 控制多个线程/协程/任务的执行顺序 互斥锁、信号量、屏障 数据同步 保证多个副本、系统、节点之间的数据一致性 数据库主从同步、缓存同步 状态同步 保持状态的一致性 UI 与模型同步、服务状态同步 事件同步 控制事件的触发顺序或响应逻辑 同步事件处理、等待事件完成 资源同步 协调多个组件对共享资源的访问 文件同步、共享内存同步 时间同步 保证多个节点的时间一致 NTP、时间戳同步 任务同步 控制任务的执行顺序或依赖关系 任务队列、依赖调度
单词 适用场景 示例 Sync 通用同步操作 SyncData, SyncManagerWait 等待同步完成 WaitForCompletion, WaitGroupLock 锁机制 MutexLock, ReadLockSemaphore 信号量控制 ResourceSemaphoreBarrier 屏障同步 TaskBarrierCondition / Cond 条件变量 ConditionVariableSynchronizer 同步协调器 StateSynchronizerCoordinator 协调多个同步操作 SyncCoordinator
单词 适用场景 示例 Replicator 数据复制 DatabaseReplicatorSyncer 数据同步器 CacheSyncer, FileSyncerUpdater 数据更新 StateUpdater, DataUpdaterRefresher 数据刷新 TokenRefresher, UIRefresherMerger 数据合并 DeltaMerger, ConflictMergerResolver 冲突解决 ConflictResolverReconciler 状态调和(Kubernetes 风格) ResourceReconcilerConsistencyChecker 一致性校验 DataConsistencyChecker
单词 适用场景 示例 StateSynchronizer 状态同步 UIStateSynchronizerStateManager 状态管理 SessionStateManagerSyncState 同步状态 SyncState, ReplicaSyncStateWatcher 状态监听 StateWatcher, VariableWatcherObserver 状态观察者 ModelStateObserverNotifier 状态变更通知 StateChangeNotifierTracker 状态追踪 ProgressTracker, SyncProgressTracker
单词 适用场景 示例 EventHandler 事件处理 SyncEventHandlerDispatcher 事件分发 SyncEventDispatcherListener 事件监听 SyncEventListenerNotifier 事件通知 SyncNotifierCompleter 事件完成通知 TaskCompleterTrigger 触发同步动作 SyncTrigger
单词 适用场景 示例 Clock 时间源 SystemClock, SyncClockTimeSynchronizer 时间同步 NTPSynchronizerTimestamp 时间戳处理 TimestampProviderDriftDetector 时钟漂移检测 ClockDriftDetectorSyncMonitor 时间同步监控 TimeSyncMonitor
单词 适用场景 示例 TaskScheduler 任务调度 SyncTaskSchedulerDependencyResolver 任务依赖 TaskDependencyResolverWorker 执行同步任务 SyncWorkerQueue 同步任务队列 SyncTaskQueueRunner 执行器 SyncTaskRunnerController 控制同步流程 SyncTaskController
场景 示例命名 通用同步 SyncManager, Synchronizer, SyncController数据同步 DataSyncer, CacheSyncer, FileSyncer状态同步 StateSynchronizer, UIStateSyncer并发控制 MutexLock, WaitGroup, Semaphore事件同步 SyncEventListener, SyncNotifier任务同步 SyncTaskQueue, SyncWorker, TaskSynchronizer时间同步 TimeSynchronizer, ClockDriftDetector
建议 说明 使用动词+名词结构 如 SyncData, WaitForCompletion 统一前缀/后缀风格 如统一使用 Synchronizer、Syncer、Controller 等后缀 避免模糊词汇 如 Manager, Handler 单独使用时意义不明确,建议结合上下文 结合领域术语 如在分布式系统中使用 Reconciler、Replicator 等术语 区分同步与异步 如 SyncWorker vs AsyncWorker,SyncTask vs BackgroundTask
类型 模板 示例 类名 {资源}{操作}{角色}DataSyncer, StateSynchronizer函数名 {动词}{资源}{方式}SyncDataNow, WaitForSyncComplete变量名 {资源}{状态}{类型}syncInProgress, lastSyncTime接口名 I{操作}{资源}(C#)或 {Resource}{Operation}(Go)ISyncHandler, Syncable
🛠 工具类命名补充(Utility / Tooling) 在软件系统中,工具类通常用于封装通用功能、辅助操作、数据处理、调试支持等。以下是一些常用的英文词汇,适用于命名工具类、辅助模块或函数。
单词 适用场景 示例 Utils / Utilities 通用工具函数集合 StringUtils, FileUtilsHelper 辅助类或函数 ConfigHelper, DBHelperTool / Toolkit 工具集或工具包 ImageTool, NetworkToolkitHandler 事件或请求处理 RequestHandler, EventHandlerAdapter 接口转换或适配 LegacyDataAdapter, HTTPAdapterWrapper 封装第三方接口或系统调用 CronWrapper, GRPCWrapperManager 资源管理 SessionManager, CacheManagerProvider 资源提供者 ConfigProvider, AuthProviderFactory 对象创建工厂 ConnectionFactory, LoggerFactoryBuilder 构造器模式 QueryBuilder, ApplicationBuilderRegistry 注册中心 PluginRegistry, TypeRegistryController 控制逻辑协调 JobController, FlowControllerDispatcher 事件或任务分发 EventDispatcher, TaskDispatcherLoader 数据或资源加载 ImageLoader, PluginLoaderResolver 解析逻辑 DNSResolver, TypeResolverValidator 数据校验 InputValidator, SchemaValidatorConverter 数据格式转换 JSONConverter, UnitConverterSerializer / Deserializer 序列化与反序列化 ProtobufSerializerMonitor 监控工具 SystemMonitor, HealthMonitorRecorder 数据记录 MetricRecorder, EventRecorder
在软件系统运行时状态的观测、透视、审查等场景中,以下英文词汇和隐喻可以作为命名参考,按类别整理:
单词 适用场景 说明 Monitor 实时监控 最通用术语,如 SystemMonitor Observer 观察者模式 用于事件驱动系统(如 EventObserver) Watcher 文件/状态变化监控 如 FileWatcher、ResourceWatcher Inspector 深度检查 强调诊断能力(如浏览器开发者工具的 Inspector) Profiler 性能分析 侧重性能数据采集(如 CPUProfiler) Sniffer 网络/数据包嗅探 如 NetworkSniffer Tracer 调用链追踪 分布式系统中常见(如 OpenTelemetry Tracer) Analyzer 数据分析 侧重后处理(如 LogAnalyzer) Auditor 安全/合规审查 强调审计功能(如 SecurityAuditor) Check 状态/健康检查 HealthCheck, LivenessCheckDetect 自动识别/检测 LanguageDetector, AnomalyDetectorTrace 调用链跟踪 TraceCollector, TraceExporterLog 日志记录 AccessLogger, AuditLoggerCapture 数据捕获 PacketCapture, ScreenCaptureDump 数据导出 HeapDump, ThreadDumpReport 报告生成 ErrorReporter, UsageReporterScan 扫描检查 PortScanner, CodeScannerProbe 探测系统状态 LivenessProbe, ReadinessProbeSurvey 综合性评估 SystemSurvey, CodeSurveyInspect 深度查看 ObjectInspector, RuntimeInspectorProfile 性能画像 MemoryProfiler, ExecutionProfilerAudit 安全/合规审查 AccessAuditor, PolicyAuditorVerify 校验验证 SignatureVerifier, DataVerifierValidate 数据验证 InputValidator, SchemaValidator
单词 适用场景 说明 Dashboard 驾驶舱 最常用的可视化聚合界面(如 Prometheus Dashboard) Console 控制台 命令行或集成工具(如 Kubernetes Dashboard) Lens 数据透视 强调“透过现象看本质”(如 DataLens) Radar 实时态势感知 用于全局监控(如 InfrastructureRadar) Scope 范围分析 可表示观测范围(如 NetworkScope) Hub 数据中心 表示集中式观测节点(如 ObservabilityHub) Vault 安全观测 强调加密/敏感数据监控(如 SecretVaultMonitor) Portal 入口 作为观测系统的统一入口(如 SystemPortal) Dashboard 可视化展示 MonitoringDashboard, MetricsDashboardViewer 数据展示 LogViewer, TraceViewerExplorer 数据浏览 APIExplorer, ObjectExplorerConsole 控制台 DeveloperConsole, DebugConsoleReporter 报告生成 TestReporter, AlertReporterNotifier 通知机制 EmailNotifier, SlackNotifierExporter 数据导出 PrometheusExporter, JSONExporterCollector 数据采集 MetricCollector, TraceCollectorAggregator 数据聚合 LogAggregator, MetricAggregatorPresenter 数据格式化展示 ResultPresenter, UIPresenter
单词 适用场景 说明 Telescope 远程观测 强调远距离或宏观视角(如 ClusterTelescope) Microscope 微观分析 表示深度细粒度分析(如 CodeMicroscope) Mirror 实时镜像 表示系统状态的实时映射(如 SystemMirror) X-Ray 透析诊断 强调穿透式分析(如 ServiceXRay) Pulse 健康状态 表示心跳/健康检查(如 SystemPulse) Net 网络拓扑 用于网络连接监控(如 ServiceNet) Orbit 轨道监测 表示周期性或全局覆盖(如 SatelliteOrbitMonitor) Grid 网格化观测 用于分布式网格系统(如 ServiceGrid)
单词 适用场景 说明 Stream 实时数据流 如 LogStream、MetricsStream Pipeline 数据处理链 表示观测数据的处理流程(如 ObservabilityPipeline) Buffer 数据缓存 表示临时存储观测数据(如 TraceBuffer) Channel 数据通道 用于模块间通信监控(如 EventChannel) Bridge 数据中继 表示不同系统间的观测数据桥接(如 MetricsBridge)
词汇组合 适用场景 说明 LiveView 实时视图 如 LiveSystemView InsightEngine 洞察能力 强调分析深度(如 PerformanceInsightEngine) WatchTower 全局监控 隐喻“瞭望塔”(如 CloudWatchTower) SignalHub 信号中心 表示观测信号的聚合(如 MetricSignalHub) TraceScope 追踪范围 结合追踪与范围分析(如 DistributedTraceScope)