史上最昂贵的 Javascript 代码(转)
缘起:
前一段时间,Opera 浏览器公司需要越来越多的服务器。本身公司预见到 Opera Mini, Opera Link, Opera Turbo 会带来爆炸性增长,所以要添置 N 台服务器,减缓服务器压力。(事实上 Opera 确实迎来了爆炸式增长,可以参见每月公布的全球移动互联网报告。)
由于这些服务都是吃服务器的,Opera Mini 服务器要为全球几千万手机用户省流量加速,Opera Turbo 则负责电脑全网加速,Opera Link 频繁同步保证用户数千实时更新。所以需要添置的服务器不是几台的数量级,管理层批准整个订单的预算达几百万克朗(当前汇价1挪威克朗基本等于1元人民币)。
经过:
信息系统部门的技术控们海皮起来了,这帮人的工作性质决定他们在服务器身上花的时间比在异性朋友身上都多。经过他们的上蹿下跳,公司采购到了收集样机测试的流程。所有供货商把机器发到挪威奥斯陆总部进行测试试用。
技术控们像条女朋友一样挑服务器,直到一台服务器把他们全部击溃了。这台服务器来自所有人都知道的全球一级厂商(名字不敢提)。当Opera工作人员启动之后,用 Opera 浏览器访问管理界面,被直接转到错误界面。这还不是问题全部,当找到问题根源时,连同 CSS 发明人(现任 Opera CTO)带旗下所有人都崩溃了。
错误的原因是,服务器管理界面被下面一个经销商加了一行代码,判断到 Opera 浏览器访问管理界面直接粗暴的转向错误页面。
结果:
由于这行代码,此公司成功的激怒了 Opera 公司所有相关人员,成功的丢掉了这笔百万大单。Opera 公司感到奇怪,写明代码找我们浏览器的麻烦,还想卖给我们公司服务器?
元凶:
就是一行 Javascript 代码,逻辑是简单粗暴的处理用户,发现用户使用 Opera 浏览器直接转向错误页面。 这算是史上最昂贵的 Javascript 代码了。
if (is.opera) { window.location.href="config/error.htm"; }
转自网络
转载于:https://www.cnblogs.com/qq419524837/archive/2009/07/27/1532284.html
史上最昂贵的 Javascript 代码(转)相关推荐
- 揭秘史上最昂贵的一行Javascript代码
最昂贵的Javascript代码缘起: 前一段时间,Opera 浏览器公司需要越来越多的服务器.本身公司预见到 Opera Mini, Opera Link, Opera Turbo 会带来爆炸性增长 ...
- 史上最全的autojs代码仓库
autojsDemo 史上最全的autojs代码仓库 https://github.com/snailuncle/autojsDemo 魔力sama的@auto.pro 开箱即用的 auto.pro ...
- 史上最全的javascript知识点总结,浅显易懂。
来源于:http://blog.csdn.net/qiushi_1990/article/details/40260471 一,认识javascript 1-1 为什么学习JavaScript 一). ...
- 可能是史上最全 Vue 前端代码风格指南
作者:卡喵妹 https://juejin.cn/post/6987349513836953607 一.命名规范 市面上常用的命名规范: camelCase(小驼峰式命名法 -- 首字母小写) Pas ...
- html的加重语气标签,史上最全的HTML代码
HTML常用标记一览表 标记 类型 译名或意义 作 用 备注 HTML文件标记 ● 文件声明 让浏览器知道这是 HTML 文件 熟 ● 开头 提供文件整体资讯 熟 ● 标题 定义文件标题,将显示于浏览 ...
- 火焰传感器感应有火亮灯代码_史上最全燃气壁挂炉故障代码,这个值得收藏
再好的产品也有可能会出现故障, 如果家里的壁挂炉出现故障了, 显示了一些字母代码, 你知道这些字母代码是什么意思吗? 又该采取什么措施去解决呢? 下面总结了一些品牌壁挂炉的故障代码, 供大家参考. 威 ...
- 播放失败246106异常代码_史上最全燃气壁挂炉故障代码,这个值得收藏
再好的产品也有可能会出现故障, 如果家里的壁挂炉出现故障了, 显示了一些字母代码, 你知道这些字母代码是什么意思吗? 又该采取什么措施去解决呢? 下面总结了一些品牌壁挂炉的故障代码, 供大家参考. 威 ...
- 史上最全的 JavaScript 模块化方案和工具
作者简介: 李中凯 八年多工作经验 前端负责人, 擅长JavaScript/Vue. 掘金文章专栏:https://juejin.im/user/57c7cb8a0a2b58006b1b8666/po ...
- js倒计时代码最简单的_32个史上最有用的js代码
1. 原生JavaScript实现字符串长度截取 function cutstr(str, len) {var temp;var icount = 0;var patrn = /[^x00-xff]/ ...
最新文章
- PM2.5检测 -- PMS7003 串口测试
- Mac终端的ruby和pods安装和使用(超干货)
- 请验证实例名称是否正确并且 sql server 已配置为允许远程连接_安装MySQL后,需要调整的10个性能配置项...
- ITK读取RGB图像像素值
- Java2精要_java知识精要(一)
- java utf8转iso8859-1_Java字符编码处理(UTF-8/ISO-8859-1)之一 –读文本文件乱码问题 | 学步园...
- 对于一些作用域自己的理解,望能帮助某人
- python windows故障处理_python+windows automation windows有时会出现故障
- Echarts地图配置
- 有没有无痛无害的人体成像方法?OCT(光学相干断层扫描)了解一下
- 计算机英语新词的认知语义阐释论文,英语新词的认知语义分析
- 德琪医药和上药控股达成合作;方达医药位于美国宾州新实验室投运;药明康德发布财报 | 医药健闻...
- DSP CCS3.3安装问题与解决方案
- 赵铁安烧饼机器人_洛阳市民发明打烧饼机器人
- linux安装weblogic10.3.6
- 基于Springboot实现OA办公系统
- 自动解压缩pcap中chunk编码和gzip压缩的数据
- vue项目实现部分页面使用rem_vue 中使用rem布局
- 方法和数组 - 打好基础很重要
- 我了解的计算机病毒,什么是计算机病毒,计算机病毒了解介绍
热门文章
- 使用VS插件在VS2012/2013上编辑和调试Quick-Cocos2d-x的Lua代码
- kqueue epoll 边界触发模式的网络编程模型
- 使用repeater,遍历数据,不规则排序,不同的样式之间切换
- PostgreSQL — 数据库实例只读锁定
- Docker 容器技术 — 基本使用
- Ogre 2011-11-29
- 2018.10.30-dtoj-4008-纸牌游戏(cards)
- mac攻略(1) -- 简单配置php开发环境
- KVM 介绍(4):I/O 设备直接分配和 SR-IOV [KVM PCI/PCIe Pass-Through SR-IOV]
- 文件打包成zip类型文件