问题标签 [maintenance]

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 投票
5 回答
1240 浏览

asp.net - 当 ASP.NET 忽略 CustomValidator 时,您会怀疑什么?

这与代码问题一样是代码维护问题,但我有一个不再检查 CustomValidator 的 WebForm。一年多前我最后一次接触代码时它起作用了,但现在用户请求了一些更改,它不再起作用了......

WebForm 包含一个数据绑定下拉菜单,其中包含默认的“-All-”项,其值为 String.Empty。当用户单击提交按钮时,验证器应检查下拉列表的值是否不是 String.Empty。我在客户端验证代码和服务器验证代码中设置了断点,但都没有触发。

你会从哪里开始寻找?常见的嫌疑人是什么?当然,我已经将我的工作副本与源代码控制中的内容进行了比较,但没有任何可疑之处。

以防万一,这是我的代码:

0 投票
5 回答
3855 浏览

linux - 现场安全更新嵌入式 Linux 的推荐技术

基于嵌入式 Linux 的设备通常需要一种机制来更新应用程序和系统文件。例如,带有 USB 端口的(非联网)实验室仪器可以从 U 盘获取软件更新。

运行脚本将文件复制到设备内部闪存上的位置将是一件简单的事情。但是,存在设备在更新过程中断电并最终变成砖块的危险。

应用程序文件的情况稍微容易一些,因为有空间复制应用程序目录、更新一个副本以及快速交换新旧目录,从而最大限度地减少故障窗口。

对于内核和系统文件来说,事情变得更加复杂,因为它们分布在整个文件系统中。

我们在文件系统中使用硬链接和软链接来识别关键文件。我们对文件和档案使用哈希来验证文件完整性。如果从更新的文件系统启动失败,我们已经考虑在内核中使用紧急 ramfs 来提供回退。

你对这个要求有什么方法?

0 投票
1 回答
10426 浏览

sql-server - 识别 Microsoft SQL Server 2005 中未使用的对象

找出一个对象是否被其他东西引用是一项微不足道的任务。我想做的是确定它是否实际被使用

我的解决方案最初涉及包含数据库中对象列表的表和每小时作业的组合。

这项工作做了两件事。首先,它查找自上次运行以来已添加到数据库中的新对象。其次,它查看了sql的对象缓存。如果表中的一个对象列在缓存中,它在表中被标记为最近“看到”在使用中。

在六个月或其他时间结束时,检查表的内容。自从我开始监视以来,表中列出的任何未曾被引用的内容都可能可以安全地备份和删除。

当然,有可能只使用一年一次或其他什么的对象,但它似乎在大多数情况下都有效。

不过,与它一起工作有点痛苦。

我正在使用大约六个数据库,其中大多数都有大量遗留表,这些表在它们的原始创建者转移到其他公司之后仍然存在很长时间。

我正在寻找的是一种相当可靠的方法来跟踪对象(表、视图、存储过程或函数)何时被调用。

对于目前监视此类事情的那些人,您使用什么方法/代码,您会推荐它吗?

0 投票
6 回答
4860 浏览

sql-server - 您的 SQL Server 备份/维护计划是什么?

作为这个问题的后续,我想知道您的 SQL Server 备份/维护计划是什么,以及如何让我的计划变得更好。

目前,我正在从计划向导运行两个简单的维护计划。

第一个每晚运行,几乎所有事情......

  • 完整的数据库和事务日志备份
  • 完整性检查、重建索引、重新计算统计信息等(我检查了除增量备份之外的所有内容)

另一个每三个小时运行一次并进行增量备份(我很偏执,我知道这可能是矫枉过正)。

备份到磁盘,完整备份发送到 SAN,保留一周。

你怎么看,这是一个明智的计划吗?有什么建议么?

编辑:这是 SQL Server 2005。DB 为 5GB,每月增长约 1GB。

0 投票
9 回答
752 浏览

maintenance - The Neglected Stakeholder a.k.a the System Administrator

Some time ago I came to realize that almost every customer project that I have been working on so far has neglected an important group of stakeholders: the system administrators.

These silent heroes are usually only involved at the end of a project and are left with an executable black box of bits that they have to install, support, and maintain for years to come. Whenever an issue occurs with this black box they have to find a way to resolve it using whatever random piece of information and tool support made available to them by the black box or the underlying platform, and if this is not sufficient then they have to improvise.

If they had been involved as a stakeholder in the project from the beginning they would have had a chance to predict potential problems and inform the project team about it. But reality is different and even though I as a developer would love to involve the system administrator as an extra stakeholder, external factors may prevent this from happening.

In these situations I would like to help our silent heroes as good as I can. So my question is:

What would a system administrator wish from us developers when we develop the systems they will have to maintain?

If you are a system administrator please tell a war story about a difficult problem you once had and what developers could have done to make it easier for you to solve it.

0 投票
3 回答
48784 浏览

mysql - 什么时候应该重建数据库索引?

我在这里阅读了关于重构一个大型慢速 SQL 查询的信息,当前最高响应来自 Mitch Wheat,他希望确保查询使用主要选择的索引,并提到:

我要做的第一件事是检查以确保定期运行活动的索引维护作业。如果没有,请重建所有现有索引,或者如果不可能,至少更新统计信息。

我只是一名业余 DBA,并且我已经制作了一些程序自由职业者,它们基本上是 Java 桌面客户端,偶尔也是 MySQL 后端。当我设置系统时,我知道要在将要查询的列上创建一个索引,有一个 varchar CaseID 和一个 varchar CustName。

然而,我在几个月前设置了这个系统并让客户端运行它,我相信索引应该随着数据的输入而增长,我相信一切仍然运行良好。我担心索引应该定期重建,因为今天我读到应该有一个“积极的维护工作”。我设置的唯一维护工作是每晚备份。

我想向社区询问数据库可能需要的定期维护。是否需要重建索引?只要没有人弄乱它并且数据保持在几千兆字节以下,我是否可以相信 MySQL 后端会继续运行?

0 投票
2 回答
197 浏览

web-applications - 支持 Web 应用程序 - 网站

我正在为客户创建一个使用 ASP.NET + C# 的电子商店。首先,我想问一下是否有人知道 Crystal Tech 网络托管有多好(不是专用服务器包,因为那有点贵);

其次,我想问一下我应该向我的客户提供什么样的支持 - 维护 - 保证,以及我应该知道什么样的问题可能会在网站上蔓延。

简而言之,我想问一下你们所有更有经验的开发人员,我应该避免哪些常见的陷阱,我应该要求我的客户保护他免受这些陷阱的影响。

0 投票
6 回答
2507 浏览

seo - “站点停机维护”页面会破坏 SEO 吗?

在您对生产环境进行主要代码发布和/或数据库架构更改的情况下,在升级发生时放置“Gone Fishin”页面是否对 SEO 有害?

假设在升级过程中使用旧的代码/数据库模式可能会使升级后的数据库进入不良/未知状态。

0 投票
18 回答
675 浏览

maintenance - 如何处理未使用的、有用的代码?

当您花一整天的时间让某个功能正常工作,但架构更改导致该功能不再被使用时,您会怎么做?但是您知道代码足够有用,以至于如果体系结构发生变化,该功能将再次有用吗?

在您签入之前删除该功能似乎是错误的,但是如果您签入它,它会再次占用空间作为未使用的功能。

0 投票
27 回答
4358 浏览

php - 继承了PHP的噩梦,从哪里开始?

我继承了一个 PHP 项目,结果证明它是一场噩梦。以下是要点:

  1. 所有原始开发人员都已离开
  2. 代码没有版本控制
  3. 通过重命名和编辑 PHP 文件,所有开发和测试都在实时服务器上完成。每个文件 index.php、index2.php、index3.php 等都有多个副本,不清楚哪些文件真正被使用
  4. 每个文件中有多个包含到包含其他文件的文件中包含其他文件等的文件。
  5. 该项目有多个开发人员,每个人都有自己的做事方式。例如,有一个大杂烩的 JavaScript 框架,一些数据库查询使用 SQL,另一些使用 XML 接口,还有一些调用数据库中的过程函数。

由于所有这些问题,发展缓慢得令人沮丧。除了向 Stack Overflow 发泄我的挫败感之外,还有什么关于如何开始处理这个烂摊子的建议吗?我自己对 PHP 开发还很陌生,但是第一步似乎是设置某种开发环境以便可以在不破坏实时服务器的情况下测试更改。关于如何从这里开始的任何提示?进行测试的典型方法是什么?在我的桌面上设置站点的本地版本似乎需要做很多工作(服务器是 Linux,但这里的桌面是 Windows)。我可以在实时服务器上创建一个子目录进行测试,或者..?数据库呢?

其次,是否可以启用某种分析来跟踪服务器上实际使用了哪些文件?我想删除实际上未包含的内容的重命名副本。更好的是,有没有办法判断文件的哪些部分没有被执行?有很多复制的功能和垃圾,我怀疑它们也没有被使用。同样,对于包含的内容,有任何关于整理混乱的提示吗?

好吧,我将停止在这里发泄,并让自己听从这里的每个人的摆布。:)