做一个网站真的有那么难吗?

96
yubang
2016.03.20 00:50* 字数 2063

        现在这个互联网时代,什么都跟互联网挂钩,哪怕卖水果都开始用网店了(其实我也想卖水果%>_<%)。下面就讲一下水果哥和水果妹的依托互联网+卖水果的故事。

背景介绍

        话说再很久很久以前,有两个小伙伴一起合伙卖水果。一个叫做水果哥,一个叫做水果妹。地点是一个普通的小乡村,水果哥只会闷头搞技术,水果妹却是精通运营之道。(怎么一看这么像程序猿跟产品|运营的关系%>_<%,其实他们关系很好的啦,绝对不会见面对喷)

水果店网站雏形

       一开始水果哥和水果妹都是正常的经营着自己的水果店,谁知道有一天,水果妹知道了有互联网这一事情,好吧,水果妹一拍脑袋,然后跟水果哥说:水果哥,不如我们搞一个基于互联网的水果店吧,我们做一个网站来展示我们的水果。水果哥一听,立马说:没问题呀。接下来,水果哥哗哗哗的用了一个小时,写出了若干个html页面,然后又花了一个小时选择了一家云服务器提供商,接着部署页面又一个小时(你们说水果哥技术是多么牛)。网站搭建起来了,并且由于新鲜事物而广受追捧。

水果店网站V1版

        然而网站运行不久之后,水果妹发现纯html写的网站实在是不忍直视(好难看的网站)。

水果妹:大哥,网站能不能帅气点

水果哥:包在我身上

哗哗哗又写了一个晚上,这次水果哥用上css和js美化网站(css是控制页面布局的,js是增加用户的交互功能)。这次改版之后,用户体验大增,网站实在是太漂亮了。

水果店网站V2版

       又过了一段时间之后,水果妹发现,每当自己新引入一种新水果,或者要改网站内容的时候,自己都不会改,都要叫水果哥动手。

水果妹:哥,每次修改内容都要叫你来,能不能提供一个页面让我自己来改

水果哥:这当然可以

不用想了,水果哥哗哗哗几天,写出了一个后台页面给水果妹管理网站数据(怎么这么像cms系统%>_<%)。这次为了保存水果妹录入的数据,水果哥使用了mysql数据库(开源的我喜欢),然后为了动态输出水果妹录入的数据,没办法只能上动态语言了。由于水果哥擅长python,所以用了python重构网站。经过这次改造,终于不用事事都需要水果哥出手了。

水果店网站V3版

       水果哥平静的日子并没有过多久,水果妹突然发现有在线支付这一玩意,一想在线支付还可以发快递给客户,销路肯定可以大增。

水果妹:哥,能不能做一个在线支付呀,要支持微信支付和支付宝支付喔

水果哥(心好累,怎么还要加功能):好的,没问题(强忍着泪水)

哗哗哗,水果哥又是申请接口,又是查API文档,又是建立用户体系,又是建立支付系统,终于经过不懈努力实现了这个功能。

水果店网站V4版

       在V3版水果店网站功能已经很完善了,然而由于水果妹凶残的运营,客户越来越多了,终于有一天网站由于访问人数过多而无法响应。

水果妹:哥快醒醒,网站挂了!!!快起来!!!

水果哥(睡眼朦胧,刚睡找呢):不会吧,我看看。。。

水果哥立马爬起来看服务器情况,原来数据库压力过大,好吧加一个索引,问题解决。好景不长,服务器内存不够用了,网站有一次挂了,这次水果哥立马把网站变成分布式,问题再一次解决。不过事情怎么可能这么简单,用户越来越多,数据库数据量急剧增加,危急关头,水果哥又是上缓存,又是上数据库集群,又是异步,终于在海量用户访问下网站平安无事。

水果店v5版

水果妹:哥,双十一要来了,我们要搞秒杀活动,做这个功能出来可以吗?

水果哥:秒杀?有多少用户参与?

水果妹:就几百万用户而已

水果哥:我选择狗带

水果妹:哥,你技术这么好,你行的,你做不出就不理你了(生气状)

水果哥:这样啊,我试试啦(都说这话了,敢不做吗)

水果妹:哥你好样的

面对如此高并发怎么办呢,水果哥左思右想,第一步页面全静态化,第二步数据都走异步,第三步大量使用内存,第四步服务器弹性扩容,第五步关掉不必要的服务,增加系统可用资源。经过几天不眠不休,秒杀系统终于上线了,双十一当天水果哥全程盯着系统,出问题立马处理掉,几个几小时艰苦岁月终于活动完满结束,接下来生活也趋于平静了。

水果店网站重构

        突然某一天,水果妹又想出了一堆运营之道,这个时候必须得辛苦水果哥来写代码(%>_<%)。然而由于之前架构有不合理的地方,如果勉强兼容必然以后跟难以维护,长痛不如短痛,水果哥含着泪删掉旧代码,重新写上新代码(好可怜),又是几个不眠不休的夜晚(技术真的好可怜),终于网站重构了,系统也稳定开始运行了。

未来的日子里

       水果店网站也基本定型了,水果哥只是根据水果妹的需求,不断增加一些小功能而已,日子也算是悠闲自得。然而突然有一天,水果妹说:哥,不如我们做一个校园类应用吧,我们开始二次创业。水果哥:只要你喜欢就好!事情就如一开始水果店网站建设一样,又开始了一个循环。。。。。。

作者的话

       做网站其实不难,然而需求总在变化,所以在迫于无奈之下还要重构系统。搭建一个网站从纯静态页面到动态语言搭建,从无数据库到使用sql数据库,再到应用nosql数据库。随着用户量增大,还需要考虑高并发和数据安全问题。所以总的来说搭建网站很简单,然而要搭建一个安全稳定的网站却很难。

      程序猿好辛苦的,请不要给他给压力他们,别提不合理的需求,不要整天改业务。(我就是写代码写的心好累,才来写文章的%>_<%)

      用最有趣的语言讲述最无味的技术,如果喜欢我的文章,点赞是对我最大的支持。(关注我给我的支持更大)

闲聊IT技术