热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

高可用_漫谈服务高可用

篇首语:本文由编程笔记#小编为大家整理,主要介绍了漫谈服务高可用相关的知识,希望对你有一定的参考价值。

篇首语:本文由编程笔记#小编为大家整理,主要介绍了漫谈服务高可用相关的知识,希望对你有一定的参考价值。






花灯初上,我还在浪

    总是说着高可用,负载均衡,异地双活,各种各样的高端技术层出不穷。。。


    服务高可用,挂了一个服务依旧能提供服务,想想每个人也是提供的服务,暴露不同的API接口,只要别人能调用就可以了。


    服务能提供7*24小时不间断服务,人呢?一群垃圾。。。来之不能战,战之不能胜,胜之不能舞。。。。


    最近都在流行微服务和容器。。。。所谓的微服务就是拆拆拆,拆到不能再次拆分,提供极致极简的服务。。。将一个系统拆分为各个应用,各个应用提供多少个服务,一个服务提供多少个API接口。。。而容器又是天生与微服务结合的架构,容器主张一个容器运行一个服务或者一组服务,提供restful接口进行调用。。。。


    看看集群,一个物理机宕机,不影响服务。。。看看一个团队,一个人离职或者送火葬场了,依旧不影响服务。。。这其中的管控系统是最主要核心部分,在其中要注意服务的调度,调度的策略。。。考虑到各种CPU,内存,IO等压力,然后进行不同的策略分配。。。


    一个集群没做好,是因为管控系统没做好,没有服务发现的功能,没有强一致性策略。。。一个团队没做好,都TM是人的问题。。。。


    集群的中的服务一般都推荐无状态的服务,不需要持久化存储,不依赖于其他的组件,然而现实并不会这样,有各种各样的依赖,缓存啊,数据库啊,需要持久化存储的日志啊,那么对于这些有状态的,就需要考虑到基础设施提供的服务了。而在一个团队中,都是有状态的。。。说一句话,没准这个人就崩溃了。。。那么有状态的服务怎么来管理?对于持久化的存储,我们可以提供统一的一致性存储,对于各种网络,可以提供跨主机的网络,而这些服务,则是最基础最核心的服务。。。


    集群中的服务,需要做到各种各样的监控指标,然后告警,然后进行处理,。。。而在一个团队中,是否有各个纬度的指标监控,还是说。。。只是玩玩?提供的高可用服务,到底能达到一个什么样的SLA水平???


    集群中的服务出了问题,重启一下就好,释放以下内存,缓解一下CPU的压力,那么团队中的人呢?放几天假就好了?还是给多点薪水?提供更多的资源。。。。还是。。。。杀了然后换一个。。。对于垃圾服务,最好的方式就是直接下线,这种SLA水平和质量不能达到3个9的直接PASS,直接kill -9


    集群中的服务可以随时更换调度策略,性能好的机器可以提供更多的计算能力,而在一个团队中,每个人是否能根据性能的好坏来分配不同的权重,能做到提供更大的计算的能力,能提供更好的性能接口?may be。。。。


    集群中的服务在网络出现中断的时候,偶尔会出现脑裂。。。split brain。。。。哦,no。。。。数据不一致怎么办,么关系,第三方公正就好了,选举出一个leader就好了。。。。那么在团队中,如果出现了脑裂该怎么办?甲方爸爸认为你闲如狗,乙方爸爸也认为你闲如狗。。。也出现了脑裂,HOW to do?HOW to solve this problem。。。。也能选举出一个leader来解决脑裂问题么?I dont care。。。。just fuck it。。。。。






花灯初上,我在流浪


    有人在我面前说别人坏话,FUCK。。。。联系一下上下文,别人也没错。。。


    你在我面前说别人坏话,那我是否就能判定你在别人面前也会说我的坏话呢。。。。是不是脑子里有shi。。。谁TM给你的权利。。。FUCK。。。


    人心不可测。。。。我就喜欢公事公办,掺入太多的因素,那么这个变量就变得不可控,那么如果一切不带变量,那么就so easy了。。。


    这只不过一场压力测试而已。。。maybe waste time。。。


    在别人的塔下,能浪几个回合。。。。


    一个团队始终只为一个目标,不为了一个目标前行,只会自乱阵脚。。。所以就有了古时的将在外军令有所不受。。。。


    在提出问题的时候,最好已经有了初步的建议,如果单纯的是抛出问题,那么每个人都能抛出问题,这个时候应该是体现你价值的最好时机。。。别TM一碰到事,你就变成了怂逼。。。。


    就事论事,我可以支持你的观点,我也可以捍卫你的观点,只要有理即可,但是如果无理,要想得到支持,请先说服。。。。


    一个问题一个问题的来,不要把所有的问题杂糅在一起,然后慢慢的解,浪费时间,太损耗CPU的性能,为什么要引入集群,引入更多的服务,为啥要分解依赖关系,说到底。。。。就是为了解决更复杂的问题,让上层的调用更加简单。。。


    一个问题千百种解决方案,而我。。。就喜欢难的那种。。。。JUST FUCK IT。。。


    来点有难度的问题,来点有技巧的问题,来点新颖的问题。。。要不然都不好玩,要不然都没啥乐趣,要不然都不能体现战斗力。。。





    


推荐阅读
  • 云原生应用最佳开发实践之十二原则(12factor)
    目录简介一、基准代码二、依赖三、配置四、后端配置五、构建、发布、运行六、进程七、端口绑定八、并发九、易处理十、开发与线上环境等价十一、日志十二、进程管理当 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • Oracle优化新常态的五大禁止及其性能隐患
    本文介绍了Oracle优化新常态中的五大禁止措施,包括禁止外键、禁止视图、禁止触发器、禁止存储过程和禁止JOB,并分析了这些禁止措施可能带来的性能隐患。文章还讨论了这些禁止措施在C/S架构和B/S架构中的不同应用情况,并提出了解决方案。 ... [详细]
  • 本文介绍了H5游戏性能优化和调试技巧,包括从问题表象出发进行优化、排除外部问题导致的卡顿、帧率设定、减少drawcall的方法、UI优化和图集渲染等八个理念。对于游戏程序员来说,解决游戏性能问题是一个关键的任务,本文提供了一些有用的参考价值。摘要长度为183字。 ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 本文介绍了OkHttp3的基本使用和特性,包括支持HTTP/2、连接池、GZIP压缩、缓存等功能。同时还提到了OkHttp3的适用平台和源码阅读计划。文章还介绍了OkHttp3的请求/响应API的设计和使用方式,包括阻塞式的同步请求和带回调的异步请求。 ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了软件测试知识点之数据库压力测试方法小结相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 本文探讨了容器技术在安全方面面临的挑战,并提出了相应的解决方案。多租户保护、用户访问控制、中毒的镜像、验证和加密、容器守护以及容器监控都是容器技术中需要关注的安全问题。通过在虚拟机中运行容器、限制特权升级、使用受信任的镜像库、进行验证和加密、限制容器守护进程的访问以及监控容器栈,可以提高容器技术的安全性。未来,随着容器技术的发展,还需解决诸如硬件支持、软件定义基础设施集成等挑战。 ... [详细]
  • [翻译]微服务设计模式5. 服务发现服务端服务发现
    服务之间需要互相调用,在单体架构中,服务之间的互相调用直接通过编程语言层面的方法调用就搞定了。在传统的分布式应用的部署中,服务地 ... [详细]
  • 服务网关与流量网关
    一、为什么需要服务网关1、什么是服务网关传统的单体架构中只需要开放一个服务给客户端调用,但是微服务架构中是将一个系统拆分成多个微服务,如果没有网关& ... [详细]
  • 本文详细介绍了云服务器API接口的概念和作用,以及如何使用API接口管理云上资源和开发应用程序。通过创建实例API、调整实例配置API、关闭实例API和退还实例API等功能,可以实现云服务器的创建、配置修改和销毁等操作。对于想要学习云服务器API接口的人来说,本文提供了详细的入门指南和使用方法。如果想进一步了解相关知识或阅读更多相关文章,请关注编程笔记行业资讯频道。 ... [详细]
  • 基于事件驱动的并发编程及其消息通信机制的同步与异步、阻塞与非阻塞、IO模型的分类
    本文介绍了基于事件驱动的并发编程中的消息通信机制,包括同步和异步的概念及其区别,阻塞和非阻塞的状态,以及IO模型的分类。同步阻塞IO、同步非阻塞IO、异步阻塞IO和异步非阻塞IO等不同的IO模型被详细解释。这些概念和模型对于理解并发编程中的消息通信和IO操作具有重要意义。 ... [详细]
  • C++语言入门:数组的基本知识和应用领域
    本文介绍了C++语言的基本知识和应用领域,包括C++语言与Python语言的区别、C++语言的结构化特点、关键字和控制语句的使用、运算符的种类和表达式的灵活性、各种数据类型的运算以及指针概念的引入。同时,还探讨了C++语言在代码效率方面的优势和与汇编语言的比较。对于想要学习C++语言的初学者来说,本文提供了一个简洁而全面的入门指南。 ... [详细]
  • 熟练掌握Spring Cloud,终于成为Java工程师的面试门槛 ... [详细]
author-avatar
手机用户2502916423
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有