`

.net WebService 大数据量时性能的提高

    博客分类:
  • .net
 
阅读更多

.net WebService 大数据量时性能的提高

1.直接返回DataSet对象

 

 [WebMethod(Description = "直接返回DataSet对象")]
        public DataSet GetUserListDateSet()
        {
            SqlConnection sqlCon = new SqlConnection("Data Source=.,1444;Initial Catalog=StudyNet;Persist Security Info=True;User ID=**;Password=******");
            SqlCommand cmd = new SqlCommand();
            cmd.Connection = sqlCon;
            cmd.CommandText = "select * from T_User";
            SqlDataAdapter da = new SqlDataAdapter(cmd);
            DataSet ds = new DataSet();
            da.Fill(ds);
            return ds;
        }
 
2.返回DataSet对象用Binary序列化后的字节数组
[WebMethod(Description = "返回DataSet对象用Binary序列化后的字节数组")]
        public byte[] GetUserListDateSetBytes()
        {
            DataSet ds = GetUserListDateSet();
            //序列化
            BinaryFormatter ser = new BinaryFormatter();
            MemoryStream stream = new MemoryStream();
            ser.Serialize(stream, ds);
            return stream.GetBuffer();
        }
3.返回DataSetSurrogate对象用Binary序列化后的字节数组
[WebMethod(Description = "返回DataSetSurrogate对象用Binary序列化后的字节数组")]
        public byte[] GetUserListDateSetSurrogateBytes()
        {
            DataSet ds = GetUserListDateSet();
            DataSetSurrogate dss = new DataSetSurrogate(ds);
            //序列化
            BinaryFormatter ser = new BinaryFormatter();
            MemoryStream stream = new MemoryStream();
            ser.Serialize(stream, dss);
            return stream.GetBuffer();
        }
 
4.返回DataSetSurrogate对象用Binary序列化并Zip压缩后的字节数组
[WebMethod(Description = "返回DataSetSurrogate对象用Binary序列化并ZIP压缩后的字节数组")]
        public byte[] GetUserListDateSetSurrogateZipBytes()
        {
            DataSet ds = GetUserListDateSet();
            DataSetSurrogate dss = new DataSetSurrogate(ds);
            //序列化
            BinaryFormatter ser = new BinaryFormatter();
            MemoryStream stream = new MemoryStream();
            ser.Serialize(stream, dss);
            //压缩
            return Compress(stream.ToArray());
        }
        /// <summary>
        /// 压缩数据
        /// </summary>
        /// <param name="data"></param>
        /// <returns></returns>
        public byte[] Compress(byte[] data)
        {
            MemoryStream ms = new MemoryStream();
            GZipStream zipStream = new GZipStream(ms, CompressionMode.Compress);
            zipStream.Write(data, 0, data.Length);//将数据压缩并写到基础流中
            zipStream.Close();
            return ms.ToArray();
        }
  5.结果图


 
  • 大小: 70.6 KB
分享到:
评论

相关推荐

    .net webservice大数量时性能的提供

    本篇文章将深入探讨如何在处理大数据量时提升.NET Web服务的性能。 首先,理解性能瓶颈是关键。在.NET Web服务中,性能问题可能源于以下几个方面: 1. **数据传输**:大数据量可能导致网络传输效率降低。考虑使用...

    短信猫C#、asp.net webservice发短信

    3. **ASP.NET WebService**:ASP.NET WebService是一种基于SOAP协议的Web应用程序,可以提供跨平台、跨语言的数据交换能力。在这个项目中,我们将创建一个WebService,作为短信发送的远程接口,其他应用程序可以通过...

    .NET_Webservice数据压缩

    总结来说,.NET Webservice数据压缩是一种有效的优化策略,尤其适合处理大数据量的网络传输。通过使用内置的压缩机制,开发者可以免费且可靠地提升WebService的性能,降低网络负载。然而,根据具体需求,可能需要...

    Spring.Net开发WebService

    Spring.NET 是一个开源的.NET框架,它为.NET开发者提供了与Java平台上的Spring框架类似的轻量级依赖注入(DI)容器和服务。在这个特定的话题中,我们将深入探讨如何利用Spring.NET来开发Web服务,尤其是WebService。...

    提高WebService性能大数据量网络传输处理

    "提高WebService性能大数据量网络传输处理"这个主题关注的是如何在Web服务中有效地处理和传递大量数据。以下是一些关键知识点: 1. **DataSetSurrogate对象**:DataSet是.NET Framework中的一个强大组件,用于存储...

    java调用.net的WebService[借鉴].pdf

    同时,考虑性能优化,如缓存、连接池等技术,以提高调用效率。 6. **总结** 跨平台调用 WebService 是软件集成的重要环节,Java 能够很好地支持这一功能。理解 SOAP 协议,以及如何在 Java 中构造和解析 SOAP 消息...

    WebService测试工具比postman更简单,.NET开发

    WebService测试是软件开发过程中的重要环节,特别是在.NET框架下进行Web服务开发时,验证服务功能、性能和稳定性显得尤为重要。Postman是一款广受欢迎的API测试工具,但它并非唯一的选择。本篇文章将探讨一种比...

    WebService在.NET中的实战应用二提高WebService性能(源码PPT等资源)

    - 使用流式传输:通过使用Stream对象而不是一次性加载整个响应,可以减少内存消耗,尤其是在处理大数据量时。 - 缓存策略:缓存重复请求的结果,避免每次都执行相同的计算或数据库查询。 - 响应压缩:启用GZIP或...

    WebService处理大数据量数据.pdf

    在处理大数据量数据时,尤其是通过WebService接口进行交互,可能会遇到一些特定的挑战。本文主要讨论的是当数据量过大导致的“超过最大请求长度”的错误,以及如何解决这个问题。 首先,这种错误通常出现在ASP.NET ...

    提高WebService速度方法

    3. **压缩传输**:开启HTTP压缩可以减少网络传输的数据量,提高数据交换效率。 4. **服务版本管理**:合理设计服务版本,避免因频繁更改接口导致的重新编译和部署,可以减少不必要的性能影响。 5. **负载均衡与...

    spring.net整合webservice实例

    Spring.NET的AOP支持可以让我们在Web服务调用前后添加拦截器,实现如日志记录、性能监控等功能,提高代码复用和解耦。 7. **集成测试**: 使用Spring.NET,我们可以轻松地创建模拟对象(Mock Objects)替代真实的...

    WebServiceStudio C#源码

    WebServiceStudio是一款基于C#开发的轻量级工具,主要用于测试和调试Web服务接口。这个工具的源码提供了深入理解Web服务交互机制的机会,对于学习和开发相关应用具有很高的价值。以下将详细介绍其中涉及的主要知识点...

    Android访问.NET的WebService

    本示例项目“Android访问.NET的WebService”提供了一种方法,让Android客户端能够调用.NET Web服务并处理返回的数据。以下是这个示例的关键知识点和实现步骤。 1. **SOAP协议**:Android通过SOAP(Simple Object ...

    asp.net Web Service 接口大量数据传输解决方案

    具体到本方案,即“使用多线程分段获取大量数据方法”,主要是将庞大的数据量分解为多个小块,并通过多个线程并行获取这些数据块。这样做的好处在于可以最大化利用服务器资源,缩短数据处理时间,提高用户体验。 ...

    微信小程序与webservice(.net)数据交互用例

    在这个用例中,我们将探讨如何使微信小程序与.NET开发的Webservice进行数据交互。 首先,我们需要了解微信小程序的基本结构。微信小程序由JSON配置文件(app.json)、页面配置文件(page.json)、WXML(微信小程序...

    ASP.NET使用WebService创建模糊查询窗体

    在ASP.NET中,WebService是一种基于HTTP协议的轻量级通信技术,它允许Web应用程序之间进行交互,实现数据的传输和共享。本主题将深入探讨如何使用ASP.NET和WebService来创建一个支持模糊查询功能的窗体。 一、ASP...

    jquery调用基于.NET Framework 3.5的WebService返回JSON数据

    在本文中,我们将深入探讨如何使用jQuery来调用基于.NET Framework 3.5的Web服务,并接收以JSON格式返回的数据。jQuery是一个强大的JavaScript库,它简化了与服务器端的交互,而.NET Framework 3.5提供了创建Web服务...

    ASP.NET & WebService教学ppt(下)

    4. **自动编译和部署**:ASP.NET应用可以被自动编译成中间语言(IL),提高了运行时的性能。同时,部署过程也相对简化。 5. **集成开发环境**:Visual Studio作为ASP.NET的主要开发工具,提供了强大的调试、集成...

    VBNet实现WebService开发.docx

    【VB.Net实现WebService开发】 Web Service是一种基于互联网的软件组件,允许不同系统间的数据和功能交换,不受操作系统或编程语言的限制。VB.Net是Visual Basic的.NET版本,它提供了强大的工具来开发和消费Web ...

Global site tag (gtag.js) - Google Analytics