`
lzy.je
  • 浏览: 150591 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

rubyscript2exe-0.5.3 生成 native image 的问题

阅读更多

IBM Performance Tester 7.0.2 无法录制 rubyscript2exe-0.5.3 生成的 Socket Client 应用的 Socket 通信

 

    上周五作了一份 IBM Performance Tester 实践的工具导入培训,其中为了演示基于 Socket API 协议的应用测试过程,用 Ruby 写了一个 Socket Client 应用,Server 部分由于使用了一个之前用 C# 写的 Class lib,所以使用 C# 来编写。

 

require 'socket'

command = nil
socket = nil

puts "Expression evaluator client. Version 1.0"

while(1)
  printf "expression>"
  
  command = gets()

  break if command.eql?("bye\n")
  redo if command.eql?("\n")

  begin
  
    socket = TCPSocket::new("192.168.180.22", 99)

    socket.send(command, 0)

    puts "=>#{socket.recv(4096)}"
    
  rescue Exception => err
    puts err.message
  ensure
    if (socket)
      socket.close
      socket = nil
    end
  end
  
end

 

    由于演示使用的机器没有安装 Ruby runtime,所以为了省事,使用 rubyscript2exe (0.5.3) 生成了一个 Native image 放了上去,在实践过程中发现了问题,通过 IBM Performance Tester (7.0.2) 就是无法捕捉 Socket 通信,录制的测试脚本都是空的。而通过 Loadrunner (9.0) 来录制脚本却一切正常。之后 google 到 IBM 的一个说明:“Cannot record socket traffic of Internet Explorer and other native clients ”,说是 7.0.2 和 7.0.2.1 版本 IBM Performance Tester 无法录制动态加载 ws2_32.dll 库的 Native 应用中的 Socket 通信。既然这样不行,为了验证,将 Ruby (1.8.7) runtime安装好,通过 IBM Performance Tester 启动 Ruby,以参数的方式传入 Socket client 应用的脚本,结果这样就正常录到了Socket 通信了。

 

 

rpt7.0.2-socket-record-option

 

    难道是 rubyscript2exe 生成的 Native image 中 Load library 方式与 Ruby 不同?仅仅是 Socket?

 

    另外,以上的问题是在 Windows 2003 上发现的,没有在 Linux 上验证,不知道是否也是这样。

 

// 2009.03.07 13:30 添加 ////


作者:lzy.je
出处:http://lzy.iteye.com
本文版权归作者所有,只允许以摘要和完整全文两种形式转载,不允许对文字进行裁剪。未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

 

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

相关推荐

    rubyscript2exe-0.5.3.tar.gz

    标题“rubyscript2exe-0.5.3.tar.gz”揭示了我们正在处理一个用于Ruby脚本的工具,版本号为0.5.3,它被打包成一个tar.gz文件。这种类型的文件通常在Unix或Linux环境中创建,用于归档和压缩多个文件。tar.gz格式是tar...

    rpmforge -release-0.5.3-1.el5.rf.x86_64.rpm

    rpmforge -release-0.5.3-1.el5.rf.x86_64.rpm

    webmagic-0.5.3生成的jar

    webmagic-0.5.3 webmagic-core webmagic-extension webmagic-saxon 下面是生成的jar webmagic-core-0.5.3.jar webmagic-extension-0.5.3.jar webmagic-saxon-0.5.3.jar 调试修改好久才生成,包括修改代码和修改pom....

    w3m-0.5.3.tar.zip

    标题中的“w3m-0.5.3.tar.zip”是一个软件包的名称,它采用的是常见的压缩格式,其中包含了“tar”和“zip”两种压缩算法。在Linux和Unix环境中,`tar`命令用于打包文件或目录,而`.gz`是gzip压缩格式,用于进一步...

    rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm

    centos7支持ntfs文件格式,本人空间里有简单教程

    nmealib-0.5.3.zip

    《NMEA协议解析库nmealib-0.5.3详解》 在现代导航系统中,GPS(全球定位系统)扮演着至关重要的角色。而GPS数据的传输与解析,离不开NMEA(National Marine Electronics Association)协议。NMEA协议是GPS设备与...

    physdiskwrite-0.5.3

    2. **运行physdiskwrite**:在命令行中,你将需要输入类似`physdiskwrite -d X: -f OpenWrt-image.bin`的命令,其中`X:`是你的目标设备盘符,`OpenWrt-image.bin`是你下载的OpenWrt固件文件。在执行这个命令时要特别...

    ffmpeg-0.5.3.tar.bz2

    ffmpeg-0.5.3.tar.bz2 ffmpeg是一个功能十分强大的编解码器,支持各种音视频格式。 此为0.5.3版本

    metslib-0.5.3

    metslib 应用于pcl-1.8.1的编译 如果没有可能会报错 metslib 应用于pcl-1.8.1的编译 如果没有可能会报错 metslib 应用于pcl-1.8.1的编译 如果没有可能会报错

    rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm

    用在cenos 上的

    rpmforge-release-0.5.3-1.el6.rf.i686.rpm

    适合i686的CentOS6 的rpmforge仓库 官网最近下不下来

    文本浏览器w3m-0.5.3.tar.gz

    然而,这并不意味着可以完全忽视安全问题,因此在w3m-0.5.3版本中,开发者们可能对输入验证和URL处理进行了加强,以防止潜在的安全漏洞。 w3m的应用场景广泛,比如在远程服务器上查看网页、在终端设备上浏览新闻、...

    python_snappy-0.5.3-cp34-cp34m-win_amd64

    python_snappy-0.5.3-cp34-cp34m-win_amd64

    java 反编译 luyten-0.5.3.jar

    java 反编译 luyten-0.5.3.jar

    Python库 | gitutor-0.5.3-py3-none-any.whl

    资源分类:Python库 所属语言:Python 使用前提:需要解压 资源全名:gitutor-0.5.3-py3-none-any.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    bazel-0.5.3-without-jdk-windows-x86_64.zip

    bazel-0.5.3-without-jdk-windows-x86_64.zipbazel-0.5.3-without-jdk-windows-x86_64.zipbazel-0.5.3-without-jdk-windows-x86_64.zipbazel-0.5.3-without-jdk-windows-x86_64.zipbazel-0.5.3-without-jdk-windows-...

    physdiskwrite-0.5.3.zip

    "physdiskwrite-0.5.3.zip" 是一个包含 "physdiskwrite.exe" 的压缩包,这是一款针对img镜像文件的专业写入工具。它主要用于将img格式的磁盘映像文件直接写入到物理硬盘中,以实现对硬盘的完整复制或恢复操作。在...

    java反编译工具 luyten-0.5.3

    在使用Luyten-0.5.3.exe时,确保你的系统环境已经安装了Java运行时环境(JRE),因为Luyten是一个Java应用程序。下载并执行luyten-0.5.3.exe,按照界面提示即可开始反编译过程。通过拖放或菜单选项加载目标文件,...

    PyPI 官网下载 | biblio-py-0.5.3.tar.gz

    如果使用pip,可以先运行`python setup.py sdist`生成源码包,然后在当前目录的dist子目录下找到生成的`.tar.gz`或`.whl`文件,用pip安装:`pip install .`或`pip install dist/biblio-py-0.5.3.tar.gz`。...

Global site tag (gtag.js) - Google Analytics