如我所知,我希望我的脚本检查网络带宽,让我知道用户可以通过网络浏览多快.是否有任何库,允许我指定要发送的包的大小并给出ping时间或其他什么?
我想知道,在带宽和整体效率方面哪个选项最贵.
假设Client我的应用程序中有一个类,client数据库中有一个表.
它是最好有一个静态函数Client.getById检索整个客户端记录或多个(Client.getNameById,Client.getMobileNumberById即检索各领域,等等)?
如果单个记录有很多字段,并且我最终在当前脚本中使用了一个或两个,那么检索所有内容并在应用程序内部决定如何处理所有数据仍然更好吗?
有没有什么办法可以在Xcode中以编程方式检查互联网连接速度或带宽.我正在尝试这样做,因为连接速度慢会导致某些图片上传出现问题.
我正试图用命令模拟慢速网络链接tc.我netem用来模拟延迟和数据包丢失以及htb来模拟窄带宽,但我发现有一个限制选项netem,这个选项有什么作用?它会影响最终带宽吗?
我用Google搜索并在http://manpages.ubuntu.com/manpages/raring/man8/tc-netem.8.html中找到了一些东西
其中说:
将所选选项的效果限制为指示的下一个数据包的数量.
但我仍然无法理解它的作用.
我正在使用javascript开发视频流应用程序,我想告诉用户用户已消耗/使用了多少mbs数据,或者从服务器向浏览器传输了多少数据.
我可以在浏览器的网络选项卡中看到数据传输大小,但我不知道在客户端以实际方式从服务器到浏览器获取数据的实际传输大小的正确方法.
我找到了一个浏览器性能API,它是 PerformanceResourceTiming API.此api提供数据传输大小属性,但它在safari浏览器中不起作用.
找到实际数据大小传输的正确方法是什么,哪种方法适用于每个浏览器/环境
I am trying to limit the bandwidth (download / upload speed) that a HTTP request uses. I'm using the NPM package stream-throttle. I created a custom HTTP agent to pipe the socket through an instance of Throttle and have timed the speed at which a 5MB file downloads.
const http = require("http");
const net = require("net");
const {Throttle, ThrottleGroup} = require("stream-throttle");
const maxBandwidth = 100;
// an example 5MB file of random data
const str = "http://212.183.159.230/5MB.zip";
// this …Run Code Online (Sandbox Code Playgroud) 基本上我希望能够在不到3g的时间内发送几秒延迟的"实时"馈送.如果质量很差,那就没关系.如果需要,我甚至可以使用4位灰度(尽管128-256种颜色更可取).如果有必要,我愿意以> 1fps的速度低至160x120.在这种最笨重的设置中完全未压缩意味着过度饱和的低带宽连接.
我应该简单地将快照视为图像吗?是否有人熟悉Bitmapfactory的功能,以获得最低质量的JPEG?
我应该查看PNG或GIF吗?我的理解是,固体领域最适合这些.我不确定我是否可以依赖固体场而不是天空的很大一部分,因为我希望控制一架发送回"视频"的无人机.具有几秒延迟的虚拟视频很好,甚至更好,因为我预计会丢失并重新获得服务器连接.
我在"3g"上获得128k的信号,但是我不能完全依赖它.我可以做任何必要的解码服务器端 - 这应该不是问题.
所以我问你,Stack,你想通过互联网从你的智能手机上看到,并且不能依赖于良好的连接.你怎么接近它?
我确信之前已经回答了,但我找不到一个好的解释.
我正在编写一个图形程序,其中部分管道正在将体素数据复制到OpenCL页锁定(固定)内存.我发现这个复制程序是一个瓶颈,并对一个简单的性能做了一些测量std::copy.数据是浮点数,我要复制的每个数据块大小约为64 MB.
这是我的原始代码,在任何基准测试尝试之前:
std::copy(data, data+numVoxels, pinnedPointer_[_index]);
Run Code Online (Sandbox Code Playgroud)
data浮点指针在哪里,numVoxels是unsigned int,pinnedPointer_[_index]是引用固定OpenCL缓冲区的浮点指针.
由于我的性能很慢,我决定尝试复制较小的数据部分,看看我得到了什么样的带宽.我使用boost :: cpu_timer进行计时.我已经尝试运行它一段时间以及平均数百次运行,得到类似的结果.以下是相关代码以及结果:
boost::timer::cpu_timer t;
unsigned int testNum = numVoxels;
while (testNum > 2) {
t.start();
std::copy(data, data+testNum, pinnedPointer_[_index]);
t.stop();
boost::timer::cpu_times result = t.elapsed();
double time = (double)result.wall / 1.0e9 ;
int size = testNum*sizeof(float);
double GB = (double)size / 1073741842.0;
// Print results
testNum /= 2;
}
Copied 67108864 bytes in 0.032683s, 1.912315 GB/s
Copied 33554432 bytes in 0.017193s, 1.817568 GB/s
Copied 16777216 …Run Code Online (Sandbox Code Playgroud) 在我的职业生涯中已经完成了多个网站,我对不同网站的带宽利用率很熟悉。但是,由于大多数站点都托管在无限制的程序包中(这意味着该程序在其他程序之间共享)或每月1-2GB的带宽,因此目前尚无任何站点加载速度缓慢的报道。
我的问题是,计算每天估计有2000位访问者的典型网站(例如,假设您托管默认的Joomla页面)所需的带宽的最佳方法是什么?仅将2000除以页面大小就足够了吗?还是还有更多呢?
我正在尝试实施带宽测试,看起来最常规的方法是在客户端和服务器之间来回传输一个或多个图像,看看上传和下载时间是多少.事实上,这个答案已经涵盖了获取下载时间的想法.
但是,在这一点上,我不太确定如何使用或不使用其他答案来使流程双向进行.即使在添加调试语句之后,我还没有找到图片数据存储在其他答案代码中的位置.如果我尝试从一个干净的平板开始,我在Internet/Stack Overflow上发现的很多关于来回发送图像的API信息几乎没有解释或详细说明,所以我无法使用它把两者放在一起.此外,我将有时涉及其他平台的一些实验放在一起似乎真正限制了带宽使用,以及根据图像的大小不正确地缩放延迟.
使用JavaScript,您如何在客户端和服务器之间来回传输相同的图像,以便您可以准确地使用延迟和图像的大小来测量带宽?如何使用相同的图像,无需限制,并且没有用户的交互,这两种方式都可以工作?
编辑
我可以尝试发布我尝试过的东西,但它很难有意义.其中很多都是在Flash中.当我开始使用JavaScript时,我开始尝试这些方面:
$.get('http://ip address/test.php?filename=XXX&data=LONG STRING OF DATA REPRESTING THE DATA TO BE SAVED PROBABLY LESS THAN 2K IN SIZE AND ALSO YOU SHOULD ESCAPE OR ATLEAST URIENCODE IT', function(data) {
alert('here')
eval(data);
});
Run Code Online (Sandbox Code Playgroud)
PHP文件是:
<?php
echo "response=here";
?>
Run Code Online (Sandbox Code Playgroud)
我将PHP文件用于Flash和JavaScript.我还使用Adobe Media Server和Flash.但是在使用Flash/PHP时,从1MB文件到32MB文件,Flash只会将延迟缩放10倍,远不及32.它似乎也至少在与AMS配对时限制带宽使用,甚至可能与PHP文件配对.
我准备转换JavaScript代码以将实际图像传递到PHP文件...但我无法达到它.即使我做的事情如下:
for (var s in download) {
alert(s + ": " + download[s]);
}
Run Code Online (Sandbox Code Playgroud)
download作为在JavaScript中下载图像的对象(参见代码的链接答案),我没有看到任何有用的东西. download.children.length是0等等.我也不愿意相信结果不会限制带宽使用,就像Flash实验那样,没有进一步的确认; 也许图像必须使用一种类型的API调用或其他类型来传递,以使其真正正常工作?
从本质上讲,我真的在寻找好的API信息.我看到的其他东西并不精确,无法连接点.
2ND编辑
我遇到的一个陷阱是使用POST来下载图像.我在使IIS 7允许POST下载具有 "异常"二进制字符的任意文件类型(即jpgs)并允许它们大小超过2MB 时遇到了很多困难.