本帖最后由 timycg 于 2013-07-01 21:32:24 编辑

解决方案 »

  1.   

    你的所谓“大字符串”,如果是传图片,就真的太奢侈了。你把byte[]编码了(长了许多)而且再经过xml层层封装,实在是不值。这就使用简单的http post传送二进制流内容(再url参数中可以有个别参数)就可以了。
      

  2.   

    对,有传输图片,不过我们的数据库存在的图片就是byte[],所以我给前台的也是byte[].
    可是我们的前台是安卓系统,不知道该怎么做。
    如果前台是C#写的客户端,我还可以优化。
      

  3.   

    不要采用单实例Single,这种虽然能节约服务器资源,但在高并发时,若有分布式事务或同步上下文时就会发生阻塞或死锁。
    建议使用每会话或每次请求都提供新实例、不同步上下文、无分布式事务、进行吞吐量配置(并发数、会话数、缓冲数、缓冲大小等),这种能提高访问性能,但也比较占用资源(如内存),不过都是相对的,若服务器性能低下,这种配置反而可能更差。
      

  4.   


    我没有看懂你的意思。你想说你如何“优化”c#写的客户端?你认为开发安卓系统里跑的程序就不能用比WCF开发起来更简洁、不需要将byte[]进行字符串编码、也不需要复杂的一大堆xml格式定义、运行起来速度更是快至少好几倍的http post方式?
      

  5.   

    wcf不适合网络差的情况下使用。。
    wcf属于鸡肋性质放弃不用最好。
      

  6.   


    我没有看懂你的意思。你想说你如何“优化”c#写的客户端?你认为开发安卓系统里跑的程序就不能用比WCF开发起来更简洁、不需要将byte[]进行字符串编码、也不需要复杂的一大堆xml格式定义、运行起来速度更是快至少好几倍的http post方式?我的意思是我们的客户端是安卓代码写的,不是C#代码写的。
    我所做的测试都是通过写C#代码进行性能测试的。你的意思是我还需要把JSON转化后的字符串再次转换成byte[],是吗?