我看到邮件和 Web 服务器的默认主机名分别设置为mail.domain.tld和www.domain.tld。为什么是这样?当您从单台服务器迁移到多台服务器时,它有帮助吗?
我一直domain.tld对 VPS 上的邮件和 Web 服务器使用普通的(对于尝试“www.”的任何人都有重定向规则)。
我想就如何制定扩展我的 Web 应用程序的策略获得一些建议/最佳实践。我在这里胡说八道并展示我有限的知识,但想填补我的知识空白。自己尽可能多地学习这方面的知识很诱人,但意识到我需要寻求一些外部帮助,因此作为一个一般性问题,最好知道最容易外包的事情是什么。
我的背景 - 我是一名开发人员,主要从事用户界面的开发工作,并一直在使用 Flash 和 PHP 开发应用程序的功能,该功能可以让用户上传图像和视频以进行在线共享。
系统架构如下——
所以在很大程度上,我认为事情已经设置好了,可以扩大规模。但我没有如何扩展或管理高流量 Web 应用程序的经验,因此将依赖我们的 Web 服务器托管公司来管理 Web/应用程序服务器和数据库服务器的可扩展配置的设置。
硬件/架构扩展-
据我了解,这里的第一步是将 Web 服务器和数据库分开并让数据库服务器独立运行,将 Web 服务器放在负载均衡器后面,并最终为数据库服务器设置主/从配置。我应该要求我的网络托管公司做什么?这样做有什么问题?对我的 AMFPHP …
database scalability web-server web-applications best-practices
目前我们有一台 Windows Server 2008 R2 作为域控制器和文件服务器。
我们正在向 4 个 IIS 服务器提供大约 600 万个 JPG,然后再提供给 Web 用户。
问题是我们每天都会在服务器上收到内存警报。我们当前的服务器从单个驱动器 (LUN) 提供这些文件。光盘上的文件数量也有问题。随着我们继续添加更多图像,主文件表将变得太大。
我们目前的计划是:
我的问题是:
我们阵列中的一台 CAS 服务器使用了其 4 个 CPU 中的近 90%。其余的 CAS 服务器占 30%。
我应该如何调查导致这种增加的原因?
下图为:
兴趣点

我在服务器上运行了 MSFT 的DebugDiag,但不知道这是否是正确的工具,或者如何处理一些更高级的结果。任何提示表示赞赏。
我们有一个有点静态的 Web 应用程序,其中包含大量媒体文件,该应用程序在 DMZ 上的 2008 R2 非域服务器上运行。我需要备份服务器上的媒体文件。受信任网络上服务器的当前备份机制是 BackupExec 代理。
备份 DMZ 服务器的最佳做法是什么?将 BackupExec 客户端推送到它,并让它通过防火墙连接回受信任网络上的 BE 服务器,我真的很不舒服......
操作系统:运行 RHEL 5.6。
情况:我需要按照与其余 syslog 日志不同的时间表轮换 /var/log/messagees。
默认情况下,syslog 日志根据 /etc/logrotate.conf 和 /etc/logrotate.d/syslog 配置文件每周轮换一次。
如果您查看 /etc/logrotate.d/syslog,您会发现所有日志都有一个 logrotate 配置块。如果我希望 /var/log/messages 以不同的时间表轮换,我需要为它创建一个单独的配置块。这将导致重新启动 syslogd 两次(基于复制现有配置)。
问题:有没有办法按照与其他 syslog 日志不同的计划轮换 /var/log/messages,而不必将 HUP 发送到 syslogd 两次?或者这甚至重要吗?这里的最佳做法是什么?
当您刚刚检测到您的网站目前正受到试图渗透您网站的黑客攻击时,我的问题中没有包括拒绝服务,您会怎么做?是否有可遵循的最佳实践指南?
我找到了很多关于你被黑客攻击后做什么的帖子,但是当你受到攻击时你会做什么似乎并不清楚。
我主要谈论 IIS 和 ASP.net 站点,但问题与所有面向 Internet 的站点相关。
假设该站点位于防火墙后面,并且所有请求和信息都已记录。
我的想法是:
是否有任何其他建议的操作或最佳实践?
我一直在经历 BPA 对我们的 DC 提出的一些警告,以确保一切都应该如此。
一切都很顺利,直到我收到以下警告:
The value of MaxNegPhaseCorrection on the domain controller ********* should be equal to 48 hours
Run Code Online (Sandbox Code Playgroud)
和:
The value of MaxPosPhaseCorrection on the domain controller ********* should be equal to 48 hours
Run Code Online (Sandbox Code Playgroud)
HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config\MaxPosPhaseCorrection
Run Code Online (Sandbox Code Playgroud)
应该等于 172800。
据我所见,我检查过的每个 DC 都将此注册表设置设置为 172800。BPA 是否抱怨它不是通过 GPO 应用的?或者这里还有什么我应该注意的问题吗?
windows-server-2008 active-directory w32time windows-server-2008-r2 best-practices
使包含大量文件的目录变得可管理的一种方法是将文件分类到以文件名中的渐进字符命名的子目录中。
例如:
- a8debcdcf0d2302ccde5a43bb1fb385e81098342.jpg - 91ff48de8cfc6468bdc2115cf87cfb6547eee713.jpg - 99d002e2065cdf02bd6d04bf29a8230564719b76.jpg ...
上面的文件被分类到子目录中,类似于:
- 一种/
- 8/
- a8debcdcf0d2302ccde5a43bb1fb385e81098342.jpg
- 9/
- 1/
- 91ff48de8cfc6468bdc2115cf87cfb6547eee713.jpg
- 9/
- 99d002e2065cdf02bd6d04bf29a8230564719b76.jpg
此方法有多种变体,例如使用不同数量的字符来命名子目录或使用散列或其他算法来确定每个文件的路径。
这种组织文件的方法有正式名称吗?
我有一个在 Debian 7 上运行的 puppet/foreman 服务器来管理我的系统。我使用的是 puppet and foreman 1.6.0 的社区版本 3.7。我使用目录环境。
目前,我对自己编写的模块使用了相当复杂的工作流程,在我的开发环境中创建它们,这是颠覆控制的,然后将它们导出到外部目录,构建它们的木偶模块(木偶模块构建...)和在生产中安装它。我考虑过使用 subversion 将它们分支/标记到生产中,但由于我不记得的原因,当时排除了这一点。
同时我学习了一点 git 并且宁愿使用 git 而不是 subversion。我的问题是现在是否有最佳实践可以这样做?我可以想象至少两种方法都有其优缺点。一种方法是将环境开发置于版本控制之下,然后将其克隆/分支到生产环境中。其次是制作每个模块的 git repo 并将它们克隆到环境中。
正如我所说,我是 git 的新手,所以我对它的优点和缺点没有真正的了解。此外,我只使用木偶和工头大约 8 个月。
干杯,克里斯托夫
best-practices ×10
linux ×2
backup ×1
cpu-usage ×1
database ×1
debugging ×1
directory ×1
dmz ×1
domain-name ×1
file-server ×1
foreman ×1
git ×1
hacking ×1
hostname ×1
perfmon ×1
puppet ×1
redhat ×1
scalability ×1
security ×1
syslog ×1
w32time ×1
web-server ×1