聊聊我经历的一个运营项目

分享我最近半年经历的一个项目。

一、项目背景:

项目(暂且叫做CMC项目吧)包含热线服务和短信平台,属政府类行业项目,采用IT服务外包模式,用户只管理热线平台和短信平台两大主要业务。热线和短信平台的服务用户基数为50万人左右,热线主要业务为信息查询和政策咨询类、短信平台主要提供查询服务、业务提醒服务等。

项目经理L-Pm是从北漂回来的,据说干了7年开发。2014年10月份我结束了银行的项目后,就被安排在CMC项目组。此时项目热线平台已经上线运行,短信平台正在研发中。我的主要工作是完成一些功能模块以及协助解决项目中的遗留问题。截止8月中旬项目基本结束,并交付运维组进行运维工作,我则被调离负责新的项目。

二、问题记录:

在项目跟进了3个月后,基本了解了项目的整体架构以及主要业务后,发现了一些让我很头疼的问题。

1.鸡蛋都放在一个篮子里

  • 项目包含热线服务平台(主要是业务数据的查询、工单等)、短信平台、第三方服务接口;这三个服务是日常业务最常用的,居然部署在一台服务器上,一个tomcat下,且tomcat 没有经过任何的优化;
  • 热线服务平台、短信平台、第三方服务接口所涉及的数据表都放在同一个数据库服务下;

2. 没有备用服务

整套服务要求是7*24 小时,其中人工5*8 小时,整套IT服务没有备用的服务。

3.数据库服务不作备份

数据库服务作为一台服务器单独提供服务,只是简单地做了数据级别的周增量备份。

4.项目团队以及运营部门没有管理规范

项目团队加上运营团队攻击30人左右,已经运行1年多了,没有制定管理规范。

三、然而,以上的问题都是经过了血淋淋的教训了的:

1、5月份的一个周一,客户方组织领导过来参观,就在人员都准备就绪的时候,运营部座席反映呼入的电话无法接听,因为系统无法登陆。客户方已经到楼下了,我们几个呆住了。在后来的检查中发现是由于一名座席在登陆系统后,执行了较早时间的短信业务查询,大批量的复杂计算导致tomcat 内存溢出,服务挂掉。苦逼的五月份,被领导一通骂,全员绩效扣掉80%;事后,我向项目经理建议:热线服务平台、短信平台、第三方服务接口单独部署,互不影响,这样也便于做服务监控,然并卵。

2、 没有备用的服务;无论是哪一个平台出现问题、或者网络、或是web服务、或是服务器故障等,整个IT系统就处于瘫痪状态,一挂全挂;

3、整套服务数据库是核心,然,只有一台服务器搭载Oracle 服务,没有配备双机热备等。一次刚上班,运营部座席反映系统无法登陆,在重启服务、检查网络后均不知哪里的问题,进一步检查后发现Oracle 数据库服务挂了,无法连接。系统再次瘫痪,小伙伴着急跑去机房尝试重启Oracle 服务,然而并没又恢复,经几次尝试后,直接重启了服务器,在意识到问题的严重后,请求公司资深专家协助,发现Oracle 数据库日志文件撑爆了一个盘符,盲目的重启导致本周内的数据丢失。后果,领导一通骂,绩效扣掉30%。

4、缺乏管理规范:

短信平台部分是有短信座席的,正常的短信业务都应该是由短信座席来完成。然而,项目组的一个开发人员却充当了一次短信座席的角色,客户要求批量下发一条政策通知短信,本应由座席执行发送操作,小伙伴却亲自上阵了,一个不小心点了发送按钮,当在回头时发现短信内容项为空,通过数据监控发现,已经有3万条短信提交至上网的短信网关,短信依然在提交,情急之下小伙伴关闭了唯一的一个tomcat ,要清理队列中的数据,导致IT系统又一次瘫痪,还没等处理完客户方就打来电话,说收到了空短信。后果,领导都求我们了,绩效全无。

在经历了这一起又一起事故后,我是无语了,每起事故后,我都会根据自己的理解和经验提出最低成本的修改方案,虽不是高大上,但也算是一点优化。然而并未能执行,一个重启服务貌似更来得直接。在提出方案的时候项目经理总是以这是领导的意思来敷衍,业务经理是迫于一些压力吧~~

利用工作空闲我为整套IT系统添加了一套监控服务,包含数据库、web服务器、平台重点业务监控,然而并没有人愿意去分析、查看。就在昨天在内部群里,还看到有人说重启服务。

最后,吃颗西瓜,洗洗睡吧,明天依然美好~

2015-08-25 夜

时间: 2024-10-11 05:01:26

聊聊我经历的一个运营项目的相关文章

创建一个Eclipse项目【Create a Project with Eclipse】

最近一个问题很困扰我,今天则得到了答案,也意味着我该选择了. 不知道大家有没有遇到过这样的情况,我是上年刚毕业,大四时进行过java培训,12年9月-13年4月,在这之前已经自学过java.7月份时进入一家公司工作,今年3月份辞职,4月份找到工作,来上班了.一开始就不太喜欢公司氛围,前台,hr,态度什么的都不太好,工作环境也极像客服部,整天电话不断,讨论声不断,第一个星期真是煎熬,去了两三天之后有辞职的想法,但是后面想想还是算了,公司待遇还可以. 但是进入到公司后leader让学PHP,学PHP

如何向Openstack社区提交一个新项目

前几天有个朋友问我:自己有一个idea不错的项目,也把基本的框架写好了,想贡献到Openstack社区,却不知道应该怎么做.正好之前我有过类似的经历,那么来分享一下我是如何向Openstack社区提交一个新项目. Openstack的整套系统就是一个开源项目的“大杂烩”,社区把所有项目划分为两类:核心和孵化.除非出身特别牛逼或者从其他核心项目独立出来的项目会在设计之初就被列为核心项目(例如Nuetron,Ironic等):其他项目一般划分到孵化类,在通过一个或多个大版本的发展后,如果变得成熟满足

10年IT人生酸甜苦辣的经历!一个老程序员的心理话

10年IT人生酸甜苦辣的经历!一个老程序员的心理话 我始终认为,对一个初学者来说,IT界的技术风潮是不可以追赶的,而且也没有能力去追赶.我时常看见自己的DDMM们把课本扔了,去卖些价格不菲的诸如C#, VB.Net 这样的大部头,这让我感到非常痛心.而许多搞不清指针是咋回事的BBS站友眉飞色舞的讨论C#里面可以不用指针等等则让我觉得好笑.C#就象当年的ASP一样,“忽如一夜春风来,千树万树梨花开”,结果许多学校的信息学院成了“Web 学院”.96,97级的不少大学生都去做Web 了.当然我没有任

Cocos2dx 3.0开发环境搭建--Eclipse上构建一个Android项目

一.前言: 本篇主要介绍Cocos2d-x 3.0的一些基础内容,以及在Eclipse上上编译我们的Cocos2d-x项目,成功把Helloworld运行起来了.看完本篇博客之后,你就会知道Cocos2d-x 3.0竟然发生了如此大的变化,变得如此简单,环境搭建.项目创建.编译的方式更加人性化了. 二.环境准备: 1.下载ADT Bundle(Eclipse捆绑了SDK和ADT),或者是Eclipse安装了ADT插件. 2.安装JDK.NDK.Ant .Python,然后配置环境. 3.Coco

创建一个android项目与创建一个android虚拟设备

创建一个android项目 Navigator面板区点击右键-->New-->Android Application Project,打开New Android Applicaton窗口.输入Application Name(应用程序的名称,就是显示在手机上的名称,比如:微信),Project Name(项目名称,一般显示在eclipse上的项目名称),Package Name(指定它的java包名,比如:com.qq.weixin).Minimum Required SDK表示运行应用程序所

windows系统下跨平台开发环境的搭建(cordova)+创建一个android项目

目的:在windows系统下,搭建跨平台的开发环境(cordova)创建一个安卓项目 前提:安装有java Jdk 1.8以上 Android SDK 23以上 1.安装node.js ,选择对应的版本下载安装,没什么好说的 官方网址:http://nodejs.cn/ 2.测试安装是否成功 win+r 键,打开运行窗口,输入cmd,然后确定,打开命令行窗口 输入node  -v 输出版本号,说明node.js安装成功,否则请查找原因,或者重新安装 输入npm -v 输出版本号说明npm可以使用

[Android Studio 权威教程]离线配置SDK,创建第一个AS项目

前三篇bolg我给大家分享了怎么安装Android Studio,但是我们还没有使用AS创建一个Android 的项目,那么这篇blog我们开始离线配置SDK,并且创建一个Android项目 没有看如何安装Android Studio的童鞋,请先看这里,然后回来我们继续: [Android Studio 权威教程]Mac下安装Android Studio [Android Studio 权威教程]Linux下安装Android Studio [Android Studio 权威教程]Window

Android基础之用Eclipse搭建Android开发环境和创建第一个Android项目(Windows平台)

一.搭建Android开发环境 准备工作:下载Eclipse.JDK.Android SDK.ADT插件 下载地址:Eclipse:http://www.eclipse.org/downloads/ JDK:http://www.oracle.com/technetwork/java/javase/downloads/jdk7u9-downloads-1859576.html Android SDK:http://developer.android.com/sdk/index.html ADT:

eclipes创建一个web项目web.xml不能自动更新的原因(web.xml和@WebServlet的作用)

在eclipse中创建一个Web项目的时候,虽然有web.xml生成,但是再添加Servlet类文件的时候总是看不见web.xml的更新,所以异常的郁闷!上网查了查,原来我们在创建Web项目的时候,会弹出一个对话框,“Dynamic web module version”这个选项默认成了3.0,按照老规范,应该是在eclipse的WebContent \ WEB-INF \ 目录下创建web.xml的.而新规范是可以不用web.xml的,如tomcat 7.0就支持新规范,这样相关的servle