linux急救模式

1998年,我管理了明尼苏达大学新网络团队的服务器管理小组。 密西根大学是一个非常大的机构,在所有系统校区中有60,000多名学生。 在那之前,大学在老化的大型机系统上管理学生记录。 但这一切都将改变。

大型机不符合Y2K标准,因此我们正在努力建立由PeopleSoft提供的新的学生记录系统。 新系统在很多方面对大学来说都是一件大事,不仅是为了使我们的记录系统现代化,而且是为了提供新功能。 但是它缺少一个关键功能:您无法从Web浏览器注册课程。

从今天的标准来看,这似乎是一个重大的疏忽,但是在1990年代后期,万维网仍然很新。 亚马逊只有几年的历史。 eBay刚满一岁。 Google最近上线了。 维基百科还不存在。 在上下文中,1998年PeopleSoft不支持通过网络注册课程也就不足为奇了。 但是,作为一所开创性的大学,它起源于Gopher网络并为以前的大型机系统创建了功能性的Web界面,我们认为Web注册是新学生记录系统的关键功能。

我们在网络团队中的工作是为PeopleSoft构建缺少的网络注册前端。

幸运的是,我们不必一个人做。 我们与IBM签约,在接下来的一年中,我们共同合作构建了新的Web注册系统。 IBM捐赠了用于运行新Web系统的硬件和软件:三个运行最新版本的AIX,IBM Java和IBM WebSphere的SP计算机节点,以及一个单独的IBM负载均衡器,用于在三个节点之间分配流量。

经过一年多的开发和测试,我们终于上线了! 不幸的是,这是一个立即的失败。

负载太大

在整个开发过程中,我们无法现实地模拟许多学生立即访问新系统的负担。 但这并不是因为缺乏尝试。 该大学拥有一个自定义的Web负载测试软件包,而IBM用自己的工具对其进行了补充。 但是Web仍然很新,我们还没有意识到Web负载测试工具还不能胜任这项工作。

在使用这两种工具进行了数月的负载测试之后,我们已经对新的Web注册系统进行了调整,预期可容纳240个并发用户。

不幸的是,我们的实际使用量几乎是原来的两倍。 在系统开始运行的第一天,就有400多名学生同时登录了新的网络注册系统。 由于意外负载,三台Web服务器崩溃了。 我们发现自己不断地重启Web服务器,因为高流量的网络继续压榨它们。 一旦我们重新启动一台Web服务器,下一台将崩溃。 以此类推,适用于整个月的注册期。

如果没有可靠的方式在网络上注册课程,则学生不得不以老式的方式注册课程:前往注册服务商办公室。 登记线沿着走廊走了出去。 坏消息很快就传到了当地新闻上,头条是“计算机故障迫使学生亲自报名”。

面对公众的失败,我们竭尽所能改善下一个注册周期(距离六个月之遥)。 我们疯狂地工作以增加Web系统的容量。 尽管进行了许多代码修复和配置调整,但我们仍无法增强系统以充分支持更多用户。 尽我们所能,在下一个注册周期中我们将面临一定的失败。

而且,正如我们担心的那样,Web系统在我们下次注册时再次严重失败。 服务器在巨大的负载下一次又一次崩溃。 这次,新闻头条包括诸如“ Web注册系统毫无价值”之类的瑰宝。

在下一次上线之前还有六个月,我们感到被困。 没有人能弄清楚为什么系统在负载下经常崩溃。 我们知道它将在下一个注册期再次失败。 我们必须做任何事情来改善系统。 但是该怎么办? 每个选项都在桌子上。

如果我们更换平台怎么办?

IBM最近接受了Linux,发布了Java和WebSphere产品的Linux版本。 所有产品均已通过RHEL(红帽企业Linux)认证,其中有几个已经在我们的桌面系统上运行。 我们意识到,现在我们已经有了生态系统,可以在Linux上作为受支持的平台运行Web注册系统。 但是它在Linux上的性能会比AIX好吗?

设置好测试服务器并运行初始负载测试后,我们惊讶地发现一台Linux服务器可以轻松支持三台AIX服务器所不能提供的支持。 一台运行相同Web注册代码,具有相同IBM Java和IBM WebSphere的Linux服务器可容纳200多个用户。

我们与注册商和CIO分享了我们的发现,他们批准了将Web注册系统迁移到Linux的计划。 这是我们在明尼苏达大学企业中首次运行Linux,但是我们没有损失。 无论如何,AIX系统将再次失败。 Linux是一个远景,但这是我们唯一的希望。

我们立即增加了用于生产的新Linux服务器。 另一个团队的同事将多台英特尔服务器转移到我们的工作中,在那里我们安装了RHEL和IBM组件。 我们在新系统上进行了无数次负载测试,以寻找薄弱环节,只是发现Linux服务器运行平稳。

经过两个月的不安,我们终于上线了。 这是一个巨大的成功! 尽管使用率很高,但Web注册系统在Linux上仍可完美运行。 在该注册期间的高峰期,Linux服务器管理着600多个并发用户,而这只是一点点。 Linux拯救了明尼苏达大学的网络注册。

成功经验

当我回顾这项大规模的救援行动时,发现了几个可以用来在您自己的组织中介绍Linux的主题:

  1. 解决问题,不要轻描淡写。

当我们提议在企业中运行Linux时,我们之所以没有这样做,是因为我们认为Linux很酷。 当然,我们是Linux的狂热者,我们已经在台式机和家庭中运行Linux,但是我们在那里解决了一个问题。 我们的注册服务商和其他利益相关者赞赏Linux是解决问题的方法,不仅仅是因为Linux很酷,我们还想做的事情。

  1. 尽可能少更改。

我们的成功取决于一个事实,即IBM最终发布了其Linux版的Java和WebSphere产品版本。 当我们从AIX迁移到Linux时,这使我们对系统的更改最小化。 将AIX配置与Linux配置进行比较,仅更改了硬件和操作系统。 系统上的所有其他组件均保持不变。 正是这种“已知的”数量为改变做出了信心。

  1. 对风险和收益诚实。

我们的问题很明显:在我们之前的两个注册周期中,Web注册失败,并且很可能再次失败。 当我们向利益相关者介绍我们的想法,建议我们用Linux代替AIX Web服务器时,我们对预期的风险和收益持开放态度。 最重要的是,如果我们什么都没做,我们将失败。 如果尝试Linux,则可能失败,也可能不会失败。 我们分享了最初的负载测试的结果,这些结果表明Linux成功与失败的可能性更大。

但是,即使Linux失败了,我们也可以轻松地将旧的AIX服务器重新投入生产。 该“后备”准备工作使注册服务机构确信,我们已经适当地衡量了收益和风险,并为万一出问题做好了准备。

  1. 广泛交流。

为了向Linux迁移,我们进行了广泛的交流。 我们写了一份执行白皮书,清楚地说明了我们计划做的事情以及我们认为它会起作用的原因。 该白皮书成功的关键在于简洁。 高管不想阅读有关技术思想的“新手”,也不想沉迷于技术细节。 我们特意为行政级别撰写了白皮书,从广义上描述了我们的提案。

当我们用Linux替换系统时,我们提供了定期更新,以告知利益相关者我们在构建新Linux系统方面的进展。 最终在Linux Web注册系统上线后,我们发布了每日更新,报告有多少学生在新系统上注册了课程,以及是否发现任何问题。

尽管距我们在AIX上的早期失败和Linux的非常成功的实验已经过去了将近二十年,但所有这些教训仍然适用。 当然,Linux在这里完成了繁重的工作,但是我们的整体成功归功于将人们团结在一起解决共同问题的精神。 我认为这是一个教训,几乎可以适用于您遇到的任何情况。

翻译自: https://opensource.com/article/17/7/how-introduced-organization-linux

linux急救模式

linux急救模式_抢救Linux:我如何将组织介绍给Linux相关推荐

  1. linux急救模式_抢救Linux! Windows XP支持今天终止

    linux急救模式 如今,随着Microsoft 不再支持 Windows XP(已使用12年的操作系统),全世界的用户在继续前进时都只能选择几种选择. 微软鼓励用户迁移到Windows 8.1也就不 ...

  2. linux更改硬盘紧急模式,linux 急救模式 和 single模式

    1.linux 急救模式: 很多人都不知道Linux有一个救援模式. 现在我来讲解进入rescue (示例系统为RHEL 3) 1.用安装光盘或者硬盘安装的方式进入安装界面,在shell 中输入 Li ...

  3. db2 linux 导入数据_「软件资料」-「软件使用」-Linux 导入、导出 MySQL 数据库命令...

    一.导出数据库 1.导出完整数据:表结构+数据 Linux 下可以使用 mysqldump 命令来导出数据库,语法格式如下:mysqldump -u用户名 -p 数据库名 > 数据库名.sql ...

  4. kali linux 升级命令_作为高级Java,你应该了解的Linux知识

    原创:小姐姐味道(微信公众号ID:xjjdog),欢迎分享,转载请保留出处. 作为一个javaer,我以前写过很多关于Linux的文章.但经过多年的观察,发现其实对于大部分人,有些东西压根就用不着.用 ...

  5. linux内核源代码_如何从源代码构建和安装最新的Linux内核

    linux内核源代码 by Sreehari 通过Sreehari 如何从源代码构建和安装最新的Linux内核 (How to build and install the latest Linux k ...

  6. db2 linux 导入数据_实现DB2数据库迁移之导入步骤在Linux下

    今天是要和大家一起讨论的是在Linux操作平台下正确实现DB2数据库迁移之导入的实际操作步骤,如果你对DB2数据库迁移之导入的实际操作步骤,心存好奇的话,以下的文章将会揭开它的神秘面纱. (1)解压 ...

  7. linux安装步骤_图解 Debian 10(Buster)安装步骤 | Linux 中国

    在这篇文章中,我们将演示如何在你的笔记本电脑和台式电脑上安装 Debian 10 "Buster" 工作站.-- Pradeep Kumar Debian 项目发布了它的最新稳定版 ...

  8. linux 复制文件_使用 rsync 复制大文件的一些误解 | Linux 中国

    这位朋友认为 rsync 是一个神奇的工具,应该仅"同步"文件本身.但是,我们大多数人所忘记的是了解 rsync 的真正含义.用法,以及我认为最重要的是它原本是用来做什么的.-- ...

  9. linux 魔兽世界_《魔兽世界》如何将我介绍给Linux

    linux 魔兽世界 我在Linux上的职业生涯背后的故事有点不寻常. 它可以追溯到2005年. 我当时在俄亥俄州托莱多的日产经销商处担任汽车修理工. 除了查看电子邮件,浏览网络和玩<魔兽世界& ...

最新文章

  1. ASP.NET MVC3 在WebGrid中用CheckBox选中行
  2. ejabberd mysql 搭建配置_ejabberd安装步骤+Mysql配置
  3. mysql中文乱码解决方案_关于MySQL中文乱码的完美解决方案
  4. 计算机初级学哪个公需课,西安职称评审申报你遇到以下问题了吗?
  5. 2020年高等数学方法与提高(上海理工大学)学习笔记:常微分方程
  6. 【机器学习基础】xgboost系列丨xgboost建树过程分析及代码实现
  7. Django从理论到实战(part36)--QuerySet转换SQL
  8. 开源项目工时系统_SpringBoot 微信点餐开源系统!综合运用项目,值得一看!
  9. matlab找不到函数系统函数,求助,Matlab找不到ztrans函数
  10. docker daemon 配置文件
  11. MySQL中索引的长度的限制
  12. Python检查批量URL是否可以正常访问
  13. 优酷发布2018世界杯战略 视频云将提供全程技术保障
  14. python 方向盘_码农:科目二(可以摸方向盘了)
  15. 测试用例之因果图分析法
  16. Windows7下安装sql2000个人版(可用,本人已测)
  17. 饿了么分布式服务治理及优化经验
  18. 云服务器防 DDoS 攻击的几种方法策略分享
  19. 打破985校史!她以独作身份投中顶刊,曾因换方向重读博士7年,科研之路也“坎坎坷坷”……...
  20. win10系统开机出现grub,一步进入window系统

热门文章

  1. Docker图形化工具Portainer
  2. Netty是如何实现TCP心跳机制与断线重连的
  3. 经常使用的正则表达式
  4. 解决 XMLHttpRequest status = 0 问题 及 返回值为null问题
  5. 【小工匠聊Modbus】04-调试工具
  6. 网络硬盘录像机和数字硬盘录像机区别(nvr dvr ipc区别)
  7. iOS 本地通知 操作
  8. GDAL/OGR 1.9.0获取shp文件中中文字段值和属性值乱码文件解决
  9. Oracle 存储过程+JOB初学
  10. Java,C实现约瑟夫环,一元多项式运算器