Php 如何优化xml输出,以减少数据传输时间?

Php 如何优化xml输出,以减少数据传输时间?,php,mysql,xml,cron,data-transfer,Php,Mysql,Xml,Cron,Data Transfer,嗨 我有一个cron,它调用一个基本的API URL。输出是xml,因此我使用php的文件\u get\u contents()获取要处理的数据 我的问题是,xml的输出格式是否会影响从一台服务器到另一台服务器的传输时间?cron每十分钟运行一次,我不希望cron在某个时候重叠,因为数据处理是时间敏感的 例: sometext在这里 这里有一些文字 请注意,这只是一个xml示例,我的数据使xml输出长度超过2000行 我已经对它进行了测试,对于任何类型的xml,它似乎都是相同的(可能相隔几微秒

我有一个cron,它调用一个基本的API URL。输出是xml,因此我使用php的
文件\u get\u contents()
获取要处理的数据

我的问题是,xml的输出格式是否会影响从一台服务器到另一台服务器的传输时间?cron每十分钟运行一次,我不希望cron在某个时候重叠,因为数据处理是时间敏感的

例:

sometext在这里
这里有一些文字
请注意,这只是一个xml示例,我的数据使xml输出长度超过2000行


我已经对它进行了测试,对于任何类型的xml,它似乎都是相同的(可能相隔几微秒)。有什么方法可以加快速度吗?

如果不缩短XML输出长度本身,我看不出有大的加速的可能性

为传输剥离不必要的空白是非常有用的,因为它会降低传输速度。即使不是那个穆奇。xml越长,不必要的空格越多(不需要解析xml。仅用于人类可读性),您将赢得更多。如果你有一个很深的Hirachy和许多空白使其可读,那么你将获得mutch。如果不是这样,剥离将不会降低mutch的传输速度


我所看到的唯一方法是生成更小的xml数据。

如果不缩短xml输出长度本身,我看不到大幅加速的可能性

为传输剥离不必要的空白是非常有用的,因为它会降低传输速度。即使不是那个穆奇。xml越长,不必要的空格越多(不需要解析xml。仅用于人类可读性),您将赢得更多。如果你有一个很深的Hirachy和许多空白使其可读,那么你将获得mutch。如果不是这样,剥离将不会降低mutch的传输速度


我所看到的唯一方法是生成更小的xml数据。

也许您可以尝试gzip之类的压缩。

也许您可以尝试gzip之类的压缩。

使用gzip压缩页面。您可以通过mod_gzip(apache模块)实现这一点,或者如果您使用的是PHP,请在PHP.ini中设置zlib.output_compression=On。这会将明文内容压缩到原始大小的约20%


此外,如果您关心的是尽可能最小的数据,而不是XML,则可以使用JSON发送数据。

使用gzip压缩页面。您可以通过mod_gzip(apache模块)实现这一点,或者如果您使用的是PHP,请在PHP.ini中设置zlib.output_compression=On。这会将明文内容压缩到原始大小的约20%


另外,如果您关心的是绝对最小的数据,而不是XML,您可以使用JSON发送它。

我决定使用xml,因为在概念上它比JSON处理得更好,我可以将xml输出直接转储到本地数据库。我决定使用xml,因为在概念上它比JSON处理得更好,我可以将xml输出直接转储到本地数据库。谢谢您的回复传输速度没有那么快,但仍然很快,因为我的查询被重写为更快。感谢您的回复。传输速度没有那么快,但仍然很快,因为我的查询被重写为更快。
<?xml version="1.0"?><api><data>sometext here</data></api><!-- As one line -->

<?xml version="1.0"?>
<api>
   <data>sometext here</data>
</api>   <!-- As multiple lines -->