由于原因种种,本人负责部门中使用用户最大的一个客户系统架构工作,说是架构工作,其实是什么活都干。本人既是架构师又是程序员。
部门是有架构师的,自己最初的想法是,让架构师哥哥去搞搞架构,自己做开发即可。没想到,领导和架构师异口同声,没有搞过这个领域的系统,不太了解,还是你来做架构(自己一进公司,就做这个领域的系统DEMO)吧。于是,自己被推到了前台,成了事实上的架构师。
说实话,从没有做过架构师,对这个项目自己还是有很大担心的。担心什么,担心自己能力不足(后来证明勇气往往比担心更重要)。
第一,系统的用户规模大(日用户量远远小于电子商务系统的日用户量)。
第二,自己以前做的都是企业开发,用户数都是在百余人的规模,从来没有整过这么大用户量的系统呀。
无论有什么样的担心,客观的情况是:要么你离职走人,这样肯定不会再做这个系统了。要么你就硬抗下去,把系统做完做好。
后来,自己捉摸:这是一个挑战,同时是一个机遇,干脆去试试吧。
无论怎样自我安慰,最初还是多少有点不自信。于是在架构选型结束后,自己傻乎乎的跑去请架构师给把把关,但是最终的结果却是:人家确实挑出了一堆的毛病,但是没有给出一条具体改进意见。
人的动力和能力都是被逼出来的。在经历无数次开发反馈磨合后,框架和开发趋于正常和平稳。最终终于迎来了系统上线。
上线时刻,可以说是系统开发过程的高潮,类似于一个剧集中的高潮部分,各种问题随之而来:数据库服务器内存只有4G,动不动内存使用率就达到90%多,CPU使用率更是达到惊人的100%,于是赶快增加内存,并优化数据库配置。还好,经过几天的折腾,CPU使用率与内存使用率都回到正常水平,平稳运行,总算松了一口气。
可是,还有一个很严重的问题没有解决。那就是一天之中,用户集中访问的几个时间点,比如早晨8点,中午12点,下午3点,系统都会不定期的出现无法登录的异常,提示HTTP 500错误。靠,这又是一个火烧眉毛的大问题。于是,检查代码、排查网络、IIS配置、IIS日志、系统日志,均无法定位问题根源。几天下来,同事的无奈,客户的期盼,让自己吃不好,睡不好,感觉精神也跌落谷底,自己甚至都在怀疑自己:当初为什么不及早抽身,是不是自己的技术选型错了...,各种消极的情绪随之而来!
可是,好几次深夜入睡的时候,思忖着自己甘心于近一年的开发,却没有品尝过成功的喜悦吗?
就在这骑虎难下,战况焦灼的时刻,新同事的一个建议,给燃烧着的火焰山带来的下雨的气息。改进了代码,随后在系统的日志中果然找到了详细的错误记录,问题也迎刃而解!随后,更新代码、测试、发布、查询日志,果然再无登录异常提示。
更让人欣喜的是,在日用户量达10000余规模的情况下,服务器运行平稳,说明当初的选择没有大问题。(这时,心情大好,此处省略N个字......)。
从开始的调研,到技术选型,到框架雏形,到中途的倍受打击,到后期的上线,其中酸甜苦辣,恐怕只有自己清楚。
总结:
1.遇到问题,要想办法去找出根源,而不是轻易否定自己的选型。
2.心态要开放、眼界要宽,不能仅限于眼前自己熟悉的那些东西。
原文地址:http://www.cnblogs.com/jizhong/p/3799507.html