问题标签 [diskspace]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
2258 浏览

ruby-on-rails - 计算每个客户的磁盘使用量的最快方法是什么?

我希望这是一个简单的。

我运行一个 Rails 网络应用程序,我在其中托管了大约 100 个学校网站。一个应用程序处理所有网站,我有一个管理界面,我们可以在其中添加和删除学校等......

我想在这个界面中添加一个统计数据,即该学校使用的总磁盘空间。每个学校的文件都存储在单独的目录结构中,以便于查找。唯一的问题是我需要它快速。所以问题是找到这些信息的最快方法是什么。如果可以通过即时调用 ruby​​ 找到它,那就太好了,但我愿意接受任何可行的方法。理想情况下,我希望避免缓存和后台生成这些数据(至少在 rails 级别)。:)

0 投票
2 回答
13642 浏览

oracle - 表使用的 Oracle 磁盘空间

我在 Oracle 数据库中有一个表,每个月都有几百万新行。每行都有一列,说明它的创建日期。

我想运行一个查询来获取过去 6 个月的磁盘空间增长情况。换句话说,结果将是一个包含两列的表,其中每一行将包含月份名称和该月份使用的磁盘空间。

谢谢,

0 投票
1 回答
16681 浏览

svn - 如何减小 Subversion 存储库的大小?

我有一对 svn 存储库,它们比其他存储库大得多。它们对于 svn 来说并不算大,但它们占用了大量磁盘空间,我宁愿将其用于其他用途。

有哪些策略可用于减少 svn 存储库的磁盘使用?我尝试了此处描述的“删除无效交易”部分,但这并没有让我到任何地方。我还应该尝试什么?

ETA:这个问题在服务器故障上问得更好吗?

0 投票
2 回答
2726 浏览

filesystems - 文件名的长度如何影响磁盘上的剩余存储空间?

文件名的长度如何影响磁盘上的剩余存储空间?

我意识到这取决于文件系统。特别是我正在考虑 EXT 系列文件系统。我不完全了解 inode 如何影响磁盘空间以及文件名本身是如何存储的。这个问题也很难得到相关的搜索结果。这就是我在这里问的原因。在 linux 上,最大文件名长度通常为 255 或 256 个字符。创建文件系统时,是否为每个文件名“保留”了该空间量?换句话说,磁盘存储是否不受实际文件名的影响,因为已经使用了最大值?还是比这更复杂?

假设,我有一个名为“joe.txt”的文件并将其重命名为“joe2.txt”。在此之后可用磁盘空间量是否减少了?像“joe_version.txt”或“joe_original_version_with_bug_that_Jim_solved.txt”这样的较长名称呢?我担心 8、16、32、64 等字符的阈值。我将存储数百万张图像。我以前从来没有担心过这样的问题,所以我不完全确定它是如何工作的。

尽管 EXT 是我使用的唯一文件系统,但讨论 FAT 和其他文件系统可能对其他有类似问题的人有用。

0 投票
1 回答
3208 浏览

windows - 计算磁盘空间时 MSI 包挂起

在我的团队中,我们为我们的应用程序准备了一个 msi 安装程序包。包是用 WIX 制作的,包含自定义 UI,从 C# 库调用自定义操作,几乎所有东西都可以正常工作,除了一件事:计算所需的磁盘空间。在这个阶段,整个安装程序不时挂起,尤其是在客户端测试时:(我们在开发机器上遇到同样的问题,但重新启动安装程序有帮助,所以这个错误是很随机的。我在谷歌上搜索了一下,发现了两个解决方法,全部基于命令行参数:

msiexec /i filename.msi(更改状态消息处理)

msiexec /package /qr(使用有限 UI 启动包)

不幸的是,它对我来说不是一个解决方案,因为当用户想要安装应用程序时,安装程​​序必须在不向其传递额外参数的情况下工作:(

我将不胜感激调查中的任何线索:)

0 投票
1 回答
434 浏览

sql-server-2005 - 是否有比 ASP.NET 2.0 匿名配置文件更有效的替代方案?

几年前我发现了 ASP.NET 配置文件,并发现在我的网站中实现一些强大的功能既快捷又容易。我最终只使用“匿名”配置文件属性,因为我没有使用 ASP.NET 成员资格,并且想要跟踪信息并为我的站点用户提供个性化,即使他们没有登录。

快进 3 年,现在我正在努力将我的 aspnetdb 数据库的大小保持在我的托管服务提供商的 3 GB 限制内。一年前我决定只保留 6 个月的配置文件数据,现在我每个月都必须运行 aspnet_Profile_DeleteInactiveProfiles 过程,然后向我的主机提出支持请求以截断数据库文件。

真正的缺点是现在我已经实现了这个功能,网站依赖于这个数据库,每次我需要截断时都会出现停机时间。今天真的很成功 - 在维护 aspnetdb 时,站点关闭了 12 个多小时,我最终创建了 aspnetdb 数据库的故障转移副本,这样我就可以再次使网站上线(原来的 aspnetdb 数据库仍然关闭在我写这篇文章的时候)。

去年我重写了一些功能,因为它存储了一个小的二进制对象集合,我将它转换为存储逗号分隔的 ID 字符串,使其更适合存储。

我已经考虑过获得更多磁盘空间,但现实情况是,拥有一个每年增长 4 GB 的数据库只是为了做一些简单的事情,比如保留每个用户最近查看的产品的列表、跟踪他们在哪个类别中的“继续购物”按钮将他们带回来,并存储他们购物车中的总金额(仅限货币)。实际上,只有不到 5% 的数据被网站的重复访问者重复使用,但是无法提前知道哪些用户会返回访问他们的个人资料信息。

所以我的问题是,是否有更有效的方法来存储配置文件数据,这样它就不会占用太多空间,或者是否有替代方法可以为每个用户创建配置文件数据库记录以支持此功能?

我查看了table profile provider,但是有人可以保证使用它是否会使用比默认提供程序更少的磁盘空间来存储数据?

更新:

我做了一些研究,似乎 nvarchar(max) 字段是 aspnetdb 的默认实现使用的 ntext 字段的直接替换,但根据这篇文章这篇文章只需要一半的磁盘空间。这意味着我应该能够创建一个新的 aspnetdb 副本,在其架构和代码中修改数据类型,并将数据传输到新数据库中。这应该修复数据的存储方式以及执行收缩操作时发生的任何碎片。

我现在已经完成了测试并将这个解决方案投入生产。起初我以为会有问题,因为 Microsoft 将 NText 数据类型硬编码到 SqlProfileProvider 内部的存储过程调用中。但是,事实证明 SQL Server 会将 NText 参数隐式转换为 nvarchar(MAX)。简而言之,除了aspnet_Profiles 表的PropertyNames 和PropertyValuesString 列上的类型之外,我不需要更改任何内容。

必须将数据重写到磁盘以释放空间,但我最终仅通过更改数据类型就节省了大约 30%。

另一个更新:

我还发现,虽然我每天有大约 700 名独立访问者,但 aspnet_Users 表中的平均每日“用户”数平均约为 4000-5000。我推测这是由于某些用户在浏览时没有使用 cookie。我做了一些测试,发现如果配置文件没有更新,则不会创建用户,但是如果您写入配置文件,如果未启用 cookie,则会在每个请求上创建用户(和配置文件)。

我正在为此制定解决方法。我正在尝试为对 webmethod 的 AJAX 调用编写 javascript。理论上,如果启用了 cookie,第二个请求(AJAX 调用)应该有 .ASPXANONYMOUS cookie,因此我可以安全地写入配置文件。只有当这是会话的开始时(由 Session.IsNewSession 属性确定),javascript 才会被注入页面。用户永远不应该知道 AJAX 调用 - 它只是告诉页面是否启用了 cookie,以便它可以更新配置文件。

当然,每个后续请求都可以简单地检查 cookie 集合以确保 .ASPXANONYMOUS cookie 存在。我很可能会创建一个共享函数,该函数既可以被称为 webmethod 的 AJAX 调用,也可以被 Page_Load 事件直接调用,并使用 IsNewSession 属性来确定允许运行 cookie 检查和后续配置文件更新的请求。

根据微软的说法,使用 session 来跟踪是否启用了 cookie 会破坏目的(因为 session 取决于 cookie)。他们建议将您的 AreCookiesEnabled 值保存到数据库中,但他们没有提及您应该如何跟踪保存值的位置 - 如果未启用 cookie,您如何将请求链接到数据库记录?

0 投票
8 回答
18660 浏览

amazon-ec2 - Amazon EC2 和 EBS 磁盘空间问题

我在协调 EBS 卷上的可用空间时遇到问题。根据 AWS 控制台,该卷为 50GB,并附加到一个实例。

如果我 ssh 到这个实例并执行 df -h,我会得到以下输出:

我对 AWS 很陌生。我将其解释为“连接了一个设备,它有 15GB 的容量。更重要的是,你的空间快用完了!”

谁能指出控制台中宣传的空间与实例上显示的空间之间明显差异的原因?

提前谢谢了

小号

0 投票
1 回答
855 浏览

android - 如何在 Android 应用程序中获取内部/外部可用空间?

我正在编写一个 android 程序来检查内部手机内存或外部 sd 卡的可用空间。但我不知道该怎么做。任何人都可以帮助我如何在Android中做到这一点?

0 投票
3 回答
2657 浏览

c++ - 如何在 Windows 中读取多会话 DVD 磁盘大小?

尝试使用 GetDiskFreeSpaceEx() 读取在多个会话中创建的磁盘大小只会给出最后一个会话的大小。如何正确读取 C/C++ 中所有会话的数量和大小?

谢谢。

0 投票
4 回答
1869 浏览

java - 如何使用java计算linux机器中的可用磁盘空间?

我尝试使用 File getFreeSpace() 也返回 0。有没有其他方法可以做到这一点?