问题标签 [production-environment]

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 回答
4556 浏览

java - 在生产环境中分析 Web 应用程序的性能成本

我正在尝试解决大型复杂的 tomcat java web 应用程序的性能问题。目前最大的问题是,内存使用量有时会达到峰值,应用程序会变得无响应。我已经用日志分析器和日志文件的贝叶斯分析修复了所有可以修复的问题。我正在考虑在生产 tomcat 服务器上运行分析器。

给具有温和敏感性的读者的注意事项:

我知道有些人可能会觉得分析生产应用程序的想法很冒犯。请放心,我已经用尽了大部分其他选项。我考虑这个的原因是我没有资源在我的测试服务器上完全复制我们的生产设置,并且我无法在我的测试服务器上引起感兴趣的故障。

问题:

我正在寻找适用于在 tomcat 上运行的 java web 应用程序的答案,或者以与语言无关的方式回答这个问题。

  • 分析的性能成本是多少?
  • 为什么在生产环境中远程连接和分析 Web 应用程序是一个坏主意(奇怪的故障模式、安全问题等),还有什么其他原因?
  • 分析对内存占用有多大影响?
  • 具体来说,有没有性能成本非常低的 java 分析工具?
  • 任何为分析 Web 应用程序而设计的 java 分析工具?
  • 有人对使用 visualVM 进行分析的性能成本有基准吗?
  • visualVM 可以扩展到多大的应用程序和数据集?
0 投票
5 回答
6951 浏览

unit-testing - 生产发布代码中的单元测试?

几个问题:

1.) 你是否对发布代码进行单元测试?

2.)如果是这样,那么您是否保留这些单元测试完整,以便测试本身存在于生产环境中?

我在 #1 中看到了值,但是在生产中创建对例如 NUnit 程序集的依赖项是一种“好习惯”吗?

给我你的想法。

0 投票
7 回答
52884 浏览

visual-studio - Visual Studio:区分 app.config 以用于调试和发布模式

有没有办法在发布模式下构建时自动使用单独的 app.config?

换句话说,我想用一个 app.config 进行测试,然后用另一个发布。

目前,我保留一个名为 app.config.production 的单独副本,并在构建发布后手动覆盖 bin\Release\Application.exe.config。

0 投票
4 回答
2918 浏览

c# - 创建 C# Winform 开发和生产环境

我想知道为我的 C# winforms 项目正确创建开发和生产环境的最佳方法是什么。可惜的是没有开发环境。相反,每次我希望创建生产或开发版本时,我都必须指定发布路径。此外,由于每个 prod 或 dev 构建使用不同的连接字符串,我必须然后进入代码并更改它。

编辑我想补充的另一件事是,可以说“测试人员”将从本地 .exe 运行程序,该程序将查看源文件并检测是否需要进行更新。我提到这一点的唯一原因是因为测试人员不会在“调试”模式下运行代码。

有任何想法吗?

提前致谢!

0 投票
1 回答
105 浏览

postgresql - 如何限制客户端修改对生产系统的影响

我们的商店已经为十几个客户端安装开发了一些 WEB/SMS/DB 解决方案。这些应用程序有一些实时性能要求,并且足以正常运行。问题是客户端(生产服务器的所有者)正在使用相同的服务器/数据库进行自定义,这会导致我们创建和部署的应用程序的性能出现问题。

客户定制的几个例子:

  • 为在查询中转换为其他数据类型的列添加具有许多文本数据类型的大型表
  • 没有主键、索引或 FK 约束
  • 在脚本的循环中使用使用 的外部脚本count(*) from table where id = x来确定稍后如何在同一脚本中构造更多查询。(没有计划者可以优化的批量操作或一次完成所有操作)
  • 服务器上的所有新代码文件均由 root 创建/拥有,具有 0777 权限

客户不接受建议/批评。如果我们继续尝试自己移植/更改脚本,旧代码可能会回来,破坏我们所做的任何更改!或者在对它们的用例了解有限的情况下,我们会在尝试优化它们的更改时破坏功能。

我的问题是:我们如何将资源限制在我们创建和部署的查询/应用程序之外?在这种情况下是否有任何务实的选择?我们以拥有 OSS 解决方案而自豪,但似乎它已成为一种负担。

我们使用在 Linux Distos 上运行的 PG 8.3。客户更喜欢 php,但 shell 脚本、perl、python 和 plpgsql 都以一种或另一种形式在系统上使用。

0 投票
4 回答
5452 浏览

migration - 在环境之间迁移 BO 报告

我们有开发、测试和生产的标准 3 环境设置。每个环境都有自己的报表服务器、Web 服务器、数据库服务器等。

我们迁移的一部分是在服务器之间移动我们的业务对象 (xi r2) 报告,但现在我们需要手动更新每个报告的连接设置。现在有 40 多份报告,这有点痛苦,随着我们的继续,这将成为一场噩梦。

由于我们生成报告的方式,我们无法在生成报告时动态更改连接字符串。我们使用存储过程而不是 Universe,因为这是团队最熟悉的。

任何建议将不胜感激。

0 投票
4 回答
952 浏览

ruby-on-rails - 将 Rails 应用程序部署到多个环境

我正准备部署到真正的生产环境。当我说真的时,我的意思是我当前的生产环境现在将进行暂存,因为服务器上还有其他垃圾,我正在为我的生产机器创建一个更大的新切片。

capistrano-ext gem 使得分离部署配方变得非常容易。但是,我遇到的一个问题是将我的代码从一个切片转移到另一个切片。我在我的暂存切片上设置了一个 git repo,我将用于生产。流程将是:

本地开发 本地测试 从本地推送到舞台 舞台测试 从舞台推送到生产 ...

因此,我显然需要一种方法来在登台和生产之间建立安全连接。部署到生产环境时,我收到“权限被拒绝(公钥)”。错误,因为这没有设置。我怎样才能建立这种连接?我是否需要在我的生产服务器上生成密钥并将公众放在我的登台上?我如何知道我的生产服务器上的哪个用户正在尝试连接到我的登台服务器?

0 投票
7 回答
41604 浏览

sql-server-2008 - 无法加载文件或程序集“Microsoft.SqlServer.Types

我有我们部署在生产环境中的 Web 应用程序。我们有独立的 WEB 和数据库服务器。数据库是 SQL Server 2008,它托管在完全不同的服务器上,我们将 IIS 安装在不同的服务器上。

在我的网络服务器上,我们收到以下错误。无法加载文件或程序集“Microsoft.SqlServer.Types,Version=10.0.0.0,Culture=neutral,PublicKeyToken=89845dcd8080cc91”或其依赖项之一

我检查了 Web 服务器上的 GAC,它缺少这个特定的 DLL。这对我来说很有意义,因为它是一个 Web 服务器,它不应该有与 SQLServer 相关的程序集。

我们的应用程序在我们的开发、测试和登台环境中运行良好,因为我们的 IIS 和 DB 安装在同一台服务器上。

我如何在生产中解决这个问题?我可以通过在 Web 服务器上安装 SQL Server 2008。但这对我来说没有意义。它是一个 Web 服务器 - 我为什么要在那台机器上安装 SQL Server 2008?

0 投票
3 回答
781 浏览

python - 将 django 应用程序从 dev 移动到 prod 时的常见错误?

我正在 Windows、SQLite 和 django dev server 上开发一个 django 应用程序。我已将它部署到运行 Linux、Apache、FastCgi、MySQL 的主机服务器上。

不幸的是,当开发机器上的一切正常时,我在 prod 上的服务器返回了一个错误。我已经向我的供应商询问了预生产解决方案,以便能够调试和理解问题。

无论如何,根据您的说法,将 django 应用程序从 dev 移动到 prod 时最可能发生的错误是什么?

最好的

更新:我认为 pre-prod 是解决此类问题的最佳方法。但我想建立一个在投入生产之前必须做的检查清单。感谢到目前为止我收到的非常有价值的答案:)

更新:仅供参考,我已经按照 shanyu 的建议实现了 preprod 服务器和电子邮件通知,我可以看到错误来自我在这个新版本上使用的smart_if 模板标签。模板标签有什么技巧吗?

更新:我想我已经修复了我认为由 Filezilla FTP 发送引起的 pb。我正在使用“如果更新则替换”选项,我猜这会导致一些意想不到的结果。使用“全部替换”选项可解决此问题。然而,这对我来说是一个了解更多关于部署的机会。谢谢你的回答。

0 投票
5 回答
8205 浏览

php - 我应该如何将我的代码从开发转移到生产?

我创建了一个 PHP 网络应用程序。

我有 3 个环境:DEV、TEST、PROD。

什么是我将 PHP Web 应用程序代码从 DEV 移动到 TEST 到 PROD 环境的好工具/业务实践?

意识到我的 TEST 环境仍然只连接到我的 TEST 数据库;而我需要 PROD 环境才能连接到我的 PROD 数据库。所以代码几乎是相同的,除了我需要更改我的 TEST 代码一旦移入 PROD 以连接到 PROD 数据库而不是 TEST 数据库。

我听说有人关闭 Apache,它不允许新的连接,一旦所有现有连接都空闲,它只会关闭 Web 服务器。

然后人们手动复制代码,然后手动更新 PHP 应用程序的配置文件,使其也指向 PROD 实例。

这似乎非常危险。

是否存在最佳实践?