[转]虎牙直播微服务改造实践-Nacos
本文将分为如下几个部分介绍虎牙在 DNS、服务注册、CMDB 和服务配置中心等方面的实践: 为什么选用 Nacos DNS-F 的技术价值和应用场景 服务注册的实践 CMDB 的应用和实践 服务配置的实践 Nacos 改造和升级总结
Just One Pure ITer
本文将分为如下几个部分介绍虎牙在 DNS、服务注册、CMDB 和服务配置中心等方面的实践: 为什么选用 Nacos DNS-F 的技术价值和应用场景 服务注册的实践 CMDB 的应用和实践 服务配置的实践 Nacos 改造和升级总结
Spring Boot 服务监控,健康检查,线程信息,JVM堆信息,指标收集,运行情况监控等! Spring Boot是如何实现日志的? 阿里巴巴不允许工程师直接使用Log4j和Logback的API! 3种常见的数据脱敏方案 一个注解搞定接口返回数据脱敏
1. 最佳实践 微服务架构,多“微”才合适? 微服务到底该多大?如何设计微服务的粒度? 如何更好地干掉微服务架构复杂性? 我大概总结了三个关键词,分别是引入、异构、冗余。 B站在微服务治理中的探索与实践 7个阶段模型,帮助微服务架构落地! 这里提供了三种策略给大家参考,如图所示: 第一种 Cream Scoop Strategy 冰淇淋勺策略:是 Martin Flower 提出的一种策略,也被称为扼杀者方法。可以想象有一大桶冰淇淋,这桶冰淇淋就代表现有的架构,可以用勺子从桶中挖出你们想要的冰淇淋,这个挖出的部分就是要做拆分的服务。最终可以将大桶冰淇淋挖出一个个独立的服务,这里服务包含不同的业务逻辑。这种方式是逐渐修改原有系统,并且逐步对服务进行拆分试错然后过度到单独的资源上运行。每次拆分对系统的影响较小,但是整个系统的拆分和重构需要较长时间。 第二种 乐高法策略(搭积木),把原有的系统想象成一大块乐高积木,我们只需要往上面添加小的乐高积木模块就行了,添加的小模块就是一个个微服务。这样一来就不用对老产品进行调整,新的功能通过微服务的方式实现并且集成到老的产品中。不过需要通过一种能够让微服务与老产品联系的方法,这里会使用到接口编程以及适配器模式。 第三种是 nuclear 策略,和策略的名字一样我们需要对老旧系统推到重来,重新打造微服务架构,说起来容易这里需要花费大量分析和重构的时间,这个周期比较长,成本也是较高的。
首先简单解释一下何为 Kubernetes 来帮助大家理解。Kubernetes 是一个生产可用的容器编排系统。Kubernetes 一方面在集群中把所有 Node 资源做一个资源池,然后它调度的单元是 Pod,当然 Pod 里面可以有多个容器。 就像一个人左手抓着 ECS 资源或计算资源,右手抓容器,然后把它们两个匹配起来,这样它就可以作为一个容器的编排系统。
1. 如何部署 1-1. 停机部署法 大致思路就是,挂一个公告,半夜停机升级,然后半夜把服务停了,跑数据迁移程序,进行数据迁移。
Distributed Global ID Generator
by leelight · Published April 11, 2019 · Last modified June 28, 2020
如何实现全局唯一id呢?有以下几种方案。
有了5G加持的边缘计算,会颠覆当前的物流行业吗? 谷歌微软阿里都在争抢的边缘计算究竟有什么好 物联网中的边缘计算
一个比Spring Boot快44倍的Java框架light-4j
代码重构!你敢吗? 我们想了双流程验证的方案。 我们将重构部分的代码全部封装起来,然后提供一个新的接口,一个请求进来后,我们分别执行旧的业务逻辑,也将请求发给新接口。在流程的最后,我们将新旧流程构造出的字段,进行逐个字段的对比。新流程只验证正确性,不做实际的输出。
做服务隔离的目的就是避免服务之间相互影响。毕竟谁也不能说自己的微服务百分百可用,如果不做隔离,一旦一个服务出现了问题,整个系统的稳定性都会受到影响! 因此,做服务隔离是很有必要的。那么怎么隔离呢? 按种类隔离 按用户隔离 OK,接下来开始细说这两种方式!
Follow:
| Cookie | Duration | Description |
|---|---|---|
| cookielawinfo-checkbox-analytics | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics". |
| cookielawinfo-checkbox-functional | 11 months | The cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional". |
| cookielawinfo-checkbox-necessary | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary". |
| cookielawinfo-checkbox-others | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other. |
| cookielawinfo-checkbox-performance | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance". |
| viewed_cookie_policy | 11 months | The cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data. |