奥巴马筹款网站的制作过程

news/2024/5/21 16:20:18/文章来源:https://blog.csdn.net/paul123456789io/article/details/53100721

作者: 阮一峰

日期: 2012年12月14日

1.

Kyle Rush是一个网站工程师。

2011年6月,他加入BarackObama.com,负责设计2012美国大选的奥巴马官网。

(图为2011年6月的奥巴马官网)

除了宣传,官网的主要目的就是筹款。

上一次大选,奥巴马筹到了6.9亿美元。这是一个很大的数字,但由于过去4年美国经济一直没有起色,本次大选势必要投入更多的资金,团队内部估计资金需求将达到创纪录的10亿美元。

一个筹集10亿美元的网站,历史上从来没有过。Kyle Rush不知道自己能否做到,但是他很清楚,如果筹不到钱,奥巴马没法赢得大选。

2.

2012年美国大选现在已经结束了,奥巴马有惊无险地击败了罗姆尼。他最终筹到了11亿美元,成为历史上筹款金额最高(也是花钱最多)的总统候选人。(排在第二位的就是罗姆尼,他也筹到了10亿美元。)

这11亿美元之中,线下筹集了4.1亿,线上筹集了6.9亿。单单BarackObama.com一个网站,就创造了2.5亿美元的捐款。

在6个月的时间里,BarackObama.com共有

  * 17,807,917个访问者,81,548,259次页面访问

  * 4,276,463次捐款

  * 捐款转化率24%(每四个访问者,就有一人会捐款)

这样辉煌的成绩,是如何取得的?

3.

制作一个超大流量的、体验良好的、能够说服人们捐款、并能安全快速处理这些捐款的网站、绝非易事。

最近,Kyle Rush写了一篇文章,披露了许多内幕,从技术角度总结了BarackObama.com的制作心得。下面,我们就来看看奥巴马的技术团队是怎么做到的。

(图为2012年5月的奥巴马官网)

网站的制作班子,从2011年下半开始组建,Kyle Rush是第一个加入的前端工程师,负责网页的外观和用户体验。

一开始,网站放在团队自购的服务器上,运行和捐款都还算平稳。但是,随着竞争不断加剧,局势变得令人担忧了。到了2012年5月,罗姆尼当月的筹款金额第一次超过了奥巴马。

竞选总部决定,网站必须改版,尽一切可能争取捐款。于是,技术团队开始大规模的扩充,全职的前端工程师从1个人扩充到了14个人,其中6人专门负责制作筹款页面。

4.

技术团队做出的第一个决定是,使用静态网站生成器Jekyll,用静态网页取代动态网页,加快网页打开速度。网站的打开应该越快越好。有研究称,打开速度每慢100毫秒,Amazon的销售额就下降1%。

第二个决定是,将全部网页放上CDN,使用的服务商是Akamai。它是世界最大的CDN供应商,共部署了50000多台服务器,美国各地都能获得理想的访问速度。奥巴马芝加哥竞选总部,可以在20毫秒内载入官网的HTML网页。

第三个决定是,将捐款的后台做成API调用。这是因为有23%的访问者使用移动设备,所以必须部署多个前端(Web端和移动端)。使用API,可以让不同前端以相同方式与后台通信,彼此之间用JSON格式传递信息。

第四个决定是,后台用PHP语言开发,放在Amazon的EC2平台上。

第五个决定是,为了避免宕机,开发两个后台。一旦一个系统停止工作,立刻自动切换到另一个。这点很重要,因为宕机不仅影响士气,而且经济损失巨大。因为捐款每分钟都在涌入,最高记录是一小时300万美元,你不能让它停下来。

5.

新网站初步完成后,使用webpagetest.org进行测试,结果令人鼓舞。

原版页面4秒钟后还没载入,新版只用1秒就可以看到。整个平台的访问速度上升了60%,捐款转化率增加了14%。

接下来,就是微调页面的各种细节,一共进行了240次a/b测试,也就是说,至少迭代了240个版本。

调整后的页面,视觉效果和用户体验都有了巨大的提升(点击看大图),捐款转化率因此又提高了49%。。

随着奥巴马的当选,BarackObama.com共进行了1101次前端部署。

6.

事实证明,整个开发方案非常成功,顺利完成筹款任务,没有一分钟宕机。

Kyle Rush感到有必要总结,留下记录。除了上面的开发过程,他还提到前端团队使用的工具:版本控制Github ,a/b测试管理Optimizely,代码编译CodeKit。

Kyle Rush最后总结说:

"我百分之百肯定,这是我经历过的最好的开发环境。我们不断调整,捐款转化率的提高令人难以置信。整个团队感到无比满足。但是,最高兴的还是看到,2013年1月21日巴拉克·奥巴马依然是美国总统!"

(完)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_721756.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

10个帮程序员减压放松的网站

同学们工作之余,不妨放下微博跟朋友圈,来这10个网站感受一下看着就醉了的情境:「念完往上一推音乐键,我往后一靠,潮乎乎的软皮耳机里头,音乐排山倒海。」今天推荐的网站,利用代入感强的图片与音…

对没有开启Publishing Feature的Site Collection,如何更新网站的Welcome page?

在处理客户Case时候接到一个需求,User想修改Site Collection的Welcome Page。其实我们都知道这是一个很简单的需求,开启Site Collection和Site的Publishing Feature,在look and feel下面就会有设置Welcome Page的Setting。但是User不想开启Pu…

如何解决用户添加到AD Group仍然无法访问SharePoint网站的问题?

在将用户添加到AD Group后,遇到个问题,在AD group有权限的站点,此用户仍然无法访问。 经过查询是因为SharePointFarm中Windows的settings影响的 - LogonTokenCacheExpirationWindow和WindowsTokenLifetTime 我们可以…

实操教程:黑客如何瞄准和入侵网站的

这个问题的答案可能很难确定,仅仅是因为有很多方法可以入侵一个网站。我们在本文中的目的是向您展示黑客在定位和入侵您的网站时最常用的技术! 假设这是您的站点:hack-test.com 让我们ping这个站点来获取服务器IP: 现在我们有 …

有手就行:零基础渗透网站步骤

前言:渗透技巧小总结,希望大家喜欢! 渗透技巧 1.拿到一个网站后,先进行扫描,对网站全局进行爬行。 2.某些cms的网站设置过滤不严,直接在网站后面加上admin/session.asp 或 admin/left.asp 可直接进入后台…

长腿翘臀老狗问我网站测试有哪些要点,我这样答

前言 老狗腿长手也长,没事就来刁难我,幸好我专业知识过硬,不然早得搬家了。 无图无真相 上图 长腿狗子看够了,下面进入正题,赠送全套网安学习资料和老狗私房照可在文末获取 网站或网页的效率在很大程度上取决于测…

优雅地寻找网站源码(一)

优雅地寻找网站源码(一) 0x0 前言 渗透过程中如果能获取到网站的源代码,那么无疑开启了上帝视角。虽然之前出现过不少通过搜索引擎查找同类网站,然后批量扫备份的思路,但是却没人分享其具体过程,这里笔者便整理了自己开发分布式…

网站前端联系我们之点击自动打开qq/Tim对话窗口

自动跳出QQ/TIM对话框 没有完美的网站,需要用户的反馈来完善我们的页面。那么,联系我们必不可少。在即时通讯软件中,QQ/Tim用的最多。前几天发现了自动调用QQ/Tim代码,经测试发现可以用,很方便,分享给大家。 Contact.…

JSP-购物类网站(购物车功能,翻页功能,文件下载功能,文末有代码及数据库备份)

目录 网站功能框架 网站架构图 网站项目树 网站首页 注册登录页面 用户个人中心页面 商家个人中心页面 搜索结果页面 商品详细信息页面 手机端页面(部署后) 之前在校内参加过网站设计大赛,贡献全部代码,供jsp小白学习。 这是一个购物类网站,后…

网站安全检测:推荐8款免费的 Web 安全测试工具

随着 Web 应用越来越广泛,Web 安全威胁日益凸显。黑客利用网站操作系统的漏洞和 Web 服务程序的 SQL 注入漏洞等得到Web服务器的控制权限,轻则篡改网页内容,重则窃取重要内部数据,更为严重的则是在网页中植入恶意代码,…

利用wvs扫描网站发现一个页面,暴露了错误信息

今晚给一个网站做了一次入侵检测,首先进行信息刺探后,发现这个站有注入策略,所有页面都没法通过常规的注入,利用wvs扫描网站发现一个页面。 这个页面直接暴露出了错误信息,看了一下url没有参数却爆出了错误&#xff0c…

网站攻击到提权的全部过程

准备工作 靶机(被攻击方):win7系统 入侵者(攻击方):win10系统、kali系统 首先启动win7系统,搭建一个常见的校园网站,然后映射到局域网,使得我们能正常访问。 从网站拿到…

网站控制工具:冰蝎3.0使用体验

这篇文章比较基础,主要面向新手,技术含量较低主要为操作流程。 0x01. 冰蝎是什么 利用动态二进制加密实现新型一句话木马的客户端 , 相对于菜刀和蚁剑他的数据是加密传输的 1.1 下载 github地址: https://github.com/rebeyond/Behinder/releases 下载后…

【网络安全】记一次网站站点渗透

前言 遇到一个站,后端是Node.js写的,对于这种类型的站点,一般比较难getshell,但也实现了最终的目标,拿到后台权限 信息搜集 先进行常规的信息搜集,子域名扫描、端口扫描、目录扫描等 这个站后端脚本语…

web安全渗透之钓鱼网站提权

本实验实现1:要生成一个钓鱼网址链接,诱导用户点击,实验过程是让win7去点击这个钓鱼网站链接,则会自动打开一个文件共享服务器的文件夹,在这个文件夹里面会有两个文件,当用户分别点击执行后,则会…

某cms网站渗透的过程

1.通过fofa查询出该网站的后台,进去发现很像某cms,利用御剑的cms识别工具识别出对方是phpcms的站。 2.通过百度查询得出:该phpcms站点可能存在文件上传,敏感信息泄露,sql报错注入。我只验证出来了sql报错注入。 3.把这…

网站渗透这块水太深,你把握不住!但你叔我能(十年经验分享)

很多朋友问我,想搞网络安全,编程重要吗,选什么语言呢? 国内其实正经开设网络安全专业的学校很少,大部分同学是来自计算机科学、网络工程、软件工程专业的,甚至很多非计算机专业自学的。因此不像这三个专业…

一个HTTP请求,把网站打裂开了!

大家好,我是周杰伦,今天给大家看一段神奇的代码。 利用这几行神奇的代码,居然能把网站打崩溃,这是怎么一回事呢? 就是下面这个函数,根据传进来的开始和结束位置,读取文件数据: ch…

学完渗透赌博网站,从零基础到实战的Web渗透学习路线+手册

前言 大家好 我是周杰伦! 大家都知道IT是一个非常复杂和混沌的领域,充斥着各种已经半死不活的过时技术和数量更多的新系统、新软件和新协议。保护现在的企业网络不能仅仅依靠补丁管理、防火墙和用户培训,而更需要周期性地对网络中的安全防御…

成功端掉了一个色情网站,教科书级的社工教学。

0x00 事件起因 在知乎上,有一位叫凌云的大神讲述了自己端掉色情网站还把建站者揪出来教育了一顿,剧情实在精彩,主题非常正能量,强烈推荐给大家阅读。 以下是正文内容。 “我顺着一个色情网站域名顺藤摸瓜查到了背后操控者的真实…