局域网快速传输数据(大量文件)

本文介绍了在局域网内利用Python的http-server模块实现主机间快速数据传输的方法,包括环境搭建、文件共享、服务启动和IP查询等步骤。然而,实际测试中速度未达预期,作者发现只能通过下载压缩包实现文件传输,并探讨了隐藏命令行界面和无界面运行的问题。此外,还提出了解决cmd命令行关闭导致服务暂停的可能方案。
摘要由CSDN通过智能技术生成

需求(情景)

机器性能与工作量原因,有一堆实验需要在不同机器同时进行,试验之后需要把数据汇总,每次通过用移动硬盘去拷贝带回来实在是麻烦而且传输速度受限,我的硬盘大概在40M到80M/s,但是在面临几十G大数据的时候仍是会显得很无力。
于是想着如何能够无须借助中介快传数据(防止时间double),有通过网线快传的方式,但是在不同办公室的机器通过硬件相连甚至还不如我用硬盘来回拷贝方便。
就想着如何能不通过硬件,然后发现一个局域网内快传的方法,据说最大能达到800M每秒。md我自己实测只有4M每秒,还是要根据需求来,或许可以选择FTP方式可以快一些。

1. 本机搭建http-server

python环境

由于是通过python来搭建http服务的,所以首先要有python环境。自行寻找教程下载安装。
没有python的话建议选择其他方式传输数据,这方法特么速度不快还事多。

创建文件夹,设置共享

自己找一个地方创建一个文件夹,设置为共享:
如下图红色标注和蓝色标注两种方式打开设置。
在这里插入图片描述

选择所有用户:
在这里插入图片描述
其实个人感觉这个共享可以不设置,因为这个everyone好像是指本电脑的其他用户而已,反正我设置了。

python开启http-server

在此共享文件夹下打开cmd命令行,输入python -m http.server [端口号]
在这里插入图片描述
回车之后显示下面第一行命令表示http服务已经开启。

本机ip查询

随便在一个位置打开cmd命令行输入ipconfig即可查询。

2. 其他计算机访问

其他计算机直接浏览器输入ip+端口号就可以访问了。
在这里插入图片描述

本机查看访问信息

然后本机会显示访问信息:
在这里插入图片描述
这个cmd命令行关了就代表服务也关了,也不能点击,因为点击代表输入,就相当于暂停,点击了的话点一下回车就行了。ctrl+c可以停止服务。
传输的时候打开,不传输的时候关闭就行。

待解决的问题

在我个人的实验中,通过浏览器只能查看和访问这个文件夹以及文件,却不能下载,我是没找到下载选项,头秃。 已解决!!!

解决方法

如果是文件夹或者文件的默认选项是打开,长久思考之后我尝试了一个zip压缩包上去,再点击,默认下载了hhh。所以下载只能下载压缩包。

其它问题

先前所说,如果cmd命令行关闭或者点击就会暂停服务,那么如何不显示cmd命令行呢?
pythonw 命令可以,pythonw和python的区别就是pythonw是可视化程序中使用的,即不显示命令行窗口,也就是说转为后台运行。
但是这种情况也会出现一个问题:转为后台运行,如何去关闭,只能通过去任务管理器找到这个后台程序(据我查询,可能名字叫python,但是我没敢关,因为我有在用python做其他事情,反正局域网内可用)。或者通过搜索端口,把你先前占用的那个端口给他闭了,应该就可以了,仅猜想。

可以个锤子,我试了不行,pythonw虽然可以无视图,但是是在可视化软件中在后端使用的。
这个我用了pythonw不行,而且,我通过把开启http服务的命令放在一个pyw文件中再通过pythonw命令去执行也是不行的,虽然可以执行,但是不能访问。
可能是因为httpserver必须要返回信息,所以一定要有输出信息的路径吧,但是我就是简单使用,所以并不打算研究如何让他无界面运行,而且把这么个命令封装成windows服务好像也挺麻烦的,暂时就是通过在其他桌面打开命令行挂着。

局域网文件传输的速度受到多个因素的影响,包括但不限于以下几点: 1. 网络带宽:局域网的速度受到局域网内网络带宽的限制。如果网络带宽较低,文件传输的速度就会相应变慢。 2. 网络拥塞:如果局域网内的设备数量较多,同时进行大量文件传输,可能会导致网络拥塞,从而影响传输速度。 3. 设备性能:参与文件传输的设备的性能也会对传输速度产生影响。如果设备的处理能力较低或者存储速度慢,可能会导致传输速度下降。 对于Mac电脑而言,其网络适配器和硬件性能一般都具备较高的传输速度潜力。如果局域网文件传输速度较慢,可以考虑以下几个方面进行优化: 1. 更新硬件驱动程序:确保Mac电脑上的网络适配器驱动程序是最新的,以获得更好的性能。 2. 优化网络设置:检查局域网内的路由器、交换机等设备的设置,确保其工作在最佳状态下,例如启用QoS(服务质量)功能,以优先处理文件传输的数据流量。 3. 减少网络干扰:移除或减少局域网内其他设备的同时大量使用网络的行为,例如下载大文件、观看高清视频等,以避免网络拥塞。 4. 使用有线连接:如果可能,尽量使用有线连接代替无线连接,因为有线连接通常具有更快的传输速度和更稳定的连接质量。 5. 使用专业的文件传输工具:有些第三方的文件传输工具可能比操作系统自带的传输方式更高效,可以尝试使用这些工具来提升文件传输速度。 需要注意的是,局域网文件传输速度的提升还取决于其他设备和网络环境的因素,因此,对于整个局域网的性能进行评估和优化也是重要的。<span class="em">1</span> #### 引用[.reference_title] - *1* [python使用tcp实现局域网内文件传输](https://download.csdn.net/download/weixin_38548434/12867367)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值