fragmentation

MySQL 中的碎片表是什么意思?
fragmentation

MySQL 中的碎片表是什么意思?

我有一个带有 InnoDB 引擎的 MariaDB 数据库,查询数据花费大量时间,因此我搜索并发现它可能与表碎片有关,但我不明白这意味着什么以及我该怎么做。 ...

Admin

Postgresql 的 ZFS 磁盘在写入密集型应用程序中会快速碎片化
fragmentation

Postgresql 的 ZFS 磁盘在写入密集型应用程序中会快速碎片化

我正在运行一个写入密集型应用程序,其中我将 Postgresql 存储在 ZFS 上。通常,它运行良好,但我发现我的 ZFS 池碎片严重。我甚至创建了一个新的 ZFS 池并使用 zfs send / recv 将数据移到那里,以便对整个空间进行碎片整理并尝试一些可能限制碎片的新设置,但无济于事。 我不确定发生了什么。应用程序主要在进行更新,但 Postgres 应该能够重用磁盘上已有的空间(因为它会生成死元组并自动清理它们,它会重新使用这些页面)。我确实看到分配的空间基本保持不变,因此它不会增加磁盘使用率。但是,ZFS 的 COW 特性似乎使文件系统耗尽了可...

Admin

如何在特定的 UDP 连接上设置 mtu?
fragmentation

如何在特定的 UDP 连接上设置 mtu?

是否有 iptables 目标来分割数据包,假设我有一个长度为 1280 的数据包,我想将此数据包拆分为 5 个较小的数据包,最大长度等于 250,是否可以使用 Linux 中的防火墙(nftables、iptables)来分割数据包,或者是否有一般的方法? 我可以使用最大 mtu 为 250 的虚拟接口并让它处理 udp 连接吗?如果可能的话该怎么做 ...

Admin

如何修复 ws 和 socket.io 内存泄漏?
fragmentation

如何修复 ws 和 socket.io 内存泄漏?

我读到过,node.js websocket 模块 ws 和 socket.io 都存在内存泄漏。这个问题已经存在好几年了,我想知道该如何修复它。 下面提到了其中的一些: https://github.com/socketio/socket.io/issues/2427(已关闭但无解决方案) https://github.com/socketio/socket.io/issues/3477(设置 perMessageDeflate:false 显然有帮助,但根本原因是碎片问题,这显然不是由 websocket 库或节点引起的,而是由它们的运行方式引起的,可...

Admin

通过 OpenVPN 隧道的 SSH 连接问题(“TCP 上一个段丢失”)
fragmentation

通过 OpenVPN 隧道的 SSH 连接问题(“TCP 上一个段丢失”)

我有一条通向 OpenVPN 服务器的 VPN 隧道。该 VPN 是 Sophos VPN,其底层使用 OpenVPN。我不知道服务器配置,也无法更改服务器配置。我的隧道端点在 Win 10(OpenVPN 2.4.8)上启用,其配置如下所示: ip-win32 dynamic client dev tun proto tcp verify-x509-name "[...]" route remote_host 255.255.255.255 net_gateway resolv-retry infinite nobind persist-key pers...

Admin

Windows 存储空间如何处理分区碎片?这会导致性能问题吗?
fragmentation

Windows 存储空间如何处理分区碎片?这会导致性能问题吗?

我正在使用具有多个硬盘的 Windows 存储空间。 如果我创建多个虚拟磁盘,然后删除其中一些并调整其中一些的大小,虚拟磁盘最终会被分成多个碎片吗?这些碎片是否会分布在所有这些硬盘上? 例如:如果 VirtualDisk1 的第一个 1TB 位于 PhysicalDrive4 的开始处,VirtualDisk1 的第二个 1TB 位于 PhysicalDrive4 的末尾,则 VirtualDisk1 的最后 3TB 位于 PhysicalDrive5 上,VirtualDisk2、VirtualDisk3 等。 这种碎片的演示图 我想知道这样的碎片...

Admin

如何阻止传入的 IPv6 碎片?
fragmentation

如何阻止传入的 IPv6 碎片?

我的防火墙配置有问题。我想阻止特定接口中的所有 IPv6 碎片数据包。因此,我尝试了: # ip6tables -A INPUT -d <ipv6_address> -i eth0 -m ipv6header --header ipv6-frag --soft -j DROP 但是 IPv6 碎片流量仍在不断流入。 我还发现了这个链接:https://www.secfu.net/2015/03/25/how-to-block-incoming-ipv6-fragments-in-latest-red-hat-releases/ 这解释了为...

Admin

xfs_db 报告 VM 所在位置的文件碎片很多,但 VM 几乎没有碎片
fragmentation

xfs_db 报告 VM 所在位置的文件碎片很多,但 VM 几乎没有碎片

我有几个 libvirt VM 存储在 xfs 分区上,并使用 gluster 复制存储。VM 使用 qcow2 进行存储。 当我运行 xfs_fb 时,虚拟机所在的某些分区显示文件碎片较多。但如果我从虚拟机的命令行运行“e4defrag -c /”,则虚拟机几乎不显示任何碎片。 这是否意味着可以安全地忽略主机系统上 xfs_db 的报告? ...

Admin

xfs_fsr 报告大型虚拟机映像上的可用空间不足
fragmentation

xfs_fsr 报告大型虚拟机映像上的可用空间不足

我有多个使用 glusterfs 和 xfs 分区的系统。其中一些系统是虚拟机的主机(使用 libvirt 并使用 qcow2 进行存储)。 我注意到在几个案例中存在大量碎片,因此我运行了 xfs_fsr 进行碎片整理。我的两个虚拟机相当大,当我尝试对托管它们的分区进行碎片整理时,我收到“可用空间不足”的提示。 有办法解决这个问题吗?我不确定我是否理解了 -f 选项,我应该使用它吗? 编辑:我取出了一个相关问题,我会在另一篇文章中提出。 ...

Admin

Windows 是否能够在 SQL Server 运行时运行磁盘优化?
fragmentation

Windows 是否能够在 SQL Server 运行时运行磁盘优化?

我刚刚继承了一台 SQL Server,其中数据库文件增长设置为 1MB。因此,到目前为止,有很多数据库(>25 个)都以小幅度增长(目前总计 300 GB)。 因此我认为硬盘一定非常碎片化,并下令停机很长时间来运行磁盘优化(关闭 SQL Server)。但它在 1 分钟内完成,并说磁盘没有碎片化。 我注意到它已被设置为“Scheduled Optimization”=“On”。 Windows 2016 是否能够在 SQL Server 运行时运行磁盘优化? 我到处寻找,所有地方都说你应该手动将数据库大块化以避免碎片化。如果你能接受 Wind...

Admin

碎片导致 vhdx 备份大小过大
fragmentation

碎片导致 vhdx 备份大小过大

该服务器托管一项名为 MultiCash-Datenbank 的服务。它为每个用户保留两个缓存文件(SPASD32.SRC 和 SPASD32Z.SRC),这些文件的大小每天增长约 1MB。每天还会添加大量小型数据文件。我观察了我们的网络备份三个月,发现保存这些数据的分区的 vhdx 映像的大小不断增长,每天增长 300-900MB。在 1TB 分区上,7GB 的数据最终膨胀为 30GB 的 vhdx 文件,我不得不采取行动。 在我考虑运行 DiskView 之前发现的临时解决方案的时间顺序如下: 重新创建分区(来回移动文件以合并它们) 缩小分区(执行...

Admin

数据包碎片混乱
fragmentation

数据包碎片混乱

我正在使用 Python 中的 dpkt 尝试解码 PPPoE - 并且程序运行良好,直到我注意到封装 IP 数据包中的偏移量始终为 0,即使数据包明显碎片化。 可以看出,服务器正在发送 1492 字节的数据包(我猜是因为 PPPoE 封装),最后一个数据包为 1365。但偏移量始终为 0 - 它不应该增加吗? 当然我怀疑我的程序,但是我用 Wireshark 检查了相同的传输并得到了相同的结果。 我是不是理解错了? ...

Admin

如何处理Redis 产生内存碎片?
fragmentation

如何处理Redis 产生内存碎片?

我有一个 Redis 3.0.5 实例,随着时间的推移,其 mem_fragmentation_ratio 往往会增长。 使用该实例的应用程序正在不断地创建和删除密钥。 一个月后,我的 mem_fragmentation_ratio 值大于 1.30。这会影响该服务器上 Redis 的内存占用: ~$ redis-cli info memory # Memory used_memory:7711297480 used_memory_human:7.18G used_memory_rss:10695098368 used_memory_peak:1130...

Admin

如何使用 MSSQL,重建所有表上的所有索引?MSSQL Server 2008
fragmentation

如何使用 MSSQL,重建所有表上的所有索引?MSSQL Server 2008

我有一个 mssql 数据库,我们将其称为:mssqlDB01。我负责对所有表执行碎片整理。该数据库有几百个表,每个表都有 1 到 15 个索引。 谷歌让我发现了一种对每个表的所有索引进行碎片整理的做法,但我不知道如何在所有表上执行此操作。 ALTER INDEX ALL ON TABLENAME REBUILD; 我正在寻找的是 ALTER INDEX ALL ON * REBUILD; 但它抱怨 Msg 102, Level 15, State 1, Line 2 Incorrect syntax near '*'.` 下面让我找...

Admin

参考:碎片化可以解决吗/需要碎片整理吗?
fragmentation

参考:碎片化可以解决吗/需要碎片整理吗?

我以两种配置运行 ReFS: 在存储空间镜像 (2x4TB) 中,用于存储最有价值的数据 独立于单个磁盘上,用于异地备份(注意:不是我唯一的备份) 在这两种配置中,ReFS/存储空间中都已启用数据完整性功能。 我每月都会运行 Windows 碎片整理工具。但是,最近我在运行 Windows 碎片整理工具后直接运行了碎片整理程序,它报告了严重的碎片,一些文件有数千个碎片。碎片整理程序可以对磁盘进行碎片整理,但速度非常慢 - 2TB 的数据可能需要 16 - 24 小时。碎片在 ReFS 中是个问题吗? TLDR; “问题”是:ReFS 磁盘存在...

Admin