Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 向网络广播数据结构_Arrays_Json_Algorithm_Networking_Data Structures - Fatal编程技术网

Arrays 向网络广播数据结构

Arrays 向网络广播数据结构,arrays,json,algorithm,networking,data-structures,Arrays,Json,Algorithm,Networking,Data Structures,我有一个数据结构,我想广播到网络上,让其他人免费下载。此数据结构保存有关其他网络参与者也在运行的程序中使用的更复杂数据结构的信息 对这些数据进行编码的最佳方式是什么,以减少通过有线传输的开销 例如,“完整”数据结构将如下所示: fullData = array( 0 => array(1, 2, 3, 4, 77, 6), 1 => array(89, 2, 3, 4, 5, 6), 2 => array(1, 2, 3, 4, 5, 6), 3

我有一个数据结构,我想广播到网络上,让其他人免费下载。此数据结构保存有关其他网络参与者也在运行的程序中使用的更复杂数据结构的信息

对这些数据进行编码的最佳方式是什么,以减少通过有线传输的开销

例如,“完整”数据结构将如下所示:

fullData = array(
    0 => array(1, 2, 3, 4, 77, 6),
    1 => array(89, 2, 3, 4, 5, 6),
    2 => array(1, 2, 3, 4, 5, 6),
    3 => array(102, 22, 16, 4, 5, 6),
    4 => array(1, 2, 55, 4, 5, 27)...
……等等

我正在广播的数据本质上是这个数组中“重要”数据的索引-因此网络上的“轻量级”节点不需要解析千兆字节的数据来寻找重要信息-我的“主”程序会为它们这样做。但是,我需要向网络报告“重要”数据,因此我考虑对如下数组进行编码:

importantData = array(
    0 => array(4),
    1 => array(0),
    3 => array(0, 1, 2),
    4 => array(2, 5)...
……等等


JSON是编码并发送数据的好方法吗?我希望尽可能节省传输成本,除非另一个参数在磁盘空间或CPU周期方面更昂贵(在我的服务器和其他节点上)。我如何才能确保我以正确的方式处理这个问题?

JSON与XML相比相对较轻,但您需要确定您的端点是什么。如果您总是发送到特定的平台,那么二进制格式比这两种格式都要轻得多。JSON和XML最好在您需要很大灵活性时使用,例如PHP和ASP.net服务器之间的通信。这取决于您的数据最大值(包括键和值),但bmasterson建议的简单二进制协议(可以是()