不错的中高级工程师面试题:贵公司的各国网站从子域名(如 de.pinterest.com)改为顶级域名(如pinterest.de)后,对登录、js、SEO等有何副作用?设计一套安全迁移的方案
花5周时间在Google Cloud上用BigQuery、Dataflow、Kubernetes自建data pipeline。其实还得算上开发与维护的人工成本才科学啊,毕竟现在人比机器贵多了
GitHub 将他们的大型 Rails app 迁移到使用 Kubernetes 来运行、部署代码。整个过程必然十分小心谨慎,做了各种措施、缓慢地增加迁移的信心
Yelp是2004年成立的,整个技术栈里难免还残留着一些古老的东西。他们刚把business search的后台从Lucene迁移到Elasticsearch
原系统是用Python写的。重新设计系统架构,用Scala重写后latency从750ms降到14ms,uptime从99.9%升到100%。可惜没说代码规模、开发时间多长、多少人开发。
算是基本常识,四个步骤:1,dual writing,同时写到新旧两处;2,改从新地方读取;3,只写到新地方;4,删旧数据与旧代码。新地方可以是同一表不同列、也可以是不同表、也可以是不同数据库
他们将MongoDB的存储引擎从MMAPv1换成WiredTiger,当WiredTiger缓存用满后,MongoDB变得无响应;花了几个不眠夜换回MMAPv1,数据恢复就用了36小时
04年成立、11年上市的Yelp最近才让网站每页都是https的。迁移过程主要担心的是已被Google索引的http页面会重定向到https,访问量会瞬间翻倍;所以一开始先迁移加拿大站点试试水
看得出来这是很关键的系统,跟钱有关的,而且历史悠久。原来是放在自己的数据中心里,使用 Oracle 数据库。迁移到 AWS 时,用 Cassandra 与 MySQL 替换掉了 Oracle
他们用nginx做load balancer。把nginx升级到最新版,先在canary机器的nginx配置文件里启动http/2,然后观察各种监控图与nginx logs。还是有不少坑的
英国本地生活服务网站yell.com全面支持https,这一过程动用了超过10个工程师,花了7个月,牵动公司内部众多部门以及其他第三方服务提供商。满满是坑。
Badoo 将积累了10年的、超过2百万行的PHP代码升级到PHP7后,CPU/内存使用降了一半,少运行了一半的机器(300台),直接省下$100万。
2016年3月,就在AWS庆祝开张10周年之际,AWS的大客户Dropbox一方面庆祝5亿注册用户这一里程碑,另一方面有组织有计划地完成了为期2年半的迁离AWS的行动。
Amazon CTO的文章。从2006年3月上线第一个云服务S3后,AWS走过了10年。"There is no compression algorithm for experience."
非常详尽的 step by step 的技术文章,内容的组织很结构化(每一步骤都有why,how,result,resources),很方便阅读。
来自 Github 的非常精彩的清除techical debt的案例。用5天part-time的工作,成功重构Github的merge代码(Pull Request页面那个merge按钮功能)
从SQLAlchemy+Postgres迁移到自家基于MySQL上开发的NoSQL。数十个工程师,耗时8/9个月的开发与准备,在按下按钮的当天早晨6点,工程师们全体到公司报到以防迁移过程出问题
再来一个“边开飞机边换引擎”的案例。HHVM 是 JIT 的,他们每次部署新代码都要事先跑 curl 来 warm up 一下。
Olery团队分享他们从MongoDB迁移到PostgreSQL的原因以及经验。
他们一开始用AWS,但常出现网络问题、VM莫名其妙挂掉、不稳定的性能等问题,决定迁移到物理机器上。前期准备花了一个月,迁移以后整体性能提高2倍且每月租机器费用降低一半
又是一个“边开飞机边换引擎”的案例。
Bowery团队分享他们生产环境的代码从nodejs迁移到go的感受。
Github是跑在Ruby on Rails上的。他们公司4个工程师用了6个月时间,全职工作,将他们production的Rails版本从2.3升级3.0。