在PHP手册中,有一条关于gzVD ate的评论说:
gzcompress产生更长的数据,因为它将有关编码的信息嵌入到字符串中。如果您正在压缩只能在一台机器上处理的数据,那么您无需担心使用这些函数中的哪一个。但是,如果您将使用这些函数压缩的数据传递到不同的机器,您应该使用gzcompress。
然后
在各种内容上运行50000次重复,我发现无论内容和压缩级别如何,gzflate()和gzcompress()都表现得同样快,但gzflate()总是比gzuncompress()快两倍。
出于我的目的,我将数据归档在机器上以备将来使用。数据经常读取,但只写入一次。理论上,如果我在某个时候更换服务器,它总有一天会被转移到另一台机器上,但这需要几年的时间。
与gzcompress和gzuncompress相反,使用gzdeflate和gz充气安全吗?
我的想法如下:gzflate更快,这将对服务器有很大帮助,因为会有很多读取请求。如果在未来的某个时候我无法读取文件,那么我应该能够弄清楚如何解压缩文件并重新压缩它,对吗?这并不是说gzflate有一天会神奇地不起作用,就像第一条评论似乎说的那样。即使缺少6字节的标头,我也相信它会以某种方式扩展。
思想?
更新--基准
每次10000次迭代:
gzdeflate took 19.158888816833 seconds and size 18521
gzinflate took 1.4803981781006 seconds
gzcompress took 19.376484870911 seconds and size 18527
gzuncompress took 1.6339199542999 seconds
gzencode took 20.015944004059 seconds and size 18539
gzdecodetook 1.8822891712189 seconds
该评论是无稽之谈。您可以使用gzcompress
、gzderate
或gzencode
中的任何一种来生成可以在任何地方可移植地解压缩的压缩数据。这些功能仅在放气数据的包装器中有所不同(RFC 1951)。gzcompress
有一个zlib包装器(RFC 1950),gzderate
没有包装器,gzencode
有一个gzip包装器(RFC 1952)。
我建议不要使用gzdeflate,因为没有包装意味着没有完整性检查<代码>gzdeflate仅当在该包装之外生成其他包装时才应使用,例如对于也使用deflate格式的zip文件。关于速度的评论几乎肯定是错误的。与解压缩相比,gzuncompress()的完整性检查花费的时间很少。你应该自己做测试。
从这个例子来看,我可能过于概括了,但是我想说您应该完全忽略PHP留档中的注释。慷慨地说,它们是无知的。
顺便提一下,这些函数的命名方式非常混乱。只有gzencode在名称中应该有“gz”,因为这是唯一一个真正处理
的名称。gz格式
gzcompress听起来像是压缩到gzip格式,但实际上它压缩到zlib格式。
是否有限制playbook运行到一台机器的最佳实践?理想情况下,如果遗漏了一些重要的细节,剧本应该是无害的。
我有一个应用程序在各种OSGI捆绑包中分离,这些捆绑包在单个Apache Karaf实例上运行。但是,我想迁移到微服务框架,因为 Apache Karaf由于其依赖机制和 我希望以后能够将应用程序带到云端(AWS、GCloud等) 我做了一些研究,查看了各种框架,并得出结论,Quarkus可能是正确的选择,因为它基于容器的方法、性能和可能的云集成机会。 现在,我在某一点上苦苦挣扎,到目前为止我还没
5.12.1. 在Windows下运行多个服务器 5.12.2. 在Unix中运行多个服务器 5.12.3. 在多服务器环境中使用客户端程序 在一些情况下,你可能想要在同一台机器上运行多个mysqld服务器。你可能想要测试一个新的MySQL发布,同时不影响现有产品的设置。或者,你可能想使不同的用户访问来访问不同的mysqld服务器以便他们自己来管理。(例如,你可能是一个Internet服务提供商,
我想知道我是否可以在一台机器上运行多个独立的neo4j实例。我知道我可以将多个实例配置为HA集群(此处),但这不是我的意图,我只需要在我的机器上使用两个完全不同且独立的neo4j实例(如果有区别的话,这是一个Mac OSX)。这只是为了我的开发测试,我尝试了有两个不同的目录,有不同的,并为它们设置了两个不同的端口,但只有一个运行正常。 如果有任何帮助,我将不胜感激。谢谢你。
我在Java开发了一个客户端-服务器游戏(称为“Set”)。 在调试过程中遇到了一个非常尴尬的问题: 如果在同一台机器上同时运行客户端和服务器(客户端连接到localhost),这个游戏工作得很棒(如果我运行服务器和大量客户端的话也是如此)。 但是,如果我在两台不同的机器上运行客户端和服务器,那么客户端和服务器都挂起了Inputstream readLine方法。 我会提到我正在使用writeBy
我在Ubuntu 18.04上下载了两个版本的neo4j-community-3.5.12和neo4j-community-3.5.8。 我用默认设置运行3.5.8,我可以从网上看到它。http://localhost:7474/ 对于3.5.12,我更改了conf/neo4j.conf文件,并设置了一些其他端口号,以避免与默认端口号冲突。 这里有一个现有的/d1/data/database/gr