- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我有一个通过 HTTP 运行的服务,它获取文件 block (通常为 10MB)并将它们作为 block 存储在远程文件系统上。这些 block 的组合将构成一个完整的文件。
我想从 block 中生成一些关于文件的元数据。具体来说,我想生成文件的总文件大小和 MD5 校验和。
结束文件可能相对较大(500+ MBytes)。有没有办法以分布式方式迭代生成校验和?例如,假设我有两个 Web 服务器在负载均衡器后面运行此服务,该负载均衡器在两个服务器之间分配请求。是否可以使用共享 Redis 服务器之类的东西即时生成完整文件的 MD5 校验和?
我试图避免在磁盘上本地缓存 block 或在完全上传后查询远程数据存储以获取实际文件内容。
最佳答案
您可以使用 Merkle Tree 来做到这一点, like Cassandra .
引自 Amazon 的 Dynamo 第 4.7 节,
To detect the inconsistencies between replicas faster and to minimize the amount of transferred data, Dynamo uses Merkle trees. A Merkle tree is a hash tree where leaves are hashes of the values of individual keys. Parent nodes higher in the tree are hashes of their respective children. The principal advantage of Merkle tree is that each branch of the tree can be checked independently without requiring nodes to download the entire [...] data set.
关于ruby - 分布式校验和生成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14329715/
如何在 PHP 中生成 CRC-8 校验和? 最佳答案 function crcnifull ($dato, $byte) { static $PolyFull=0x8c; for ($i=0
我正在编写代码来使用 32 位无符号整数计算 CRC16。当尝试打印执行 CRC 操作的 XOR 函数的返回值时,它总是打印 0。我尝试了各种调试方法,例如打印语句,但是,我似乎无法弄清楚! 这是我的
ThinkPHP3.2.3验证码显示、刷新、校验 ,具体如下: 显示验证码 首先在Home/Controller下创建一个公共控制器PublicController
我想将自定义验证绑定(bind)到 TimePicker 自定义控件,但下面的代码显示“无法将内容添加到 TimePicker 的对象类型。”。
目录 Spring 校验(validator,JSR-303)实现 什么是JSR-303规范 与Spring MVC结合 实体类添加
导包和配置 导入 JSR 303 的包、hibernate valid 的包 ?
我是一名优秀的程序员,十分优秀!