服务器 Gind.cn

服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器

在Linux上禁用所有的apache2磁盘caching

为了基准testing的目的,我想强制Apache 2从磁盘加载每个请求的文件,而不是从内存中的caching加载它。 从我读过的同步跟随 echo 3 > /proc/sys/vm/drop_caches 让我放下linux的caching。 随后对特定文件的请求将不会从linux的caching中提供,但是对于同一文件的进一步请求将再次从linux的caching中提供。 这是因为/ proc / sys / vm / drop_caches不禁用caching,它只丢弃那些已被caching到那一刻的内容。 我可能会在每个请求之前删除caching,但我更喜欢另一个解决scheme。 还有什么我可以做,以确保Apache从磁盘加载每个请求的文件? 为什么我想这样做 :我知道在正常的操作中caching是启用的。 但是服务器并没有提供小的,经常访问的文件,比如html页面,小图片等,而是从大量的文件中提供几兆字节大小的文件。 这些文件访问非常一致,因此每个单独的文件很less被访问。 因此,在正常操作中,我期望大多数访问不会导致caching命中,但需要从磁盘加载文件。 我有几个示例文件,我想通过使用apache的ab基准testing来衡量服务器每秒能够处理多less事务。 不幸的是我相信我得到的结果是因为caching太乐观了。 因此,我想禁用Linux的磁盘caching,任何cachingApache可能会自己做。 更新: 到目前为止给出的答案告诉我如何禁用Apache自己的caching,但我仍然想知道是否有一种方法来禁用由Linux内核完成的caching。

解决SQL Server /数据库sorting规则不匹配比更改每列更容易吗?

免责声明:我知道这个问题以前已经被问过一百次了,但是我只是想检查一下,在我继续之前,我可能已经错过了一个更简单的解决scheme,并且写了很多代码。 我们的软件使用最初为SQL Server 7devise的数据库,因此,所有创build它的脚本都不会为任何字符列指定任何明确的归类。 相反,当数据库创build/还原到SQL Server 2000或更高版本时,每个列都会inheritance数据库归类(恰好是SQL_Latin1_General_CP1_CI_AS因为这是SQL Server 7的默认值)。 从理论上讲,这并不重要,因为如果我们的数据库是从客户的服务器上重新创build的,它会inheritance客户的服务器sorting规则(通常是现代安装默认值Latin1_General_CP1_CI_AS ),一切正常。 但是,这种情况在向我们发送数据库备份时发生故障,或者我们向他们发送数据库备份,并且无论代码何时尝试访问临时表等,我们或他们都会遇到可怕的sorting规则不匹配错误。 我们已经尝试教育客户安装或重build他们的SQL Server实例来使用我们首选的sorting规则,但是这当然并不总是会发生,并不总是可能的。 涉及到创build新数据库和复制数据的解决scheme对于我们来说并不实际,我们需要一个“魔棒”,我们可以在实时数据库中进行波动,以便在不影响数据的情况下就地校正所有列。 我正在考虑编写一个实用程序来做到这一点,但由于这将是一个相当大的工作,有没有人有任何简单的build议?