我用SocketConnection做的三层应用,客户端用户数只有最多8个,但是当数据处理量大时,应用服务器就会自动关闭,请问各位大虾到底是怎么回事啊?我该如何解决啊?

解决方案 »

  1.   

    是大量數據保存后﹐出現的關閉嗎?關閉后﹐所有的用戶都不能用嗎﹖我也用socketconnection連接做的三層﹐現在用戶50個﹐數據據量在的單有時出現保存時死機﹐不能保存﹐重開系統又正常﹐但沒有影響到別的用戶﹐你的情況和我的一樣嗎﹖
      

  2.   

    是许多用户要同时处理许多数据时出现的,并不是单次处理大数据量。而且应用服务器关闭后,当用户需要连接时它又重启,接着又关闭,有时一分钟能重启5、6次。到底是什么原因呢?是不是使用SocketConnection做连接的模式不对呢?
      

  3.   

    楼上大师:   我也是用SocketConnection,但我是bcb6,想问一下,用户端的数据A咋传到应用服务器上,最好有示范源码?      谢谢!!
      

  4.   

    由COM服务自动启动的应用服务器程序,当所有连接都断开时,会自动关闭。
    不知你说的是不是这种正常情况,还是另外的异常情况。
    如果是异常情况,我还是那句话,调试应用服务器程序。
      

  5.   

    我认为,多半是语句不正确执行引起的。应用服务器很难调试,建议使用一个自写的信息记录过程来记录应用服务器的执行状况,必要时就每条语句后面跟一个写语句,看是哪一步出错了。
    一个Recordset对应多个Recordset时就很容易出现这样的问题。
      

  6.   

    hiflower(花),我说的是异常情况。hiflower(花)和xyqxj(蓝泥),可否讲的再仔细些?
      

  7.   

    http://community.csdn.net/Expert/topic/3195/3195626.xml?temp=.3226892
      

  8.   

    procedure WriteDebugMsg(const aStr: string);
    var atxtFile: Text;
    begin { WriteDebugMsg }
    {$I-}
     if Boolean(IoResult) then ;
     AssignFile(atxtFile, szLocalPath + '\ServerInfo.Txt');
     System.Append(atxtFile);
     if IoResult <> 0 then ReWrite(atxtFile);
     System.WriteLn(atxtFile, DateTimeToStr(Now) + ' ' + aStr);
     System.CloseFile(atxtFile);
    {$I+}
    end; { WriteDebugMsg }
    注意把 szLocalPath  这个路径值取到,怕麻烦就用固定的。
      

  9.   

    用上面的日志型调试过程,可以轻易的知道什么地方出错了。
    就像showmessage一样,我感觉比showmessage还好,因为它默默的工作。
    在你需要调试的地方,调用它就可以知道什么问题了。
    如果是涉及到数据库方面的,多半是因为你把一个数据集取道了之后,在应用该数据时,关闭了该数据集,做了其它的工作。
      

  10.   

    因为Socket本身的bug多多,建议自己修改或者使用DCOM.
      

  11.   

    我也来学习!
    请问现在用DELPHI6/7开发的Multi-Tier程序一般用哪种服务器啊?
    DCOM、MTS、CORBA、SOCKET...?