怎么管理大量二进制文件比较好?

2021-03-25 16:21:55 +08:00
 frmongo
RT,团队有很多打包工作,一年下来也成千上万个了,希望把每个包的 release tag,和关联的一堆键值对(主要是各种参数)记录下来,有什么好的平台可以使用吗?
出于方便管理\链接分发\海量文件中快速根据键值对搜索结果 等等这些目的,想整个平台
现在我有两个思路,1 是自己开发一个平台,插库,将二进制文件和一堆文本信息关联起来,web 展示
2 是找一个造好的轮子的服务,可以简单配置下直接使用。
各位大佬有没有推荐的思路
3570 次点击
所在节点    Python
13 条回复
csulyb
2021-03-25 16:29:54 +08:00
没有比 jekins 更合适 要搜索的东西可以自己记录到数据库
bthulu
2021-03-25 18:24:12 +08:00
键值对直接写到 release 包文件属性里, 搜索的时候, 直接用 windows 资源管理器里对文件属性进行检索
omph
2021-03-25 18:38:39 +08:00
joesonw
2021-03-25 18:43:59 +08:00
这不就是 Bintray 嘛
ch2
2021-03-25 19:28:20 +08:00
不就才上万个吗,Mongo 一张表的事
gBurnX
2021-03-25 19:53:22 +08:00
@ch2 同意,我甚至觉得一张 Excel 的事情...

如果我是你,直接 C#写个 WCF 用 SQL Server 管理,既方便有 WCF 接口可以提供 API,SQL Server 这种东西又能管理起来很省心。
iyaozhen
2021-03-25 20:33:28 +08:00
和你们公司的 CI/CD 系统结合起来,你提供各接口,打包完成后 上传给你,你存储到对象文件系统

当然请求接口的时候不光要传文件,还得传一些参数,比如版本啥的。(你要不嫌麻烦也能从 apk 里面获取)
WIN233
2021-03-26 00:23:53 +08:00
artifactory ?
stabc
2021-03-26 00:30:14 +08:00
就目前这些需求,MongoDB 很适合你。
kerro1990
2021-03-26 08:41:57 +08:00
MongoDB
frmongo
2021-03-26 15:20:24 +08:00
我用了现成的 nextCloud 服务,然后用 python 将文件上传到 nextCloud,然后将 share link 和其他参数记录到另外一个数据库里,目前打算这么实现
littlewing
2021-03-26 15:51:43 +08:00
@ch2 一个 sqlite 的事
autotesting
2021-03-26 22:52:57 +08:00
分享一下我们已经做好的实现,基本就是上面提到的方法。

我们用 jenkins pipeline 支持各种编译操作,同时建一个下游 job 专门用来收集上游 job 的各种构建参数信息,然后通过 api 塞给一个自建的服务,包括版本号,版本构建原因,构建者,xxxx,然后由这个自建服务实现构建信息的可视化,同时 ci/cd 如果支持自动化测试或者自动化发布,都可以将信息关联到这个自建服务,这个自建服务,可以有效量测每个版本发布的质量以及各处历史的版本质量指标的横向对比。

当然也可以据此挖掘出一些 ci 服务指向型的信息,比如,某个 app 版本的构建时间的减少,量测出,我们在这个 app 版本上投入的缩短编译时间的投入收获,等等。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/765068

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX