@umacloud/knowledge 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (418) hide show
  1. package/00-governance/governance-capabilities.md +557 -0
  2. package/00-governance/knowledge-map.md +39 -0
  3. package/00-governance/maintenance-policy.md +76 -0
  4. package/00-governance/review-checklist.md +81 -0
  5. package/README.md +13 -0
  6. package/ai/01-standards/agent-development-complete.md +691 -0
  7. package/ai/01-standards/llm-application-complete.md +488 -0
  8. package/ai/01-standards/mlops-complete.md +798 -0
  9. package/ai/01-standards/prompt-engineering-complete.md +646 -0
  10. package/ai/01-standards/rag-architecture-complete.md +649 -0
  11. package/ai/02-playbooks/llm-evaluation-playbook.md +847 -0
  12. package/ai/03-checklists/ai-project-checklist.md +215 -0
  13. package/ai/04-antipatterns/ai-antipatterns.md +661 -0
  14. package/ai/05-cases/case-rag-production.md +147 -0
  15. package/ai/06-glossary/ai-glossary.md +162 -0
  16. package/ai/agent-evaluation-benchmark.md +53 -0
  17. package/ai/ai-agent-memory-context-management.md +41 -0
  18. package/ai/ai-cost-capacity-optimization-playbook.md +42 -0
  19. package/ai/ai-data-security-and-compliance-playbook.md +37 -0
  20. package/ai/ai-domain-index-and-checklist.md +40 -0
  21. package/ai/ai-governance-maturity-model.md +50 -0
  22. package/ai/ai-model-selection-and-routing-strategy.md +47 -0
  23. package/ai/ai-observability-and-oncall-runbook.md +52 -0
  24. package/ai/ai-rag-engineering-playbook.md +42 -0
  25. package/ai/ai-red-team-and-safety-evaluation.md +42 -0
  26. package/ai/ai-release-readiness-and-rollback-gate.md +42 -0
  27. package/ai/llm-agent-engineering-deep-dive.md +57 -0
  28. package/ai/prompt-and-tool-guardrails.md +52 -0
  29. package/api/01-standards/enterprise-api-standards.md +198 -0
  30. package/api/01-standards/rest-api-design-guide.md +63 -0
  31. package/api/02-playbooks/api-pagination-playbook.md +93 -0
  32. package/api/02-playbooks/graphql-production-playbook.md +176 -0
  33. package/api/03-checklists/api-review-checklist.md +55 -0
  34. package/api/04-antipatterns/api-antipatterns.md +112 -0
  35. package/architecture/01-standards/api-gateway-patterns.md +496 -0
  36. package/architecture/01-standards/cloud-native-patterns.md +644 -0
  37. package/architecture/01-standards/distributed-systems-patterns.md +591 -0
  38. package/architecture/01-standards/event-driven-architecture.md +595 -0
  39. package/architecture/01-standards/microservices-patterns-complete.md +968 -0
  40. package/architecture/01-standards/microservices-patterns.md +495 -0
  41. package/architecture/01-standards/system-design-interview.md +664 -0
  42. package/architecture/02-playbooks/microservices-patterns-playbook.md +137 -0
  43. package/architecture/02-playbooks/migration-playbook.md +780 -0
  44. package/architecture/02-playbooks/system-design-playbook.md +779 -0
  45. package/architecture/03-checklists/architecture-decision-checklist.md +297 -0
  46. package/architecture/04-antipatterns/architecture-antipatterns.md +417 -0
  47. package/architecture/05-cases/case-netflix-microservices.md +413 -0
  48. package/architecture/06-glossary/architecture-glossary.md +164 -0
  49. package/architecture/adr-template-and-examples.md +38 -0
  50. package/architecture/api-gateway-deep-dive.md +1291 -0
  51. package/architecture/configuration-management.md +1162 -0
  52. package/architecture/distributed-transactions.md +1220 -0
  53. package/architecture/microservices-complete.md +735 -0
  54. package/architecture/resilience-and-disaster-patterns.md +37 -0
  55. package/architecture/service-governance.md +1198 -0
  56. package/architecture/system-architecture-deep-dive.md +37 -0
  57. package/backend/01-standards/analytics-and-growth.md +65 -0
  58. package/backend/01-standards/api-and-error-conventions.md +120 -0
  59. package/backend/01-standards/application-layering-and-packaging.md +160 -0
  60. package/backend/01-standards/auth-implementation.md +104 -0
  61. package/backend/01-standards/backend-framework-idioms.md +74 -0
  62. package/backend/01-standards/background-jobs-and-async.md +66 -0
  63. package/backend/01-standards/caching-strategies-complete.md +390 -0
  64. package/backend/01-standards/config-and-observability.md +77 -0
  65. package/backend/01-standards/data-modeling-and-persistence.md +94 -0
  66. package/backend/01-standards/django-complete.md +1765 -0
  67. package/backend/01-standards/email-and-notifications.md +64 -0
  68. package/backend/01-standards/fastapi-complete.md +925 -0
  69. package/backend/01-standards/file-upload-and-storage.md +66 -0
  70. package/backend/01-standards/graphql-api-complete.md +416 -0
  71. package/backend/01-standards/llm-application-standard.md +78 -0
  72. package/backend/01-standards/message-queue-patterns.md +379 -0
  73. package/backend/01-standards/microservices-and-distributed.md +78 -0
  74. package/backend/01-standards/nestjs-complete.md +2167 -0
  75. package/backend/01-standards/payment-integration.md +80 -0
  76. package/backend/01-standards/rate-limiting-complete.md +451 -0
  77. package/backend/01-standards/realtime-and-websocket.md +65 -0
  78. package/backend/01-standards/search-and-filtering.md +64 -0
  79. package/backend/01-standards/spring-boot-complete.md +445 -0
  80. package/backend/02-playbooks/api-design-playbook.md +718 -0
  81. package/backend/02-playbooks/email-send-playbook.md +130 -0
  82. package/backend/02-playbooks/file-upload-s3-playbook.md +153 -0
  83. package/backend/02-playbooks/typescript-enterprise-playbook.md +133 -0
  84. package/backend/02-playbooks/websocket-realtime-playbook.md +154 -0
  85. package/backend/03-checklists/api-launch-checklist.md +189 -0
  86. package/backend/04-antipatterns/backend-antipatterns.md +1051 -0
  87. package/blockchain/01-standards/blockchain-basics.md +557 -0
  88. package/blockchain/01-standards/smart-contract-development.md +1315 -0
  89. package/cicd/01-standards/deployment-and-delivery-standard.md +96 -0
  90. package/cicd/01-standards/github-actions-complete.md +473 -0
  91. package/cicd/01-standards/release-and-store-submission.md +75 -0
  92. package/cicd/02-playbooks/cicd-pipeline-playbook.md +144 -0
  93. package/cicd/02-playbooks/release-management-playbook.md +605 -0
  94. package/cicd/03-checklists/pipeline-security-checklist.md +168 -0
  95. package/cicd/04-antipatterns/cicd-antipatterns.md +589 -0
  96. package/cicd/05-cases/case-deployment-automation.md +221 -0
  97. package/cicd/05-cases/case-gitops-transformation.md +212 -0
  98. package/cicd/06-glossary/cicd-glossary.md +114 -0
  99. package/cicd/cicd-blueprint-deep-dive.md +38 -0
  100. package/cicd/release-readiness-gate.md +37 -0
  101. package/cloud-native/01-standards/container-security.md +741 -0
  102. package/cloud-native/01-standards/kubernetes-complete.md +812 -0
  103. package/cloud-native/02-playbooks/api-gateway-playbook.md +155 -0
  104. package/cloud-native/02-playbooks/gitops-with-argocd.md +760 -0
  105. package/cloud-native/02-playbooks/k8s-troubleshooting-playbook.md +1942 -0
  106. package/cloud-native/02-playbooks/message-queue-playbook.md +129 -0
  107. package/cloud-native/02-playbooks/multicloud-governance.md +726 -0
  108. package/cloud-native/02-playbooks/serverless-patterns.md +788 -0
  109. package/cloud-native/02-playbooks/service-mesh-playbook.md +612 -0
  110. package/cloud-native/02-playbooks/terraform-iac-playbook.md +143 -0
  111. package/cloud-native/03-checklists/container-security-checklist.md +431 -0
  112. package/cloud-native/03-checklists/k8s-production-readiness-checklist.md +460 -0
  113. package/cloud-native/04-antipatterns/container-antipatterns.md +660 -0
  114. package/cloud-native/04-antipatterns/k8s-antipatterns.md +743 -0
  115. package/cloud-native/05-cases/case-k8s-migration.md +478 -0
  116. package/cloud-native/05-cases/case-k8s-scaling.md +642 -0
  117. package/cloud-native/05-cases/case-k8s-security-incident.md +397 -0
  118. package/cloud-native/06-glossary/cloud-native-glossary.md +337 -0
  119. package/cross-platform/01-standards/cross-platform-frameworks.md +83 -0
  120. package/cross-platform/01-standards/platform-selection-and-architecture.md +77 -0
  121. package/data/01-standards/elasticsearch-complete.md +2098 -0
  122. package/data/01-standards/postgresql-complete.md +1613 -0
  123. package/data/01-standards/redis-complete.md +1527 -0
  124. package/data/02-playbooks/database-optimization-playbook.md +403 -0
  125. package/data/02-playbooks/elasticsearch-production-playbook.md +132 -0
  126. package/data/03-checklists/database-launch-checklist.md +187 -0
  127. package/data/04-antipatterns/database-antipatterns.md +873 -0
  128. package/data/05-cases/case-database-migration.md +310 -0
  129. package/data/06-glossary/database-glossary.md +440 -0
  130. package/data/data-governance-and-modeling-deep-dive.md +39 -0
  131. package/data-engineering/01-standards/airflow-complete.md +523 -0
  132. package/data-engineering/01-standards/kafka-complete.md +1521 -0
  133. package/data-engineering/02-playbooks/spark-etl-playbook.md +496 -0
  134. package/data-engineering/03-checklists/pipeline-launch-checklist.md +194 -0
  135. package/data-engineering/04-antipatterns/data-pipeline-antipatterns.md +684 -0
  136. package/data-engineering/05-cases/case-real-time-pipeline.md +355 -0
  137. package/data-engineering/06-glossary/data-engineering-glossary.md +429 -0
  138. package/database/01-standards/database-schema-standards.md +147 -0
  139. package/database/02-playbooks/postgresql-optimization-quick.md +52 -0
  140. package/database/02-playbooks/postgresql-performance-optimization.md +58 -0
  141. package/database/02-playbooks/postgresql-production-playbook.md +146 -0
  142. package/database/02-playbooks/redis-caching-playbook.md +117 -0
  143. package/database/03-checklists/database-review-checklist.md +50 -0
  144. package/database/04-antipatterns/database-antipatterns.md +112 -0
  145. package/design/01-standards/ui-design-system-complete.md +423 -0
  146. package/design/02-playbooks/design-handoff-playbook.md +254 -0
  147. package/design/02-playbooks/design-review-playbook.md +388 -0
  148. package/design/03-checklists/design-review-checklist.md +246 -0
  149. package/design/04-antipatterns/design-antipatterns.md +378 -0
  150. package/design/05-cases/case-design-system-adoption.md +328 -0
  151. package/design/06-glossary/design-glossary.md +329 -0
  152. package/design/ui-full-lifecycle-cross-platform-playbook.md +571 -0
  153. package/design/ux-system-deep-dive.md +38 -0
  154. package/design-systems/00-craft-rules.md +71 -0
  155. package/design-systems/aesthetic-families.md +43 -0
  156. package/design-systems/anti-ai-slop.md +162 -0
  157. package/design-systems/bold-geometric.md +120 -0
  158. package/design-systems/brutalist-bold.md +103 -0
  159. package/design-systems/editorial-clean.md +109 -0
  160. package/design-systems/glass-aurora.md +108 -0
  161. package/design-systems/modern-minimal.md +145 -0
  162. package/design-systems/premium-luxury.md +106 -0
  163. package/design-systems/product-type-design-map.md +48 -0
  164. package/design-systems/soft-warm.md +123 -0
  165. package/design-systems/tech-utility.md +113 -0
  166. package/desktop/01-standards/desktop-app-standard.md +72 -0
  167. package/desktop/01-standards/desktop-design.md +71 -0
  168. package/development/00-governance/document-template.md +41 -0
  169. package/development/01-standards/api-versioning-strategies.md +432 -0
  170. package/development/01-standards/authentication-patterns-complete.md +479 -0
  171. package/development/01-standards/css-architecture-complete.md +550 -0
  172. package/development/01-standards/database-migration-strategies.md +484 -0
  173. package/development/01-standards/elasticsearch-complete.md +347 -0
  174. package/development/01-standards/git-complete.md +371 -0
  175. package/development/01-standards/golang-complete.md +1565 -0
  176. package/development/01-standards/graphql-complete.md +298 -0
  177. package/development/01-standards/javascript-bundlers-complete.md +469 -0
  178. package/development/01-standards/javascript-typescript-complete.md +528 -0
  179. package/development/01-standards/jest-complete.md +275 -0
  180. package/development/01-standards/linux-complete.md +234 -0
  181. package/development/01-standards/logging-observability-complete.md +526 -0
  182. package/development/01-standards/microservices-communication.md +502 -0
  183. package/development/01-standards/mongodb-complete.md +406 -0
  184. package/development/01-standards/oauth2-complete.md +285 -0
  185. package/development/01-standards/performance-optimization-complete.md +289 -0
  186. package/development/01-standards/playwright-complete.md +247 -0
  187. package/development/01-standards/postgresql-complete.md +456 -0
  188. package/development/01-standards/pytest-complete.md +340 -0
  189. package/development/01-standards/python-async-programming.md +902 -0
  190. package/development/01-standards/python-complete.md +956 -0
  191. package/development/01-standards/python-decorators-complete.md +799 -0
  192. package/development/01-standards/python-design-patterns.md +2854 -0
  193. package/development/01-standards/python-packaging-distribution.md +420 -0
  194. package/development/01-standards/python-testing-strategies.md +607 -0
  195. package/development/01-standards/python-web-frameworks-comparison.md +471 -0
  196. package/development/01-standards/redis-complete.md +317 -0
  197. package/development/01-standards/rest-api-complete.md +316 -0
  198. package/development/01-standards/rust-complete.md +578 -0
  199. package/development/01-standards/typescript-advanced-types.md +1513 -0
  200. package/development/01-standards/web-security-complete.md +292 -0
  201. package/development/02-playbooks/api-design-playbook.md +810 -0
  202. package/development/02-playbooks/database-migration-playbook.md +580 -0
  203. package/development/02-playbooks/debugging-playbook.md +692 -0
  204. package/development/02-playbooks/feature-delivery-playbook.md +430 -0
  205. package/development/02-playbooks/incident-hotfix-playbook.md +387 -0
  206. package/development/02-playbooks/performance-optimization-playbook.md +531 -0
  207. package/development/02-playbooks/performance-tuning-playbook.md +652 -0
  208. package/development/02-playbooks/refactor-playbook.md +403 -0
  209. package/development/02-playbooks/release-playbook.md +469 -0
  210. package/development/03-checklists/architecture-review-checklist.md +168 -0
  211. package/development/03-checklists/data-migration-checklist.md +157 -0
  212. package/development/03-checklists/oncall-handover-checklist.md +173 -0
  213. package/development/03-checklists/pr-checklist.md +158 -0
  214. package/development/03-checklists/production-readiness-checklist.md +190 -0
  215. package/development/03-checklists/release-readiness-checklist.md +154 -0
  216. package/development/03-checklists/security-review-checklist.md +182 -0
  217. package/development/04-antipatterns/api-antipatterns.md +657 -0
  218. package/development/04-antipatterns/architecture-antipatterns.md +686 -0
  219. package/development/04-antipatterns/backend-antipatterns.md +648 -0
  220. package/development/04-antipatterns/cicd-antipatterns.md +540 -0
  221. package/development/04-antipatterns/code-smell-antipatterns.md +571 -0
  222. package/development/04-antipatterns/data-antipatterns.md +658 -0
  223. package/development/04-antipatterns/database-antipatterns.md +578 -0
  224. package/development/04-antipatterns/frontend-antipatterns.md +635 -0
  225. package/development/04-antipatterns/reliability-antipatterns.md +700 -0
  226. package/development/04-antipatterns/security-antipatterns.md +747 -0
  227. package/development/05-cases/case-api-version-migration.md +428 -0
  228. package/development/05-cases/case-authorization-hardening.md +383 -0
  229. package/development/05-cases/case-bluegreen-rollback.md +466 -0
  230. package/development/05-cases/case-cache-snowball-protection.md +485 -0
  231. package/development/05-cases/case-ci-cd-pipeline.md +544 -0
  232. package/development/05-cases/case-database-scaling.md +500 -0
  233. package/development/05-cases/case-db-hotspot-optimization.md +487 -0
  234. package/development/05-cases/case-incident-mttr-reduction.md +563 -0
  235. package/development/05-cases/case-microservice-migration.md +375 -0
  236. package/development/05-cases/case-performance-optimization.md +406 -0
  237. package/development/05-cases/case-security-incident-response.md +345 -0
  238. package/development/06-glossary/full-stack-glossary.md +166 -0
  239. package/development/09-maturity/quarterly-audit-template.md +35 -0
  240. package/development/11-ui-excellence/ui-aesthetic-system.md +41 -0
  241. package/development/11-ui-excellence/ui-engineering-excellence.md +435 -0
  242. package/development/12-scenarios/development-scenarios-guide.md +565 -0
  243. package/development/13-implementation-assets/implementation-toolkit.md +282 -0
  244. package/development/13-implementation-assets/knowledge-gates-execution.md +43 -0
  245. package/development/14-full-lifecycle/software-lifecycle-gates.md +511 -0
  246. package/development/15-lifecycle-templates/project-templates-collection.md +791 -0
  247. package/development/api-contract-and-versioning-guide.md +36 -0
  248. package/development/api-governance-complete.md +43 -0
  249. package/development/backend-engineering-complete.md +43 -0
  250. package/development/code-review-quality-complete.md +43 -0
  251. package/development/concurrency-reliability-complete.md +43 -0
  252. package/development/database-engineering-complete.md +43 -0
  253. package/development/engineering-effectiveness-complete.md +43 -0
  254. package/development/engineering-standards-deep-dive.md +38 -0
  255. package/development/frontend-engineering-complete.md +43 -0
  256. package/development/performance-capacity-complete.md +43 -0
  257. package/development/refactor-migration-complete.md +42 -0
  258. package/development/refactoring-and-techdebt-playbook.md +37 -0
  259. package/development/security-in-development-complete.md +43 -0
  260. package/devops/01-standards/cicd-pipeline-complete.md +262 -0
  261. package/devops/01-standards/docker-complete.md +1490 -0
  262. package/devops/01-standards/github-actions-complete.md +337 -0
  263. package/devops/01-standards/kubernetes-complete.md +638 -0
  264. package/devops/01-standards/terraform-complete.md +2117 -0
  265. package/devops/02-playbooks/docker-compose-playbook.md +233 -0
  266. package/devops/02-playbooks/docker-k8s-production-playbook.md +186 -0
  267. package/devops/02-playbooks/docker-production-playbook.md +952 -0
  268. package/edge-iot/01-standards/edge-iot-complete.md +473 -0
  269. package/experts/architect/api-design.md +178 -0
  270. package/experts/architect/methodology.md +124 -0
  271. package/experts/architect/security.md +75 -0
  272. package/experts/backend-lead/methodology.md +216 -0
  273. package/experts/devops/methodology.md +160 -0
  274. package/experts/frontend-lead/methodology.md +178 -0
  275. package/experts/product-manager/industry/ecommerce.md +43 -0
  276. package/experts/product-manager/industry/saas.md +40 -0
  277. package/experts/product-manager/methodology.md +97 -0
  278. package/experts/qa-lead/methodology.md +123 -0
  279. package/experts/qa-lead/test-strategy.md +128 -0
  280. package/experts/uiux-designer/methodology.md +125 -0
  281. package/frontend/01-standards/accessibility-complete.md +532 -0
  282. package/frontend/01-standards/accessibility-standard.md +74 -0
  283. package/frontend/01-standards/admin-dashboard-and-crud.md +72 -0
  284. package/frontend/01-standards/design-tokens-complete.md +444 -0
  285. package/frontend/01-standards/forms-and-validation.md +77 -0
  286. package/frontend/01-standards/frontend-architecture-and-layering.md +119 -0
  287. package/frontend/01-standards/i18n-and-localization.md +65 -0
  288. package/frontend/01-standards/nextjs-complete.md +451 -0
  289. package/frontend/01-standards/react-complete.md +713 -0
  290. package/frontend/01-standards/react-hooks-complete-guide.md +1100 -0
  291. package/frontend/01-standards/react-hooks-complete.md +1171 -0
  292. package/frontend/01-standards/seo-and-web-vitals.md +77 -0
  293. package/frontend/01-standards/state-management-complete.md +444 -0
  294. package/frontend/01-standards/vue-complete.md +499 -0
  295. package/frontend/01-standards/vue3-complete.md +2002 -0
  296. package/frontend/01-standards/web-framework-best-practices.md +64 -0
  297. package/frontend/01-standards/web-performance-complete.md +495 -0
  298. package/frontend/02-playbooks/accessibility-a11y-playbook.md +161 -0
  299. package/frontend/02-playbooks/frontend-performance-playbook.md +707 -0
  300. package/frontend/02-playbooks/i18n-internationalization-playbook.md +120 -0
  301. package/frontend/02-playbooks/performance-optimization-playbook.md +163 -0
  302. package/frontend/02-playbooks/react-nextjs-production-playbook.md +167 -0
  303. package/frontend/02-playbooks/react-state-management-playbook.md +173 -0
  304. package/frontend/03-checklists/component-quality-checklist.md +166 -0
  305. package/frontend/03-checklists/frontend-launch-checklist.md +299 -0
  306. package/frontend/04-antipatterns/frontend-antipatterns.md +886 -0
  307. package/frontend/05-cases/case-performance-optimization.md +274 -0
  308. package/harmony/01-standards/harmonyos-arkts-standard.md +75 -0
  309. package/harmony/01-standards/harmonyos-design.md +65 -0
  310. package/high-quality-engineering-playbook.md +54 -0
  311. package/incident/01-standards/incident-response-complete.md +303 -0
  312. package/incident/02-playbooks/chaos-engineering-playbook.md +883 -0
  313. package/incident/02-playbooks/postmortem-playbook.md +398 -0
  314. package/incident/03-checklists/incident-readiness-checklist.md +181 -0
  315. package/incident/04-antipatterns/incident-antipatterns.md +490 -0
  316. package/incident/05-cases/case-cascade-failure.md +176 -0
  317. package/incident/06-glossary/incident-glossary.md +114 -0
  318. package/incident/postmortem-and-response-deep-dive.md +39 -0
  319. package/industries/ecommerce/ecommerce-complete.md +631 -0
  320. package/industries/education/education-complete.md +555 -0
  321. package/industries/fintech/fintech-complete.md +501 -0
  322. package/industries/gaming/gaming-complete.md +587 -0
  323. package/industries/healthcare/healthcare-complete.md +452 -0
  324. package/low-code/01-standards/low-code-complete.md +944 -0
  325. package/miniprogram/01-standards/ai-common-mistakes.md +61 -0
  326. package/miniprogram/01-standards/miniprogram-custom-navbar-capsule.md +77 -0
  327. package/miniprogram/01-standards/miniprogram-design.md +61 -0
  328. package/miniprogram/01-standards/miniprogram-standard.md +81 -0
  329. package/mobile/01-standards/android-material-design.md +70 -0
  330. package/mobile/01-standards/flutter-complete.md +384 -0
  331. package/mobile/01-standards/ios-design-hig.md +78 -0
  332. package/mobile/01-standards/mobile-app-standard.md +85 -0
  333. package/mobile/01-standards/react-native-complete.md +352 -0
  334. package/mobile/02-playbooks/mobile-cross-platform-playbook.md +175 -0
  335. package/mobile/02-playbooks/mobile-performance.md +473 -0
  336. package/mobile/03-checklists/mobile-release-checklist.md +234 -0
  337. package/mobile/04-antipatterns/mobile-antipatterns.md +798 -0
  338. package/mobile/05-cases/case-app-performance.md +500 -0
  339. package/mobile/05-cases/case-app-startup-optimization.md +218 -0
  340. package/mobile/06-glossary/mobile-glossary.md +484 -0
  341. package/observability/01-standards/observability-standards.md +103 -0
  342. package/observability/02-playbooks/prometheus-grafana-playbook.md +135 -0
  343. package/observability/02-playbooks/structured-logging-playbook.md +73 -0
  344. package/observability/03-checklists/observability-checklist.md +54 -0
  345. package/observability/04-antipatterns/observability-antipatterns.md +106 -0
  346. package/operations/01-standards/prometheus-monitoring-complete.md +1578 -0
  347. package/operations/02-playbooks/capacity-planning-playbook.md +620 -0
  348. package/operations/03-checklists/production-launch-checklist.md +365 -0
  349. package/operations/04-antipatterns/operations-antipatterns.md +664 -0
  350. package/operations/05-cases/case-sre-practices.md +581 -0
  351. package/operations/06-glossary/operations-glossary.md +120 -0
  352. package/operations/aiops-anomaly-detection.md +758 -0
  353. package/operations/capacity-planning.md +1061 -0
  354. package/operations/chaos-engineering.md +659 -0
  355. package/operations/incident-command-system.md +38 -0
  356. package/operations/observability-complete.md +442 -0
  357. package/operations/slo-sli-playbook.md +517 -0
  358. package/operations/sre-operations-deep-dive.md +39 -0
  359. package/package.json +8 -0
  360. package/performance/01-standards/performance-and-scalability.md +80 -0
  361. package/performance/01-standards/performance-standards.md +156 -0
  362. package/performance/02-playbooks/query-optimization-playbook.md +103 -0
  363. package/performance/03-checklists/performance-checklist.md +56 -0
  364. package/performance/04-antipatterns/performance-antipatterns.md +146 -0
  365. package/product/01-standards/product-management-complete.md +285 -0
  366. package/product/02-playbooks/feature-launch-playbook.md +207 -0
  367. package/product/02-playbooks/user-research-playbook.md +532 -0
  368. package/product/03-checklists/feature-launch-checklist.md +275 -0
  369. package/product/04-antipatterns/product-antipatterns.md +355 -0
  370. package/product/05-cases/case-mvp-to-scale.md +384 -0
  371. package/product/06-glossary/product-glossary.md +462 -0
  372. package/product/feature-prioritization-framework.md +40 -0
  373. package/product/kpi-and-metric-tree.md +37 -0
  374. package/product/product-discovery-and-prd-deep-dive.md +41 -0
  375. package/quantum/01-standards/quantum-complete.md +1186 -0
  376. package/security/01-standards/api-security-complete.md +511 -0
  377. package/security/01-standards/container-runtime-security.md +574 -0
  378. package/security/01-standards/data-protection-gdpr.md +543 -0
  379. package/security/01-standards/owasp-top10-complete.md +1890 -0
  380. package/security/01-standards/secure-coding-baseline.md +90 -0
  381. package/security/01-standards/supply-chain-security.md +441 -0
  382. package/security/01-standards/web-security-checklist.md +108 -0
  383. package/security/01-standards/zero-trust-architecture.md +521 -0
  384. package/security/02-playbooks/auth-sso-playbook.md +166 -0
  385. package/security/02-playbooks/incident-response-security-playbook.md +588 -0
  386. package/security/02-playbooks/owasp-api-security-playbook.md +129 -0
  387. package/security/02-playbooks/payment-integration-playbook.md +119 -0
  388. package/security/02-playbooks/penetration-testing-playbook.md +517 -0
  389. package/security/03-checklists/security-audit-checklist.md +356 -0
  390. package/security/04-antipatterns/security-coding-antipatterns.md +580 -0
  391. package/security/05-cases/case-log4shell-incident.md +537 -0
  392. package/security/05-cases/case-major-breaches.md +468 -0
  393. package/security/06-glossary/security-glossary.md +212 -0
  394. package/security/compliance-automation.md +993 -0
  395. package/security/container-security.md +680 -0
  396. package/security/devsecops-complete.md +426 -0
  397. package/security/sast-dast-sca.md +775 -0
  398. package/security/secrets-management.md +594 -0
  399. package/security/security-architecture-deep-dive.md +37 -0
  400. package/security/threat-modeling-stride-playbook.md +40 -0
  401. package/seed-templates/auth-system.md +59 -0
  402. package/seed-templates/blog-content.md +94 -0
  403. package/seed-templates/dashboard.md +89 -0
  404. package/seed-templates/docs-site.md +73 -0
  405. package/seed-templates/e-commerce.md +50 -0
  406. package/seed-templates/saas-landing.md +92 -0
  407. package/seed-templates/settings-page.md +51 -0
  408. package/testing/01-standards/test-strategy-and-layering.md +83 -0
  409. package/testing/01-standards/testing-strategy-complete.md +422 -0
  410. package/testing/01-standards/unit-testing-best-practices.md +118 -0
  411. package/testing/02-playbooks/e2e-testing-playbook.md +988 -0
  412. package/testing/02-playbooks/testing-strategy-playbook.md +126 -0
  413. package/testing/03-checklists/test-strategy-checklist.md +208 -0
  414. package/testing/04-antipatterns/testing-antipatterns.md +718 -0
  415. package/testing/05-cases/case-testing-transformation.md +300 -0
  416. package/testing/06-glossary/testing-glossary.md +110 -0
  417. package/testing/risk-based-test-matrix.md +36 -0
  418. package/testing/testing-strategy-deep-dive.md +37 -0
@@ -0,0 +1,644 @@
1
+ ---
2
+ id: cloud-native-patterns
3
+ title: 云原生模式
4
+ domain: architecture
5
+ category: 01-standards
6
+ difficulty: intermediate
7
+ tags: [agent, architecture, checklist, cloud, native, patterns, 实战代码示例, 常见陷阱]
8
+ quality_score: 70
9
+ last_updated: 2026-06-15
10
+ ---
11
+ # 云原生模式
12
+
13
+ ## 概述
14
+ 云原生(Cloud Native)是一种充分利用云计算优势的软件设计方法论。本指南覆盖12-Factor App、Sidecar、Ambassador、Init Container、CRD等核心模式,帮助团队构建可扩展、弹性、可观测的云原生应用。
15
+
16
+ ## 核心概念
17
+
18
+ ### 1. 12-Factor App原则
19
+ | 因素 | 原则 | 说明 |
20
+ |------|------|------|
21
+ | 1. Codebase | 一份代码,多份部署 | Git仓库与环境无关 |
22
+ | 2. Dependencies | 显式声明依赖 | requirements.txt/package.json |
23
+ | 3. Config | 配置存储在环境变量 | 不硬编码配置 |
24
+ | 4. Backing Services | 后端服务作为附加资源 | DB/Cache/MQ通过URL连接 |
25
+ | 5. Build/Release/Run | 严格分离构建和运行 | CI/CD流水线 |
26
+ | 6. Processes | 无状态进程 | 状态存储在外部服务 |
27
+ | 7. Port Binding | 通过端口绑定提供服务 | 自包含HTTP服务器 |
28
+ | 8. Concurrency | 通过进程模型扩展 | 水平扩展而非垂直 |
29
+ | 9. Disposability | 快速启动,优雅停止 | 信号处理/连接排空 |
30
+ | 10. Dev/Prod Parity | 环境一致性 | Docker/容器化 |
31
+ | 11. Logs | 日志作为事件流 | 输出到stdout |
32
+ | 12. Admin Processes | 管理任务作为一次性进程 | Job/CronJob |
33
+
34
+ ### 2. Kubernetes设计模式
35
+
36
+ | 模式 | 描述 | 用例 |
37
+ |------|------|------|
38
+ | Sidecar | 辅助容器扩展主容器功能 | 日志收集/代理/监控 |
39
+ | Ambassador | 代理容器处理外部通信 | 负载均衡/mTLS/限流 |
40
+ | Adapter | 适配容器标准化输出 | 日志格式转换/指标适配 |
41
+ | Init Container | 初始化容器在主容器前运行 | 数据迁移/配置下载/等待依赖 |
42
+ | Leader Election | 选举主节点处理单例任务 | 定时任务/全局调度 |
43
+
44
+ ### 3. 云原生技术栈
45
+ - **容器运行时**: Docker/containerd/CRI-O
46
+ - **编排**: Kubernetes
47
+ - **服务网格**: Istio/Linkerd/Cilium
48
+ - **CI/CD**: ArgoCD/Flux/Tekton
49
+ - **可观测性**: Prometheus/Grafana/Jaeger/OpenTelemetry
50
+ - **密钥管理**: Vault/Sealed Secrets/External Secrets
51
+
52
+ ## 实战代码示例
53
+
54
+ ### 12-Factor配置管理
55
+
56
+ ```python
57
+ # 基于环境变量的配置(Factor 3)
58
+ from pydantic_settings import BaseSettings
59
+ from functools import lru_cache
60
+
61
+ class Settings(BaseSettings):
62
+ """应用配置(从环境变量读取)"""
63
+ # 基础
64
+ app_name: str = "my-service"
65
+ environment: str = "development"
66
+ debug: bool = False
67
+ log_level: str = "INFO"
68
+
69
+ # 服务端口(Factor 7)
70
+ port: int = 8000
71
+ host: str = "0.0.0.0"
72
+
73
+ # 后端服务URL(Factor 4)
74
+ database_url: str = "postgresql://localhost:5432/mydb"
75
+ redis_url: str = "redis://localhost:6379/0"
76
+ rabbitmq_url: str = "amqp://guest:guest@localhost:5672/"
77
+
78
+ # 外部服务
79
+ auth_service_url: str = "http://auth-service:8080"
80
+ payment_gateway_url: str = "https://api.stripe.com"
81
+ payment_gateway_key: str = ""
82
+
83
+ # 安全
84
+ secret_key: str = "change-me-in-production"
85
+ cors_origins: list[str] = ["http://localhost:3000"]
86
+
87
+ model_config = {
88
+ "env_file": ".env",
89
+ "env_file_encoding": "utf-8",
90
+ "case_sensitive": False,
91
+ }
92
+
93
+ @lru_cache()
94
+ def get_settings() -> Settings:
95
+ return Settings()
96
+ ```
97
+
98
+ ```yaml
99
+ # Kubernetes ConfigMap和Secret
100
+ apiVersion: v1
101
+ kind: ConfigMap
102
+ metadata:
103
+ name: app-config
104
+ data:
105
+ APP_NAME: "my-service"
106
+ ENVIRONMENT: "production"
107
+ LOG_LEVEL: "INFO"
108
+ AUTH_SERVICE_URL: "http://auth-service:8080"
109
+
110
+ ---
111
+ apiVersion: v1
112
+ kind: Secret
113
+ metadata:
114
+ name: app-secrets
115
+ type: Opaque
116
+ stringData:
117
+ DATABASE_URL: "postgresql://user:pass@postgres:5432/mydb"
118
+ SECRET_KEY: "super-secret-production-key"
119
+ PAYMENT_GATEWAY_KEY: "sk_live_..."
120
+ ```
121
+
122
+ ### 优雅停止(Factor 9)
123
+
124
+ ```python
125
+ # 优雅停止和健康检查
126
+ import signal
127
+ import asyncio
128
+ from contextlib import asynccontextmanager
129
+
130
+ class GracefulShutdown:
131
+ """优雅停止管理器"""
132
+
133
+ def __init__(self):
134
+ self.is_shutting_down = False
135
+ self._tasks: set[asyncio.Task] = set()
136
+
137
+ def setup_signals(self):
138
+ """注册信号处理"""
139
+ loop = asyncio.get_event_loop()
140
+ for sig in (signal.SIGTERM, signal.SIGINT):
141
+ loop.add_signal_handler(sig, self._handle_signal)
142
+
143
+ def _handle_signal(self):
144
+ self.is_shutting_down = True
145
+ logger.info("Shutdown signal received, draining connections...")
146
+
147
+ shutdown = GracefulShutdown()
148
+
149
+ @asynccontextmanager
150
+ async def lifespan(app):
151
+ """应用生命周期管理"""
152
+ # 启动
153
+ logger.info("Starting application...")
154
+ shutdown.setup_signals()
155
+
156
+ # 初始化资源
157
+ await db_pool.connect()
158
+ await redis_pool.connect()
159
+ await consumer.start()
160
+
161
+ logger.info("Application started", port=settings.port)
162
+
163
+ yield
164
+
165
+ # 停止
166
+ logger.info("Shutting down...")
167
+
168
+ # 1. 停止接收新请求(K8s已通过readiness探针处理)
169
+ # 2. 等待进行中的请求完成
170
+ await asyncio.sleep(5) # 给K8s时间更新endpoint
171
+
172
+ # 3. 关闭消费者(停止消费新消息)
173
+ await consumer.stop()
174
+
175
+ # 4. 等待进行中的任务完成
176
+ if shutdown._tasks:
177
+ await asyncio.gather(*shutdown._tasks, return_exceptions=True)
178
+
179
+ # 5. 关闭连接池
180
+ await db_pool.disconnect()
181
+ await redis_pool.disconnect()
182
+
183
+ logger.info("Shutdown complete")
184
+
185
+ app = FastAPI(lifespan=lifespan)
186
+
187
+ # 健康检查端点
188
+ @app.get("/health/live")
189
+ async def liveness():
190
+ """存活探针:进程是否运行"""
191
+ return {"status": "alive"}
192
+
193
+ @app.get("/health/ready")
194
+ async def readiness():
195
+ """就绪探针:是否可以接收流量"""
196
+ if shutdown.is_shutting_down:
197
+ return JSONResponse(status_code=503, content={"status": "shutting_down"})
198
+
199
+ # 检查依赖服务
200
+ checks = {}
201
+ try:
202
+ await db_pool.execute("SELECT 1")
203
+ checks["database"] = "ok"
204
+ except Exception:
205
+ checks["database"] = "error"
206
+ return JSONResponse(status_code=503, content=checks)
207
+
208
+ try:
209
+ await redis_pool.ping()
210
+ checks["redis"] = "ok"
211
+ except Exception:
212
+ checks["redis"] = "error"
213
+ return JSONResponse(status_code=503, content=checks)
214
+
215
+ return {"status": "ready", "checks": checks}
216
+
217
+ @app.get("/health/startup")
218
+ async def startup():
219
+ """启动探针:应用是否完成初始化"""
220
+ if not db_pool.is_connected:
221
+ return JSONResponse(status_code=503, content={"status": "initializing"})
222
+ return {"status": "started"}
223
+ ```
224
+
225
+ ### Sidecar模式
226
+
227
+ ```yaml
228
+ # Sidecar模式 — 日志收集 + 代理
229
+ apiVersion: apps/v1
230
+ kind: Deployment
231
+ metadata:
232
+ name: web-app
233
+ spec:
234
+ template:
235
+ spec:
236
+ containers:
237
+ # 主应用容器
238
+ - name: app
239
+ image: myapp:v1.2.0
240
+ ports:
241
+ - containerPort: 8000
242
+ volumeMounts:
243
+ - name: log-volume
244
+ mountPath: /var/log/app
245
+ - name: tmp
246
+ mountPath: /tmp
247
+
248
+ # Sidecar 1: Fluent Bit日志收集
249
+ - name: log-collector
250
+ image: fluent/fluent-bit:2.2
251
+ volumeMounts:
252
+ - name: log-volume
253
+ mountPath: /var/log/app
254
+ readOnly: true
255
+ - name: fluent-config
256
+ mountPath: /fluent-bit/etc/
257
+ resources:
258
+ requests:
259
+ cpu: 50m
260
+ memory: 64Mi
261
+ limits:
262
+ cpu: 100m
263
+ memory: 128Mi
264
+
265
+ # Sidecar 2: Envoy代理(Service Mesh)
266
+ - name: envoy-proxy
267
+ image: envoyproxy/envoy:v1.28
268
+ ports:
269
+ - containerPort: 9901 # Envoy admin
270
+ volumeMounts:
271
+ - name: envoy-config
272
+ mountPath: /etc/envoy
273
+ resources:
274
+ requests:
275
+ cpu: 100m
276
+ memory: 128Mi
277
+
278
+ volumes:
279
+ - name: log-volume
280
+ emptyDir: {}
281
+ - name: tmp
282
+ emptyDir:
283
+ sizeLimit: 100Mi
284
+ - name: fluent-config
285
+ configMap:
286
+ name: fluent-bit-config
287
+ - name: envoy-config
288
+ configMap:
289
+ name: envoy-config
290
+ ```
291
+
292
+ ### Init Container模式
293
+
294
+ ```yaml
295
+ # Init Container — 初始化和依赖等待
296
+ apiVersion: apps/v1
297
+ kind: Deployment
298
+ metadata:
299
+ name: api-server
300
+ spec:
301
+ template:
302
+ spec:
303
+ initContainers:
304
+ # Init 1: 等待数据库就绪
305
+ - name: wait-for-db
306
+ image: busybox:1.36
307
+ command:
308
+ - sh
309
+ - -c
310
+ - |
311
+ until nc -z postgres 5432; do
312
+ echo "Waiting for postgres..."
313
+ sleep 2
314
+ done
315
+ echo "Postgres is ready"
316
+
317
+ # Init 2: 运行数据库迁移
318
+ - name: db-migrate
319
+ image: myapp:v1.2.0
320
+ command: ["alembic", "upgrade", "head"]
321
+ envFrom:
322
+ - secretRef:
323
+ name: db-credentials
324
+ resources:
325
+ limits:
326
+ cpu: 500m
327
+ memory: 256Mi
328
+
329
+ # Init 3: 下载配置文件
330
+ - name: fetch-config
331
+ image: curlimages/curl:8.5.0
332
+ command:
333
+ - sh
334
+ - -c
335
+ - |
336
+ curl -s -o /config/app.yaml \
337
+ http://config-server:8080/api/config/production
338
+ volumeMounts:
339
+ - name: config-volume
340
+ mountPath: /config
341
+
342
+ containers:
343
+ - name: app
344
+ image: myapp:v1.2.0
345
+ volumeMounts:
346
+ - name: config-volume
347
+ mountPath: /app/config
348
+ readOnly: true
349
+
350
+ volumes:
351
+ - name: config-volume
352
+ emptyDir: {}
353
+ ```
354
+
355
+ ### CRD自定义资源
356
+
357
+ ```yaml
358
+ # CRD定义
359
+ apiVersion: apiextensions.k8s.io/v1
360
+ kind: CustomResourceDefinition
361
+ metadata:
362
+ name: microservices.platform.example.com
363
+ spec:
364
+ group: platform.example.com
365
+ versions:
366
+ - name: v1
367
+ served: true
368
+ storage: true
369
+ schema:
370
+ openAPIV3Schema:
371
+ type: object
372
+ properties:
373
+ spec:
374
+ type: object
375
+ required: ["image", "port"]
376
+ properties:
377
+ image:
378
+ type: string
379
+ port:
380
+ type: integer
381
+ replicas:
382
+ type: integer
383
+ default: 2
384
+ autoscaling:
385
+ type: object
386
+ properties:
387
+ minReplicas:
388
+ type: integer
389
+ default: 2
390
+ maxReplicas:
391
+ type: integer
392
+ default: 10
393
+ targetCPU:
394
+ type: integer
395
+ default: 70
396
+ database:
397
+ type: object
398
+ properties:
399
+ type:
400
+ type: string
401
+ enum: ["postgresql", "mysql", "none"]
402
+ size:
403
+ type: string
404
+ default: "1Gi"
405
+ status:
406
+ type: object
407
+ properties:
408
+ phase:
409
+ type: string
410
+ readyReplicas:
411
+ type: integer
412
+ endpoint:
413
+ type: string
414
+ subresources:
415
+ status: {}
416
+ scope: Namespaced
417
+ names:
418
+ plural: microservices
419
+ singular: microservice
420
+ kind: Microservice
421
+ shortNames:
422
+ - ms
423
+
424
+ ---
425
+ # 使用CRD
426
+ apiVersion: platform.example.com/v1
427
+ kind: Microservice
428
+ metadata:
429
+ name: order-service
430
+ namespace: production
431
+ spec:
432
+ image: myregistry.com/order-service:v1.2.0
433
+ port: 8080
434
+ replicas: 3
435
+ autoscaling:
436
+ minReplicas: 3
437
+ maxReplicas: 20
438
+ targetCPU: 60
439
+ database:
440
+ type: postgresql
441
+ size: 10Gi
442
+ ```
443
+
444
+ ### HPA自动扩缩容
445
+
446
+ ```yaml
447
+ # 基于CPU和自定义指标的自动扩缩
448
+ apiVersion: autoscaling/v2
449
+ kind: HorizontalPodAutoscaler
450
+ metadata:
451
+ name: api-server
452
+ spec:
453
+ scaleTargetRef:
454
+ apiVersion: apps/v1
455
+ kind: Deployment
456
+ name: api-server
457
+ minReplicas: 3
458
+ maxReplicas: 50
459
+ behavior:
460
+ scaleUp:
461
+ stabilizationWindowSeconds: 60
462
+ policies:
463
+ - type: Percent
464
+ value: 100 # 每次最多翻倍
465
+ periodSeconds: 60
466
+ scaleDown:
467
+ stabilizationWindowSeconds: 300
468
+ policies:
469
+ - type: Percent
470
+ value: 10 # 每5分钟最多缩10%
471
+ periodSeconds: 300
472
+ metrics:
473
+ - type: Resource
474
+ resource:
475
+ name: cpu
476
+ target:
477
+ type: Utilization
478
+ averageUtilization: 70
479
+ - type: Resource
480
+ resource:
481
+ name: memory
482
+ target:
483
+ type: Utilization
484
+ averageUtilization: 80
485
+ - type: Pods
486
+ pods:
487
+ metric:
488
+ name: http_requests_per_second
489
+ target:
490
+ type: AverageValue
491
+ averageValue: "1000"
492
+ ```
493
+
494
+ ### GitOps部署(ArgoCD)
495
+
496
+ ```yaml
497
+ # ArgoCD Application
498
+ apiVersion: argoproj.io/v1alpha1
499
+ kind: Application
500
+ metadata:
501
+ name: order-service
502
+ namespace: argocd
503
+ spec:
504
+ project: production
505
+ source:
506
+ repoURL: https://github.com/org/k8s-manifests.git
507
+ targetRevision: main
508
+ path: services/order-service/overlays/production
509
+ destination:
510
+ server: https://kubernetes.default.svc
511
+ namespace: production
512
+ syncPolicy:
513
+ automated:
514
+ prune: true
515
+ selfHeal: true
516
+ syncOptions:
517
+ - CreateNamespace=true
518
+ - ServerSideApply=true
519
+ retry:
520
+ limit: 3
521
+ backoff:
522
+ duration: 5s
523
+ factor: 2
524
+ maxDuration: 3m
525
+ ```
526
+
527
+ ## 最佳实践
528
+
529
+ ### 1. 无状态设计(Factor 6)
530
+ - 应用进程不持有本地状态
531
+ - 会话状态存储在Redis/数据库
532
+ - 文件上传直接到对象存储(S3)
533
+ - 任何实例都可以处理任何请求
534
+
535
+ ### 2. 配置外部化(Factor 3)
536
+ - 通过环境变量或ConfigMap注入配置
537
+ - 密钥使用Secret/Vault管理
538
+ - 不同环境用不同ConfigMap,同一镜像
539
+ - 配置变更不需要重新构建镜像
540
+
541
+ ### 3. 健康检查三件套
542
+ - **Liveness**: 进程是否存活(死了就重启)
543
+ - **Readiness**: 是否可以接收流量(没准备好就不转发)
544
+ - **Startup**: 是否完成初始化(慢启动不被杀)
545
+
546
+ ### 4. 资源管理
547
+ - 所有容器设置requests和limits
548
+ - CPU limits可选(可能导致throttling)
549
+ - 内存limits必须设置(防OOM影响节点)
550
+ - 使用LimitRange设置命名空间默认值
551
+
552
+ ### 5. 可观测性
553
+ - 日志输出到stdout(Factor 11)
554
+ - 暴露Prometheus指标(/metrics)
555
+ - 集成分布式追踪(OpenTelemetry)
556
+ - 标准化健康检查端点
557
+
558
+ ## 常见陷阱
559
+
560
+ ### 陷阱1: 容器内存储状态
561
+ ```python
562
+ # 错误: 文件存在容器内,Pod重启就丢失
563
+ with open("/app/data/upload.pdf", "wb") as f:
564
+ f.write(data)
565
+
566
+ # 正确: 使用对象存储
567
+ await s3_client.upload_fileobj(data, "uploads", "upload.pdf")
568
+ ```
569
+
570
+ ### 陷阱2: 优雅停止时间不足
571
+ ```yaml
572
+ # 错误: terminationGracePeriodSeconds太短
573
+ # Pod收到SIGTERM后只有30秒(默认)完成清理
574
+
575
+ # 正确: 根据业务需要设置
576
+ spec:
577
+ terminationGracePeriodSeconds: 60
578
+ containers:
579
+ - name: app
580
+ lifecycle:
581
+ preStop:
582
+ exec:
583
+ command: ["sh", "-c", "sleep 5"] # 等K8s更新endpoint
584
+ ```
585
+
586
+ ### 陷阱3: 健康检查配置错误
587
+ ```yaml
588
+ # 错误: 存活探针检查数据库
589
+ # 数据库短暂不可用就重启Pod,加重数据库压力
590
+
591
+ livenessProbe:
592
+ httpGet:
593
+ path: /health # 如果这里检查了DB连接...
594
+
595
+ # 正确: 存活探针只检查进程健康
596
+ livenessProbe:
597
+ httpGet:
598
+ path: /health/live # 只检查进程是否存活
599
+
600
+ readinessProbe:
601
+ httpGet:
602
+ path: /health/ready # 这里检查依赖服务
603
+ ```
604
+
605
+ ### 陷阱4: 不设置资源限制
606
+ ```yaml
607
+ # 错误: 无限制,可能影响同节点其他Pod
608
+ # 正确: 合理设置
609
+ resources:
610
+ requests:
611
+ cpu: 100m # 调度基准
612
+ memory: 128Mi
613
+ limits:
614
+ cpu: 500m # 上限(可选,有争议)
615
+ memory: 512Mi # 必须设置,防OOM
616
+ ```
617
+
618
+ ## Agent Checklist
619
+
620
+ ### 12-Factor合规
621
+ - [ ] 配置通过环境变量注入
622
+ - [ ] 无状态进程设计
623
+ - [ ] 日志输出到stdout
624
+ - [ ] 依赖显式声明
625
+ - [ ] 端口绑定暴露服务
626
+
627
+ ### Kubernetes部署
628
+ - [ ] 健康检查三件套配置
629
+ - [ ] 资源requests和limits设置
630
+ - [ ] 优雅停止处理
631
+ - [ ] 非root容器运行
632
+ - [ ] 安全上下文配置
633
+
634
+ ### 可扩展性
635
+ - [ ] HPA已配置
636
+ - [ ] 无状态可水平扩展
637
+ - [ ] Pod反亲和性配置(高可用)
638
+ - [ ] PDB(Pod Disruption Budget)已设置
639
+
640
+ ### 运维就绪
641
+ - [ ] GitOps部署流程
642
+ - [ ] 金丝雀/蓝绿发布策略
643
+ - [ ] 回滚机制可用
644
+ - [ ] 监控和告警覆盖