Hotmail运维:管理超大型服务的挑战

2024-02-02 09:58

本文主要是介绍Hotmail运维:管理超大型服务的挑战,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

现状:Hotmail目前拥有遍及全球的一万多台服务器,每天处理数十亿的电子邮件事务,存储量数千兆兆(PB),总共聘用不到100名系统管理员进行管理工作。
  
  在增加服务器数量的同时保持管理人员人数不变,即可管理性也是一项挑战。
  
  数据移植需要考虑复杂的性能规划、数据中心空间以及能源消耗问题。
  
  自行构建的管理工具包括部署、度量标准收集、赁单记录、故障跟踪、代码覆盖、监控、编目、故障检测和构建系统。
  
  许多应用程序都受到I/O的限制而非磁盘的限制,如何平衡I/O与数据的关系是非常困难的。指望磁盘性能向上扩展可能会失败,应该依靠的是向外扩展。
  
  处理一个产品模型时,必须假设一切都会出错,那么就必须处理这些故障,所有数据都必须有副本,而系统必须能够自愈。
  
   现在有许多生产力工具可使工程师的工作更为简单,因为您可以免费获得服务。但那些服务本身可能不是最有效率的。因此在规模较小的应用程序中,您可以通过 这样的服务侥幸获得成功。但在超大规模的服务内,一切都要从头构建并加以优化以降低成本,因为与运营成本相比,研发工作只不过是小问题。
  
  使所有的部件都保持简单,就是设计超大型服务的关键所在。
  
  磁带备份的概念已不再可行。构建能够备份更改--将它们备份到便宜的磁盘中--的系统或许是我们的方向。
  
  我们的操作小组从不希望信赖任何类型的用户界面。一切都必须是可通过脚本编写的、必须是可通过某种类型的命令行运行的。惟有通过这样的方式,才能够执行脚本,并收集来自上千台机器的结果。
  
  尽量保持所有的东西一致,包括部署、应用程序、错误和警报信息。因为所有的东西都是一致的,所以需要增扩的操作人员少之又少。
  
  在构建一种能够简便地进行管理的系统--特别是将来可能会大规模扩展的系统--时,其“咒语”就是自动化。 
 

这篇关于Hotmail运维:管理超大型服务的挑战的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/670337

相关文章

SpringBoot集成XXL-JOB实现任务管理全流程

《SpringBoot集成XXL-JOB实现任务管理全流程》XXL-JOB是一款轻量级分布式任务调度平台,功能丰富、界面简洁、易于扩展,本文介绍如何通过SpringBoot项目,使用RestTempl... 目录一、前言二、项目结构简述三、Maven 依赖四、Controller 代码详解五、Service

Python 基于http.server模块实现简单http服务的代码举例

《Python基于http.server模块实现简单http服务的代码举例》Pythonhttp.server模块通过继承BaseHTTPRequestHandler处理HTTP请求,使用Threa... 目录测试环境代码实现相关介绍模块简介类及相关函数简介参考链接测试环境win11专业版python

深入解析C++ 中std::map内存管理

《深入解析C++中std::map内存管理》文章详解C++std::map内存管理,指出clear()仅删除元素可能不释放底层内存,建议用swap()与空map交换以彻底释放,针对指针类型需手动de... 目录1️、基本清空std::map2️、使用 swap 彻底释放内存3️、map 中存储指针类型的对象

Nginx中配置使用非默认80端口进行服务的完整指南

《Nginx中配置使用非默认80端口进行服务的完整指南》在实际生产环境中,我们经常需要将Nginx配置在其他端口上运行,本文将详细介绍如何在Nginx中配置使用非默认端口进行服务,希望对大家有所帮助... 目录一、为什么需要使用非默认端口二、配置Nginx使用非默认端口的基本方法2.1 修改listen指令

SysMain服务可以关吗? 解决SysMain服务导致的高CPU使用率问题

《SysMain服务可以关吗?解决SysMain服务导致的高CPU使用率问题》SysMain服务是超级预读取,该服务会记录您打开应用程序的模式,并预先将它们加载到内存中以节省时间,但它可能占用大量... 在使用电脑的过程中,CPU使用率居高不下是许多用户都遇到过的问题,其中名为SysMain的服务往往是罪魁

Linux系统管理与进程任务管理方式

《Linux系统管理与进程任务管理方式》本文系统讲解Linux管理核心技能,涵盖引导流程、服务控制(Systemd与GRUB2)、进程管理(前台/后台运行、工具使用)、计划任务(at/cron)及常用... 目录引言一、linux系统引导过程与服务控制1.1 系统引导的五个关键阶段1.2 GRUB2的进化优

Spring Security 前后端分离场景下的会话并发管理

《SpringSecurity前后端分离场景下的会话并发管理》本文介绍了在前后端分离架构下实现SpringSecurity会话并发管理的问题,传统Web开发中只需简单配置sessionManage... 目录背景分析传统 web 开发中的 sessionManagement 入口ConcurrentSess

解决若依微服务框架启动报错的问题

《解决若依微服务框架启动报错的问题》Invalidboundstatement错误通常由MyBatis映射文件未正确加载或Nacos配置未读取导致,需检查XML的namespace与方法ID是否匹配,... 目录ruoyi-system模块报错报错详情nacos文件目录总结ruoyi-systnGLNYpe

Linux之UDP和TCP报头管理方式

《Linux之UDP和TCP报头管理方式》文章系统讲解了传输层协议UDP与TCP的核心区别:UDP无连接、不可靠,适合实时传输(如视频),通过端口号标识应用;TCP有连接、可靠,通过确认应答、序号、窗... 目录一、关于端口号1.1 端口号的理解1.2 端口号范围的划分1.3 认识知名端口号1.4 一个进程

SpringBoot结合Knife4j进行API分组授权管理配置详解

《SpringBoot结合Knife4j进行API分组授权管理配置详解》在现代的微服务架构中,API文档和授权管理是不可或缺的一部分,本文将介绍如何在SpringBoot应用中集成Knife4j,并进... 目录环境准备配置 Swagger配置 Swagger OpenAPI自定义 Swagger UI 底