文档章节

从维护识别当前产品主要问题

bigsloth
 bigsloth
发布于 2014/01/06 14:26
字数 1092
阅读 23
收藏 0
点赞 0
评论 0

系统自监控

目前做法是通过watchdog单纯监控Java进程是否存在。但在Java应用程序下面,

系统不正常工作,往往有以下几个原因:

1. 系统core dump,进程异常退出。--watchdog可以搞定

2. 内存溢出,OutOfMemory,Java进程仍然存在

3. 资源泄漏导致无可用资源,如无数据库连接,达到了最大的文件句柄数,导致文件或socket无法创建

4. 系统线程被长期挂起(正在等待获取资源等),导致线程池无可用线程。


系统日志及空间管理

印尼X项目日志动辄1G,800M大小,用NotePad根本打不开,还要上传到SUSE系统进行处理删除垃圾日志,浪费时间。许多无用的日志打印出来。

对于维护人员来说,日志对于问题的定位至关重要。系统日志设计的好坏会直接影响解决问题的效率和质量。看日志只要看精华,不需要的日志不要打印出来。比如日志中出现

的心跳日志,用户ehcache日志等打印频繁,对于问题定位几乎可以忽略。在异常发生时,日志中有明确的调用上下文,关键入口必须有日志打印。

通过了解一般管理员没有意识去删除日志,出于磁盘空间的考虑,日志必须定期压缩。

日志包括日志表需要定期清理。说到磁盘空间规划同样值得思考,斯里兰卡、印尼、伊朗都出现过磁盘空间不足现象,尤其是印尼上线运行不到一年,RMAN备份出来的两天数据接近300G,规划的/oradata目录只有200G,前期加的数据库表空间文件都在该目录下面


系统配置及资料让用户不容易理解

界面配置最典型的例子就是短信配置界面,几乎只有专业人士才能看懂,短信从V1R3在到V2R5,针对现场场景我们的短信功能一直在完善,但是每次升级后或者刚启用短信功能后,这块配置现场一直在抱怨看不懂。

资料太多写的太啰嗦 SPC271操作指导写了六十页还有歧义,完全是站在开发者角度编写,现场人员搞不清楚哪步该执行哪步不该执行,这样的资料难怪现场升级失败。


代码对数据库表ID依赖性强

重灾区表单配置,代码里面一堆魔鬼数字


高并发场景验证不充分

CPU居高不下,内存消耗大,表单环节数据发生窜乱,数据丢失表单无法提交,系统宕机等许多问题在印尼局点暴露出来,我们的压力测试到底仿真程度有几层。


没有重发机制用于救急

维护中经常出现表单无法提交,SLA/Rule/短信没有触发没有发出。系统没有提供类似的API进行数据恢复,重发机制


异常场景,现场组网模拟测试欠缺

几次发生的接口对接异常没有设置超时,升级后ehcahce只有只读权限系统无法启动,尼日利亚因为组网及对接场景不符(项目名称不一致)直接导致无法对接及待发布版本打回重新测试。


某些基础数据缓存后修改需要重启现场不可接受

经常遇到修改某些后台配置(如短信邮件某些未在前台展现的参数),一个简单的SQL脚本,但是生效就是需要重启服务,对于维护人员来说难办,现场更是不可接受


常见代码问题有

(1)空指针,这样的问题数不尽数,分析一下现场日志这个是高概率出现的

(2)数组越界

(3)逻辑分支判断错误

(4)数据过滤条件不对

(5)对象构造成员变量赋值错误

(6)使用易出性能问题对象


© 著作权归作者所有

共有 人打赏支持
bigsloth
粉丝 4
博文 53
码字总数 47326
作品 0
深圳
项目经理
研发全动态识别自学习立体脸算法,深度未来提供端到端完整机器视觉解决方案

     【猎云网(微信:)北京】12月11日报道(文/马丽)   基于计算机视觉与深度学习的人脸检测、人脸识别正在从安防、商业、金融、家居等各个领域不断迅速地、广泛而深入地介入到人们的生...

深度学习 ⋅ 2017/12/17 ⋅ 0

iView 2.5.0 发布,新增后台管理系统模板 iView admin

iView 2.5.0 发布了,iView 是一套基于 Vue.js 的企业级 UI 组件库,主要服务于 PC 界面的中后台产品。 该版本值得关注的特性是新增了后台管理系统模板——iView admin。 iView admin是基于V...

周其 ⋅ 2017/10/18 ⋅ 27

PMI-ACP 敏捷项目管理 考试大纲

考试大纲.png 一、领域1——敏捷准则和理念 任务1:倡导敏捷的准则和价值观,在整个团队乃至客户与团队之间形成一种共同的理念 任务2:推动并确保每个人对敏捷价值观、准组、敏捷实践和术语达...

隔壁老李头 ⋅ 2017/12/07 ⋅ 0

网管的“听诊器”

忙于讲课,常时间没有更新BLOG,惭愧! 很多学生都开始面试了,我想公司可能会问一些设备的问题,下面把我曾经用到的一些工具给大家展示一下,希望对你有帮助。 在网络安装、维护、管理和故障...

白璐 ⋅ 2008/09/27 ⋅ 0

2016年3月9日作业

1、信息系统集成有哪些特点 以满足用户需求为根本出发点; 不只是设备选择和供应,它是具有高技术含量的工程过程,要面向用户需求提供全面解决方案,其核心是软件; 最终交付物是一个完整的系...

afanny ⋅ 2016/03/13 ⋅ 0

《精益软件度量》读书笔记之一

一直以来,我对度量骨子里有一种抵触,因为很多时候,指标容易被拿来衡量团队绩效。而作为考核的KPI,容易成为团队改进指挥棒,带有很大片面性和欺骗性;另一方面,如果没有度量,有无法客观...

通爸 ⋅ 01/20 ⋅ 0

沟通CTBS立白集团远程接入成功案例

——解读远程接入平台与生物识别技术的完美结合 近年来,生物识别技术在迅速发展的同时,也加快了普及化的进程,开始广泛应用于企业市场,成为解决企业个人身份认证的重要解决方案之一。而在...

科技探索者 ⋅ 2017/11/21 ⋅ 0

网易:布局 AI 是要给更多的程序员带来福利

网易杭州研究院执行院长汪源在第七季“网易开物沙龙”上发表了关于人工智能发展的演讲,他认为,当前人工智能技术发展分为三个层次,第一个层次是底层的平台层,包括深度学习平台。中间的层次...

王练 ⋅ 2016/10/29 ⋅ 3

人工智能驱动的车辆革命已经蓄势待发!

  【IT168 资讯】物联网设备和AI功能的集成使汽车制造商能够使用预测性维护和智能传感器等新功能更新其产品。   诸如The Fifth Element和Total Recall等电影为我们的集体潜意识中引入了自...

it168网站 ⋅ 04/23 ⋅ 0

让机器听懂世界,触及人类梦想还有多远?

语言对于人类文明的重要性不言而喻,但是语言的起源却是个高度争议的话题,我们对此几乎一无所知。我们不了解人类,也不了解动物,更是不懂宇宙,甚至我们都不能完全搞清楚一些看似简单的问题...

陈孝良 ⋅ 2017/11/22 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

门面模式

1. 门面模式定义理解 是比较常用的封装模式,也称为外观模式; 标准定义:Provide a unified interface to a set of interfaces in a subsystem.Facade defines a higher-level interface t...

liuyan_lc ⋅ 23分钟前 ⋅ 0

SpringCloud 微服务 (九) Spring Cloud Bus

壹 本篇结合上篇学习使用SpringCloud Bus结合MQ来实现自动刷新 上篇有远端git码云,本地git,config统一配置中心服务,order服务,product服务 过程: 启动服务时,config服务将远端git的配置拉取到...

___大侠 ⋅ 24分钟前 ⋅ 0

别被别人抢走了你的时间!

前两天,有读者在评论区给我留言,问我类似于 618、双十一这样的电商狂欢,我会参与么? 我给他的回复很直接,我很少参与这类活动,尤其是一些整点抢券的行为,更加不会参与,因为我的时间很...

古乙丁三雨 ⋅ 28分钟前 ⋅ 0

nginx开启gzip压缩JS文件失败?

检查下GZIP设置的压缩的文件类型有没有application/x-javascript,在服务器在传送JavaScript文件时使用的MIME类型通常是这个.

hang1989 ⋅ 29分钟前 ⋅ 0

DockOne微信分享(一二九):聊聊Service Mesh:linkerd

【编者的话】随着企业逐渐将传统的单体应用向微服务或云原生应用的转变,虽然微服务或者云原生应用能给企业带来更多的好处,但也会带来一些具有挑战的问题,如怎么管理从单体应用转向微服务所...

xiaomin0322 ⋅ 33分钟前 ⋅ 0

linear regression

今天分享一个很经典的ML算法---LIner regression(线性回归) **线性回归(Linear regression)**是利用称为线性回归方程的最小二乘函数对一个或多个自变量和因变量之间关系进行建模的一种回归...

gfjjfuy112 ⋅ 36分钟前 ⋅ 0

百度地图使用经验-第1集:成功展现第1个地图

第1步:引入js(携带密钥) 第2步: 创建一个div 第3步: 写js 类: js自己的面向对象的特点; ES6 PHP,JAVA,C++ 插曲:事件 22小时前 事件和函数的区别: 函数是事先写好函数体,手工调用。...

宁哥实战课堂 ⋅ 38分钟前 ⋅ 0

sudo java : command not found

运行sudo java报错 $ sudo java$ sudo: java:找不到命令 解决方案: sudo命令后加-E,保留用户运行环境的环境变量。 sudo -E env PATH=$PATH java...

勇敢的飞石 ⋅ 40分钟前 ⋅ 0

ecs修改主机名称

https://help.aliyun.com/knowledge_detail/41305.html

张宏亮1982 ⋅ 42分钟前 ⋅ 0

扩展JS validate

if ($.validator) { //验证手机号码 $.validator.addMethod("phone", function (value, element, params) { return /^(1)[0-9]{10}$/.test(value); }, "请输入有效的......

熊猫你好 ⋅ 44分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部