首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >面向对等内容分发网络的Git

面向对等内容分发网络的Git
EN

Stack Overflow用户
提问于 2010-08-04 09:07:47
回答 3查看 1.2K关注 0票数 1

有人以这种方式使用git吗?

我想将一些多媒体内容从服务器分发给某些Android远程设备。我希望他们发送一个带有设备使用统计信息的日志文件(由我将编写的android应用程序提供)。

服务器可以是任何东西,但我更喜欢linux盒。

我认为,由于git处理和sych文件之间的差异,它将是一个很好的工具,为此目的,我将有内容修订历史作为奖励。

我需要一些关于如何组织存储库体系结构的建议:它必须是星型拓扑还是不同的东西?

系统的远程端不需要任何交互,换句话说,远程git存储库可以自动地、自动地提取和推送它需要的任何东西。

更新:我在上找到了这里,所以git内部(我现在正在下载)的作者Scott谈到了我想要实现的体系结构。

更新2:Git的 OK我读过关于“Git的非SCM使用”的章节,下面是作者对对等CDN的看法:

你必须获得新的内容..。由xml文件、图像、动画、文本和声音的任意组合组成。您需要构建一个内容分发框架,该框架可以轻松高效地将所有必要的内容传输到网络上的机器上。您需要不断地确定每台机器都有哪些内容和需要拥有哪些内容,并尽可能有效地传递差异.事实证明,Git是解决这个问题的很好的方法。

我没有发现任何提到书里面的小部分,所以我希望我没有侵犯任何版权。无论如何,如果有人投诉,我会删除它。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-08-11 16:45:02

所以在之前的工作中,我们使用Git正是为了这个,原因是我们的媒体资产不经常变化,所以不管我们使用什么,我们都可能要发送整个文件--因此,二进制删除的问题,虽然也是其他内容分发工具的问题,并不重要。

rsync的主要优点是,您可以在索引中构建内容树,并将树存储在每个客户端的分支下,而不必在磁盘上的所有内容树上运行rsync。如果您在内容上有几个变体,那么能够记录每个客户端需要的唯一的内容树(其中可能有数千个组合),并且有一个简单的拉命令,只获取所需的内容,并在客户端上更新它,这是非常酷的。这就是我们选择Git而不是rsync的原因。如果每个客户端都需要完全相同的数据集,那么rsync可能会更容易一些,但是Git的另一个好处是,您可以获得每个客户端内容的历史记录--每个客户端的内容何时以及如何发生变化。

我们还使用它来记录日志文件--因为它们通常是非常统一的和基于文本的,它们非常出色,而且传输效率很高--我们很高兴使用它来记录和传输上游的日志数据。

票数 1
EN

Stack Overflow用户

发布于 2010-08-04 09:23:38

我建议不要用git来做这类紫癜。首先,Git将使用额外的手机存储进行修改历史记录,而且它将发送整个文件(而不是三角文件),因为多媒体内容是二进制的,并且分发不能在其上工作。只需实现一种方法,列出服务器端多媒体的最后修改日期和下载更新文件的另一种方法(我建议HTTP,因为它是最简单的)。在服务器端,您当然可以在内部使用git对多媒体文件进行版本控制,但我不希望公开git接口。

票数 2
EN

Stack Overflow用户

发布于 2010-08-04 12:55:35

git协议试图发送补丁而不是整个文件,但是git存储引擎总是存储整个文件,并且总是保留旧版本的文件。如果您不试图保存文件历史记录,则git可能不是该工作的工具。

rsync是一种成熟的文件分发系统,它可以在ssh或它自己的协议(与git相同)上工作,可以进行二进制修补,并且不一定保持更改历史。也许你可以开始寻找,看看你是否能得到这份工作。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3404072

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档