`
san_yun
  • 浏览: 2638779 次
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

socket参数对性能的影响

 
阅读更多

今天发现线上一台机器的cilent端很慢,通过打点记录相关耗时:

写道
server:
13-03-26 14:30:12 [INFO] com.duitang.biz.blog.impl.MysqlBlogQueryServiceImpl - queryBlogDetail cost40 ms
13-03-26 14:30:12 [INFO] com.duitang.dboss.remote.nio.DbossServerHandler - dboss invoke cost 45 ms
13-03-26 14:30:12 [INFO] com.duitang.dboss.remote.nio.DbossServerHandler - dboss invoke cost 20 ms

client
13-03-26 14:30:12 [INFO] com.duitang.dboss.client.net.ServerCenter - servercenter invoke cost 86 ms
13-03-26 14:30:12 [INFO] com.duitang.dboss.client.net.ServerCenter - servercenter invoke cost 22 ms

 通过定位发现原因在于socket没有正确设置参数,应该加上:

    public void connect() throws DbossConnectionException {
        if (!isConnected()) {
            try {
                socket = new Socket();
                socket.setReuseAddress(true);
                socket.setKeepAlive(true);
                socket.setTcpNoDelay(true);
                socket.setSoLinger(true, 0);
                socket.connect(new InetSocketAddress(host, port), timeout);
                socket.setSoTimeout(timeout);
            } catch (IOException ex) {
                throw new DbossConnectionException(ex);
            }
        }
    }

 

分享到:
评论

相关推荐

    socket性能测试脚本

    在IT行业中,尤其是在服务器开发、网络编程或系统优化领域,对Socket性能的理解和测试是至关重要的。Socket是网络编程的基础,它允许两个应用程序通过网络进行数据交换,因此,性能测试能够帮助我们了解系统的吞吐量...

    Socket协议参数化的方法

    Socket协议的参数化是LoadRunner性能测试中不可忽视的重要环节。通过灵活运用直接创建参数与通过函数创建参数的方法,可以显著增强脚本的适应性和测试结果的准确性。然而,为了充分利用参数化的优势,测试人员必须对...

    提高 Linux 上 socket 性能 加速网络应用程序的 4 种方法

    综上所述,优化 socket 性能涉及多个层面,包括避免不必要的延迟,减少系统调用的开销,以及根据网络特性调整 TCP/IP 参数。理解这些技术并灵活应用,能帮助你构建更高效、响应更快的网络应用程序。同时,持续关注 ...

    Loadrunner之socket脚本参数化方法

    《Loadrunner之Socket脚本参数化深度解析》 在Loadrunner这款强大的性能测试工具中,参数化技术是一项关键技能,它允许用户将测试脚本中的静态数据替换为动态数据,从而实现更复杂、更真实的负载模拟。对于基于...

    Socket性能测试指导.doc

    Socket性能测试是网络应用开发中的重要环节,它旨在评估应用程序在网络通信中的性能,例如吞吐量、延迟和并发处理能力。 kylinPET 是一个专门用于Socket性能测试的工具,能够支持多种网络通信协议,包括HTTP、SIP、...

    提高 Linux 上 socket 性能

    本文将深入探讨四个关键技巧,帮助提升Socket性能。 1. **最小化报文传输的延时**: Nagle算法是一种TCP优化策略,它合并小的数据片段,以减少网络上的数据包数量,降低网络拥塞。然而,这可能会增加传输延时。在...

    socket池,socket

    1. 初始化与配置:在应用程序启动时,根据预设的参数初始化Socket池,如最大连接数、最小连接数、超时时间等。 2. 获取Socket:当需要建立连接时,从池中取出一个Socket,如果池为空,则创建新的Socket。可以采用...

    SocketTool socket工具

    6. **参数配置**:用户可以根据需求调整各种连接参数,如超时设置、缓冲区大小等,以优化性能。 7. **安全性**:为了保障数据的安全,SocketTool可能还集成了加密功能,如SSL/TLS,确保通信过程中的数据不被窃取或...

    资料socket性能优化

    ### 资料socket性能优化 #### 一、引言 在开发Socket应用程序时,确保其性能至关重要。本文旨在提供四个实用的技巧帮助开发者优化Socket应用程序的性能,使其能够更高效地运行。这些技巧涵盖了Socket API的使用、...

    HP-Socket文档

    应用程序可以根据不同的容量要求、通信规模和资源状况等现实场景调整 HP-Socket 的各项性能参数(如:工作线程的数量、缓存池的大小、发送模式和接收模式等),优化资源配置,在满足应用需求的同时不必过度浪费资源...

    SuperSocket Socket C# 通讯详细介绍

    **SuperSocket Socket C# 通讯详解** 在C#编程领域,网络通信是一个不可或缺的部分,而SuperSocket则是一个强大且易用的.NET ...通过不断实践和优化,可以充分利用SuperSocket的强大能力,构建出高性能的C#网络应用。

    java socket连接池 实现

    在高并发的网络环境中,频繁地创建和销毁Socket连接会导致大量的系统资源浪费,影响整体性能。为了解决这个问题,开发人员通常会使用连接池来管理和复用已建立的Socket连接。 首先,我们来看一下Socket的基本概念。...

    socket 编程之入门与提高

    2. 套接字创建:在C++中,使用`socket()`函数创建一个套接字,参数包括协议族(如AF_INET代表IPv4)、套接字类型(如SOCK_STREAM)和协议(通常为0,系统自动选择默认的TCP或UDP)。 3. 地址结构:如`sockaddr_in`...

    socket_socket_

    同时,为了提高并发性能,服务器端可能需要使用多线程或多进程来处理多个客户端的连接请求。 **六、示例代码** 下面给出一个简单的TCP服务器和客户端示例: 服务器端(Python): ```python import socket s = ...

    Socket开发之异步Socket

    6. 状态管理:为了跟踪每个客户端连接的状态,通常会创建一个包含Socket对象和其他相关信息(如缓冲区、连接状态等)的自定义类(如`UserInfo`),并在回调函数中使用`AsyncState`参数来访问这些信息。 异步Socket...

    基于HPSocket实现 socket 通讯 - 修正版 ( C# demo 、 C++ dll )

    这包括如何创建Socket实例,设置连接参数,发送和接收数据,以及处理各种事件。 7. **C++ DLL**: C++动态链接库(DLL)提供了另一种语言实现,开发者可以在非.NET环境中使用HPSocket的功能。DLL文件可以被其他C++...

    提高socket性能

    优化Socket性能对于提高系统整体效率和用户体验至关重要。以下将详细探讨如何提升Socket性能。 1. **选择正确的套接字选项** - **TCP_NODELAY**: TCP协议默认使用Nagle算法,合并小数据包以减少网络传输。但在需要...

    smart-socket,一种高性能的Java AIO框架.zip

    4. **线程池管理**:通过自定义线程池,实现了对系统资源的精细化管理,避免了过多线程导致的资源浪费,同时也支持动态调整线程池参数以适应不同的业务场景。 5. **异常处理**:提供了完善的异常处理机制,当网络...

    HP-Socket编译-Linux

    总之,编译HP-Socket在Linux上涉及到了对socket编程的理解,以及对Brotli、Jemalloc、Zlib、mimalloc和OpenSSL等基础库的安装和集成。每个库都有其独特的优化点,它们共同为HP-Socket提供了高效、安全的网络通信基础...

Global site tag (gtag.js) - Google Analytics