一个关于远程调用方式的场景
2011-11-09 14:44
176 查看
前段时间,在给公司维护一个自动传输文件的脚本,出现无法从FTP服务器上获取文件,并且每次出现这种情况的时候,是一个文件都不能获取到(而不是在传输过程出现中断),因为整个服务器群都在一个局域网内,所以可以判断网络断网的情况是很小的几率的。
关于这个传输的文件的脚本比较特殊,调用情况是这样,假设两台主机A、B。
主机A发起连接到主机B上,然后发起远程调用命令而该命令脚本是在主机B上的,该脚本目标就是从FTP服务器上获取文件),接着正常情况是B会去连接FTP服务器获取文件。
但是在服务器运行过程中,会经常隔3-6天出现一次文件没有传输。
之前判断以为远程调用命令没有调用成功,后来在命令脚本中加入了一些其他命令,经测试后,发现就是远程获取文件的命令不能成功,例如:mget 文件名,这样。
当时想了几天都没想明白,后来因为很多应用服务都部署在一台服务器上(导致对外服务压力很大)。公司就进行了一次将各种应用服务部署到多台服务器上优化工作。
我为了验证是否是ftp命令有问题,我采用了两种机制,一个用lftp,一个用ftp。
经过一个多月的测试下来发现,再也没出现无法获取文件的情况。
总结:该问题个人认为是特殊情况,其实lftp和ftp两个命令都没问题,是因为我们对部署后期的规划反应不快,导致多个应用服务负载上来后,影响到其他的应用。
关于这个传输的文件的脚本比较特殊,调用情况是这样,假设两台主机A、B。
主机A发起连接到主机B上,然后发起远程调用命令而该命令脚本是在主机B上的,该脚本目标就是从FTP服务器上获取文件),接着正常情况是B会去连接FTP服务器获取文件。
但是在服务器运行过程中,会经常隔3-6天出现一次文件没有传输。
之前判断以为远程调用命令没有调用成功,后来在命令脚本中加入了一些其他命令,经测试后,发现就是远程获取文件的命令不能成功,例如:mget 文件名,这样。
当时想了几天都没想明白,后来因为很多应用服务都部署在一台服务器上(导致对外服务压力很大)。公司就进行了一次将各种应用服务部署到多台服务器上优化工作。
我为了验证是否是ftp命令有问题,我采用了两种机制,一个用lftp,一个用ftp。
经过一个多月的测试下来发现,再也没出现无法获取文件的情况。
总结:该问题个人认为是特殊情况,其实lftp和ftp两个命令都没问题,是因为我们对部署后期的规划反应不快,导致多个应用服务负载上来后,影响到其他的应用。
相关文章推荐
- 【远程调用框架】如何实现一个简单的RPC框架(三)优化一:利用动态代理改变用户服务调用方式
- 18_Android中Service的生命周期,远程服务,绑定远程服务,aidl服务调用,综合服务案例,编写一个应用程序调用远程支付宝远程服务场景
- 关于极光速推 远程服务区ASP.NET C#调用方式
- 关于远程调用或调用web service的一个问题
- 一个关于WCF调用远程链接返回405错误不允许使用此方法的问题
- 关于EJB的远程调用sessionBean的方式
- linux 下关于Python 调用shell命令的方式
- 关于一个JS功能实现的思维方式
- 动态方法调用 在Struts2中动态方法调用有三种方式,动态方法调用就是为了解决一个Action对应多个请求的处理,以免Action太多 第一种方式:指定method属性 这种方式我们前面已经用到过
- java方式ssh协议远程调用shell
- 关于远程调用连接
- 关于__stdcall和__cdecl调用方式的理解
- JDK中的Timer和TimerTask详解 目录结构: Timer和TimerTask 一个Timer调度的例子 如何终止Timer线程 关于cancle方式终止线程 反复执行一个任务 sche
- 远程调用的几种方式
- 一个关于用Array.newInstance方式创建多维数组的问题
- 在一个Android项目里面有两个可运行文件,如何实现调用方式
- 一个关于php使用pdo方式进行数据库连接和处理的类
- [Silverlight] 一个易犯的错误:关于调用 WCF 服务
- 关于Camera.PreviewCallback的调用的三个方式
- 网易公开课《Linux内核分析》学习心得-使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用