gydtep 发表于 2021-2-25 15:05:02
Cloud Native 翻译为云原生,是 Matt Stine 提出的一个概念,它是一个思想的集合,包括 DevOps 、持续交付(Continuous Delivery)、微服务(MicroServices)、敏捷基础设施(Agile Infrastructure)、康威定律(Conways Law)等,以及根据商业能力对公司进行重组。Cloud Native 既包含技术(微服务,敏捷基础设施),也包含管理(DevOps,持续交付,康威定律,重组等)。Cloud Native 也可以说是一系列技术、企业管理方法的集合。gydtep 发表于 2021-2-25 20:06:45
以上了解了 12-Factor 应用原则。在我们学习 K8s 的过程中,个人认为 K8s 结合service mesh 很好的满足了上面的每条原则。设计 K8s 和 ServiceMesh 的人很伟大,提出 12 原则的 AdamWiggins 很伟大。gydtep 发表于 2021-2-26 10:38:41
事件驱动架构是一种构建松耦合的微服务系统的架构方式,微服务之间通过异步事件通信来进行交互。gydtep 发表于 2021-2-26 15:53:50
Metrics – 监控指标:通常是固定类型的时序数据,包括 Counter、Gauge、Histogram 等,是可聚合的数据。系统的监控能力是多层次的,既包含计算、存储,网络等基础设施服务层次的监控指标,也应该包含业务应用的性能监控和业务指标监控。gydtep 发表于 2021-2-26 18:04:54
此外是 “Fail fast, fail small, recover quickly” 。立即失效(Fail fast)是一个非常反直觉的设计原则,它背后的哲学是既然故障无法避免,问题越及早暴露、应用越容易恢复,进入生产环境的问题就越少。采用了 Fail-fast 策略以后,我们的关注点将从如何穷尽系统中的问题转移到如何快速地发现和优雅处理失败。gydtep 发表于 2021-2-27 14:16:43
许多组织在其工业物联网(IIoT)应用中采用了各种AI算法来做出实时决策。了解基于AI的应用中的数据是至关重要的。聚集、清理和准备独特的数据是利用AI来优化组织并获得见解的最重要方面。gydtep 发表于 2021-2-28 15:20:01
随着产品功能迭代,还需要重新走一遍全部流程。在这个流程里,业务需求来自很多团队,包括产品团队、运营团队、市场团队等,橙色标注的文字是一个产品经理一定要重点关注的节点和事项(如下图所示)。gydtep 发表于 2021-3-1 08:46:07
全链路监控组件如何获得链路相关的信息呢?最简单的方式是让开发者在业务代码中手工埋点,生成符合OpenTracing标准的链路信息,并汇入全链路监控组件。但手工埋点的方式要求开发者主动配合,并在业务代码中嵌入大量非业务逻辑。这样的方式是极为脆弱的,开发者稍有疏忽就会导致链路信息丢失,甚至影响到正常的业务逻辑。所以非手工埋点的自动链路信息采集,成为了业界的主流,其中包括两种实现方式:gydtep 发表于 2021-3-1 14:43:55
我们以某个业务功能出现卡顿现象为例,来说明如何通过ARMS一步一步的进行排查。这种情况发生的时候,往往来自于前端用户的反馈,直观的表现是前端用户在进行操作的时候,返回时间比较长,或者收到系统异常相关的提示。gydtep 发表于 2021-3-1 18:47:13
当然,开源探针/SDK在功能方面和ARMS探针还存在不小的差距,ARMS针对更多语言的探针正在陆续发布中,希望能够尽快覆盖所有的主流编程语言。目前阶段,我们可以参考以下表格,选择最合适的接入方式。