关于服务器端编程的程序调试心得

原创 2015年11月19日 21:19:19
对某些需要在编译以后放到服务器端或者集群运行的程序,在没有调试工具的情况下,解决问题的方法主要是通过输出语句(将info输出到日志中),分为以下步奏:
1、对问题的定位
将程序分为几大逻辑,根据顺序逐个大逻辑进行测试(不要放过任何一部分,不要认为某个部分一定不会出错,往往出错的就是这部分)。然后逐步缩小问题出现的范围,对代码进行修改。
2、发现问题
a、出现问题后编译器一般都会有提示,如果丝毫没有提示,那么也许是从某个逻辑出口跳出了。诸如try,catch语句,break,return语句等等。
b、段错误(segment error),一般原因为数组越界,这就要求我们在编程的时候考虑周到,对map的getvalue以及String的subString时候先检查是否hasKey,以及index == -1 的问题。
3、对问题的解决
对问题的解决与问题的定位相反,可采取由小到大的方式,先将出现问题的地方改过,然后逐步向后扩大,看看是否会影响到后续代码的运行。
4、 不太清楚的函数不要瞎用,以及以前没用过的东西更要提高警惕。要注意try,catch语句的使用问题,try中的语句throw异常以后,进入对应的catch语句进行执行,直接跳过try中throw异常后面的语句,如果最后有finally,那么会执行finally的内容然后顺序执行。


谢谢kailian、zhangli、wangyue、bowen各位师傅的指导。多做总结,共同进步!

eclipse 远程服务器端代码调试

远程服务器端 服务器端配置eclipse调试器监听端口,有两种方式,任选其一   第一种方式: 环境变量 export JPDA_ADDRESS=9999    启动tomcat 使用...

使用浏览器调试服务器端返回的无法调试的JavaScript脚本

这里研究一个有意思的问题,就是浏览器调试服务器端返回的JavaScript脚本。在Chrome,我们可以调试页面中的JS代码。但是如果页面返回的是纯净的JS代码,而没有任何其他的内容,这时候调试就比较...

服务器端编程心得(三)—— 一个服务器程序的架构介绍

本文将介绍我曾经做过的一个项目的服务器架构和服务器编程的一些重要细节。 一、程序运行环境 操作系统:centos 7.0 编译器:gcc/g++ 4.8.3     cmake 2.8.11 mysq...

服务器端编程心得(二)—— Reactor模式

最近一直在看游双的《高性能linux服务器编程》一书,书上是这么介绍Reactor模式的: 按照这个思路,我写个简单的练习: /** *@desc: 用reactor模式练习服务器...

服务器端编程心得(七)——开源一款即时通讯软件的源码

在我的《服务器端编程心得》这个系列的第一篇至第六篇都是讲了一些零散的不成体系的网络编程细节。今天,在这篇文章中,我将介绍一款我自主开发的即时通讯软件flamingo(中文:火烈鸟),并开源其服务器和p...

服务器端编程心得(一)—— 主线程与工作线程的分工

服务器端为了能流畅处理多个客户端链接,一般在某个线程A里面accept新的客户端连接并生成新连接的socket fd,然后将这些新连接的socketfd给另外开的数个工作线程B1、B2、B3、B4,这...

服务器端编程心得(六)—— 关于网络编程的一些实用技巧和细节

这些年,接触了形形色色的项目,写了不少网络编程的代码,从windows到linux,跌进了不少坑,由于网络编程涉及很多细节和技巧,一直想写篇文章来总结下这方面的心得与经验,希望对来者有一点帮助,那就善...

tcpip服务器端编程的程序

  • 2009年11月17日 13:05
  • 403KB
  • 下载

ESP8266作为TCP服务器端使用心得

  • 2016年01月15日 14:10
  • 136KB
  • 下载

C#网络编程服务器端程序实现源码浅析

C#网络编程服务器端程序实现源码是怎么样的呢?让我们来看看其中重要的一部分:     由于在此次程序中我们采用的结构是异步阻塞方式,所以在实际的程序中,为了不影响服务器端程序的运行速度,我们在程序中...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于服务器端编程的程序调试心得
举报原因:
原因补充:

(最多只允许输入30个字)