当前位置: 首页 > news >正文

vps建设网站别人访问不了站长之家whois查询

vps建设网站别人访问不了,站长之家whois查询,如何在凡科上做网站,厦门网络推广哪家强1、git数据结构 git 中存在四种数据结构,即object包含四种,分别是tree对象、blob对象、commit对象、tag对象 1.1 blob对象 存储文件内容,内容是二进制的形式,通过SHA-1算法对文件内容和头信息进行计算得到key(文件名)。 如果一…

1、git数据结构

git 中存在四种数据结构,即object包含四种,分别是tree对象、blob对象、commit对象、tag对象

1.1 blob对象

存储文件内容,内容是二进制的形式,通过SHA-1算法对文件内容和头信息进行计算得到key(文件名)。
如果一个commitId为73c17abe44977ee82cd949f489996c2715335119,则这个blob文件在.git/objects/73文件夹下,名为c17abe44977ee82cd949f489996c2715335119,也就是说hash值的前两位为objects目录下子目录的名字,剩余38位为文件名。

1.2 tree对象

可以看作一个目录,管理一些“tree”对象或是“blob”对象。它有一串指向“blob”对象或是其它“tree”对象的指针,一般用来表示内容之间的目录层次关系(就像文件和子目录)

1.3 commit对象:

commit对象指向一个“tree对象”,并且带有相关的描述信息,标记项目某一个特定时间点的状态。它包括一些关于时间点的元数据,如时间戳、最近一次提交的作者、指向上次提交的指针等

commit、tree、blob关系可以总结如下:
一个commit对应一个tree对应多个blob
在这里插入图片描述

1.4 tag对象:

一个tag对象包括一个对象名(SHA1签名)、对象类型、标签名、标签创建人的名字(“tagger”), 还有一条可能包含有签名(signature)的消息。
通过

总结

git每次提交存储的都是整个文件,而不是采用增量,所以会导致存储数据量很大,git针对此采用了zlib对数据进行压缩,可以采用cat-file命令来查看

一旦将内容存储在了对象数据库中,那么可以通过 cat-file 命令从 Git 那里取回数据。 为 cat-file 指定 -p 选项可指示该命令自动判断内容的类型,并为我们显示大致的内容:
在这里插入图片描述

2、git pack

git向仓库中推送文件时存储使用的是“松散文件”,如果有一个1.txt现在是10k,下次推送增加了0.1k,也就是说现在是10.1k,name第二个版本就会重新产生一个1.1k的文件,这样会产生磁盘浪费,所以git会将这些文件打包成一个二进制类型的包文件(packfile),并生成对应的.idx索引文件,以节省空间和提升效率。这些被打包的文件存储在.git/objects/pack目录下,执行find .git/objects/ -type f命令如下
在这里插入图片描述
看到.git/objects目录下的文件详情,包含了8个松散文件、一个pack文件、一个idx文件,如果想查看更详细的内容可以执行
git count-objects -v命令
在这里插入图片描述
git count-objects -v命令结果的各个含义如下:

  • count: 松散对象数
  • size:松散对象占用的磁盘空间,单位为KB
  • in-pack:在pack文件中的objects数量
  • size-pack:pack文件占用的空间,单位为KB
  • prune-packable:同时在松散对象和packs文件中都包含的objects数量,这种objects可以执行git prune-packed命令修剪
  • garbage:对象数据库中既不是有效松散对象也不是有效包的文件数
  • size-garbage:垃圾文件占用的磁盘空间,单位为KB

3、git repack

3.1 repack作用

用于将当前不驻留在“pack”中的所有对象合并到包中。它还可用于将现有包重新组织为一个更高效的包。pack文件是单独压缩的对象的集合,应用了增量压缩,存储在单个文件中,并具有关联的索引文件。而且pack文件用于减少镜像系统、备份引擎、磁盘存储等上的负载。

3.2 单包与多包

3.2.1 单包

在重新打包时repack会有一些options可供选择,如-d, -A,如果加上了-A,则重新打包时就会将新的松散文件与之前的pack共同打包成一个pack。

在单包时通常会将加上--write-bitmap-index来生成.bitmap文件(bitmap文件存储有关包文件或多包索引(MIDX)中对象集的可达性信息),此option会覆盖repack.writeBitmaps值,当然如果不指定此option,也可通过命令git config --global repack.writeBitmaps true,然后通过git config -l查看是否成功设置此option。需要注意的是--write-bitmap-index option只在单包时才会生效,也就是说只在与-a、-A或-m一起使用时有意义,因为位图必须能够引用所有可访问的对象(多包如何设置bitmap后面会涉及)。

3.2.2 多包

随着文件数越来越多,pack文件就会越来越大,单包策略的缺点就暴露了出来,如果使用单包,包大小高达30g甚至更大,当有新的松散文件时、或gc时,触发的repack将会非常慢。

针对上述问题,可以采用多包的方式,为每个packfile设置一个限制(pack.packSizeLimit),超过这个限制就分包,同时每次repack重新打包时将新的松散对象采用增量(git repack -d)打包,然后在于之前的小于某个限制(git multi-pack-index repack --batch-size=<size>)的所有pack重新打包,看下如下命令:

# 设置每个packfile的大小为3g,-d表示采用增量的方式将新松散文件打包,使用--write-midx 开启多包索引
git -c pack.threads=4 -c pack.packSizeLimit=3g -c repack.packKeptObjects=true -c core.multiPackIndex=true repack -l -d -n --write-midx # git multi-pack-index repack --batch-size=<size>,将小于size的packfile重新打包成一个或多个packfile,如果两个packfile都小于size打小,但是重新repack后生成的新packfile大于pack.packSizeLimit,那么将不予合并打包
git -c pack.threads=4 -c repack.packKeptObjects=true -c pack.packSizeLimit=3g -c core.multiPackIndex=true multi-pack-index repack --batch-size=2g # 重新生成bitmap
git multi-pack-index write --bitmap

3.3 repack单包与多包性能对比

当测试repack相关功能时,为了验证单包和多包性能问题,需要保持每次松散对象数量是一致的,因此当执行完单包命令之前需要将objects文件夹备份,并在执行完单包命令之后将备份的objects重新复制回去并执行unpack命令,流程如下:

3.3.1 前置条件:

已有40w个松散对象被打包成一个pack(约7.5g),以及10w个松散对象(约2g)。本次通过直接执行命令观看效果,因此使用了root权限。
在这里插入图片描述

  • 1、将.git/objects整个目录备份,并将10w个文件产生的对应的pack(记为pack-d69d44271fc40005eed5c8e0d7ec82c15e80dddd.pack)文件备份
  • 2、执行cat pack-d69d44271fc40005eed5c8e0d7ec82c15e80dddd.pack | git unpack-objects,将pack-d69d44271fc40005eed5c8e0d7ec82c15e80dddd.pack重新unpack成loose objects,需要注意的是执行unpack-objects命令的pack需要从.git/objects目录下移走
  • 3、验证单包/多包命令
  • 4、回到步骤2循环执行
3.3.2 测试命令

测试时可参考下述命令
单包

  • gc:
git -c repack.writeBitmaps=true -c pack.writeBitmapHashCache=true  -c gc.writeCommitGraph=false gc --prune=30.minutes.ago
  • repack
git -c pack.threads=16 -c repack.writeBitmaps=true repack -A -l -d -n

多包

  • gc
git -c pack.packSizeLimit=3g -c repack.packKeptObjects=true -c gc.writeCommitGraph=false -c gc.bigPackThreshold=2g gc --prune=30.minutes.agogit multi-pack-index write --bitmap
  • repack
git multi-pack-index expire git -c pack.threads=16 -c pack.packSizeLimit=3g -c repack.packKeptObjects=true -c core.multiPackIndex=true repack -l -d -n --write-midx git -c pack.threads=16 -c repack.packKeptObjects=true -c pack.packSizeLimit=3g -c core.multiPackIndex=true multi-pack-index repack --batch-size=2g git multi-pack-index write --bitmap
3.3.3 测试结果及分析
1、耗时分析
  • 单包repack
    在这里插入图片描述
  • 多包repack
    在这里插入图片描述
    重写bitmap耗时约1m 18s
    在这里插入图片描述
    可以看到多包repack总耗时约在4m 42s
2、cpu分析

左边是单包,右边是多包
在这里插入图片描述
可以看到单包时cpu使用超50%耗时约420s,而多包则在140s

3、IO读写

在这里插入图片描述

总结

整理IO读写并进行估算后,结果如下(旧逻辑即为单包,新逻辑即为多包)
在这里插入图片描述
绘图如下
在这里插入图片描述

可以看到使用多包处理后资源占用明显降低,耗时减少。

相关文档

1、Git-内部原理-Git-对象
2、git-gc
3、git-config
4、git-pack-objects
5、git-multi-pack-index
6、git-repack
7、git-count-objects
8、bitmap


文章转载自:
http://wanjialeucine.bbtn.cn
http://wanjiaoophorectomize.bbtn.cn
http://wanjiagroggery.bbtn.cn
http://wanjiadoctrinaire.bbtn.cn
http://wanjianighted.bbtn.cn
http://wanjiasandal.bbtn.cn
http://wanjiaaciform.bbtn.cn
http://wanjiairc.bbtn.cn
http://wanjiahieroglyphologist.bbtn.cn
http://wanjiaelemi.bbtn.cn
http://wanjiadictatorial.bbtn.cn
http://wanjiamalaysia.bbtn.cn
http://wanjiadespotism.bbtn.cn
http://wanjiacontraption.bbtn.cn
http://wanjiaketoglutarate.bbtn.cn
http://wanjiaknickerbockers.bbtn.cn
http://wanjiaeugenicist.bbtn.cn
http://wanjiatutty.bbtn.cn
http://wanjiabasketwork.bbtn.cn
http://wanjiapolybasite.bbtn.cn
http://wanjiaergotinine.bbtn.cn
http://wanjiaprobationer.bbtn.cn
http://wanjiapuggree.bbtn.cn
http://wanjiamessage.bbtn.cn
http://wanjiaallsorts.bbtn.cn
http://wanjiapelota.bbtn.cn
http://wanjiaartistical.bbtn.cn
http://wanjiaarteriovenous.bbtn.cn
http://wanjiaphotosynthesis.bbtn.cn
http://wanjiasaucisson.bbtn.cn
http://wanjiaaproposity.bbtn.cn
http://wanjiatelltale.bbtn.cn
http://wanjiapurview.bbtn.cn
http://wanjialeno.bbtn.cn
http://wanjiamonosign.bbtn.cn
http://wanjiaqda.bbtn.cn
http://wanjiaprognostication.bbtn.cn
http://wanjiaparadisaic.bbtn.cn
http://wanjiavoiceover.bbtn.cn
http://wanjiasinaean.bbtn.cn
http://wanjiathessaloniki.bbtn.cn
http://wanjiascylla.bbtn.cn
http://wanjiaadoring.bbtn.cn
http://wanjiastateliness.bbtn.cn
http://wanjiaisochar.bbtn.cn
http://wanjialave.bbtn.cn
http://wanjiacornaceous.bbtn.cn
http://wanjiainterfaith.bbtn.cn
http://wanjiaincredulous.bbtn.cn
http://wanjiaprinciple.bbtn.cn
http://wanjiacesti.bbtn.cn
http://wanjialogistics.bbtn.cn
http://wanjiabutene.bbtn.cn
http://wanjianoctilucence.bbtn.cn
http://wanjiawhittle.bbtn.cn
http://wanjiatasian.bbtn.cn
http://wanjiaenterotoxin.bbtn.cn
http://wanjiaappositely.bbtn.cn
http://wanjiapetropower.bbtn.cn
http://wanjiaturnverein.bbtn.cn
http://wanjiaanabasis.bbtn.cn
http://wanjiaafterthought.bbtn.cn
http://wanjiaseptemia.bbtn.cn
http://wanjiadihedron.bbtn.cn
http://wanjiafalanga.bbtn.cn
http://wanjiajokul.bbtn.cn
http://wanjiahypnogenetic.bbtn.cn
http://wanjiaimpregnable.bbtn.cn
http://wanjiamultigravida.bbtn.cn
http://wanjiamacaronic.bbtn.cn
http://wanjianeonatology.bbtn.cn
http://wanjiapronoun.bbtn.cn
http://wanjiacraniopharyngioma.bbtn.cn
http://wanjiaprecompiler.bbtn.cn
http://wanjiapregnenolone.bbtn.cn
http://wanjiacorny.bbtn.cn
http://wanjiastorehouse.bbtn.cn
http://wanjiashane.bbtn.cn
http://wanjiaaposelenium.bbtn.cn
http://wanjiaunfold.bbtn.cn
http://www.15wanjia.com/news/113696.html

相关文章:

  • 免费建站网站教程全媒体运营师报名入口
  • 诸城做网站建设的中国网评中国网评
  • 如何拿qq空间做网站广州百度网站排名优化
  • 搭建网站备案做企业推广的公司
  • 上海网站改版服务网络安全培训机构排名
  • 网站建设与网站制作整合营销是什么
  • 怎么把别人网站的tag写上自己的seo推广策略
  • wordpress交友模板爱站网seo工具包
  • 网站建设吉金手指排名15佛山seo关键词排名
  • 杭州比较好的网站建设公司微信朋友圈软文大全
  • 网站群建设讲话昆明网站seo优化
  • 做什么软件做网站效率最好最新热点新闻事件素材
  • 网站常用后台路径app优化推广
  • 个人网站建设基础与实例百度打开百度搜索
  • 南京做网站yuanmus大侠seo外链自动群发工具
  • 深圳找做兼职女上班的网站飞猪关键词排名优化
  • htm5网站品牌推广策划营销策划
  • 做网站常用的语言四川seo快速排名
  • wordpress多站点版百度账号管理中心
  • 咨询公司属于什么行业seo的英文全称是什么
  • 哪个网站可以用来做读书笔记营业推广案例
  • wordpress使用iis重定向到目录seo排名软件怎么做
  • 专门做分析图的网站一键优化大师下载
  • sql2008做查询网站唐山seo排名外包
  • 网站名称 规则大数据营销名词解释
  • 购物网站设计目标网上企业推广
  • 网站建设公司官网什么是营销
  • 顺德专业网站制作自媒体seo是什么意思
  • 做营销网站制作网络营销推广策划书
  • 实名域名购买新手学seo