问题标签 [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 回答
4448 浏览

erlang - 生产 Erlang 部署示例

我目前正在学习 Erlang

SO 用户能否给出他们的任何 Erlang 应用程序部署的有趣示例?

我想深入了解 Erlang 过去电信的常见用法,以及 Erlang 在开发/部署过程中带来的任何问题或意想不到的好处。

我希望这将提供一些更广泛的背景,并为我自己和其他任何跳入 Erlang 的人敲响警钟!

提前致谢!

0 投票
10 回答
36185 浏览

database - SQLite 作为低流量站点的生产数据库?

我正在考虑使用 SQLite 作为一个站点的生产数据库,该站点可能会同时接收 20 个用户,但峰值可能是该站点的许多倍(因为该站点可以在开放的互联网上访问,并且总是有可能有人会在某个地方发布一个链接,该链接可能会同时将许多人吸引到该站点)。

SQLite 有可能吗?

我知道这不是一个理想的生产场景。我只是在问这是否在现实可能性的范围内。

0 投票
10 回答
422 浏览

debugging - 您使用什么样的保护措施来避免对生产环境进行意外更改?

因为我们没有良好的暂存环境,所以我们经常不得不在生产系统上调试问题。我们有网络、应用程序和数据库服务器。

在执行此操作时,您使用了哪些保护措施来避免对生产环境进行意外更改?


编辑:

该应用程序是一个非常复杂的 B2B 垂直 Web 应用程序。涉及的数据很多。有些表有接近 1 亿条记录。


编辑:

我们现有的暂存环境不具备镜像生产的能力。除了实际的数据库数据外,还涉及数百 GB 的数据文件。


编辑:

我们确实对代码使用源代码控制,但对存储过程不使用。源代码控制中有一些旧的存储过程,但没有人再保持更新。

主要关注的是文件系统上的数据库和数据。

顺便说一句,我是这家公司的顾问,而不是实际员工。

0 投票
5 回答
483 浏览

.net - 如何实现 .NET 部署涅槃?

我们公司正接近其“上线”日期(以及获得 QA 部门日期),我正在尝试定义正确的运营流程来支持这一点。我的一个重要考虑是如何避免不可避免地发生的部署/配置地狱。你们有没有找到一个很好的解决方案来将构建移交给非程序员,以便他们可以在 QA、登台和生产环境中成功安装和配置它?

对我们来说,一个完整的环境由异构计划任务、Windows 服务和网站的混合组成,所有这些都可以通过并行部署进行横向扩展。值得庆幸的是,配置方式是一致的。不幸的是,这一切都是通过 .NET web/app.config 文件进行管理的。根据我的经验,QA 和运维人员在尝试修改它们时总是搞砸(XML 对大多数人来说难以处理!)

这是我正在考虑的选项:

使用 machine.config 文件

这是我在实践中没有做过的事情,但看起来很有希望。如果我们创建一个 machine.config 模板,其中包含可能因环境而异的每个应用程序的每个设置,这将允许管理员对一个文件进行所有更改并将其部署到环境中的每台机器上。

优点:
这可能会减少部署系统所需的步骤数量
缺点:
必须以某种方式记录配置架构更改
未知数:
我们使用自定义配置部分和其他引用程序集的配置扩展。这是否需要我们在机器的 GAC 中安装我们的 .NET 程序集?

在构建过程中执行配置文件操作

如果我们设置 QA、登台和生产环境,使它们看起来与我们的软件(虚拟服务器和 LAN 等)相同,那么 QA 应该能够将无需更改配置的现成软件直接转换到登台环境,并登台到生产环境. 有了这个设置,理论上我们可以交给 QA 预先配置的 foo.config 文件,没有人需要接触。

优点:
工程将更擅长确保配置文件有效
缺点:
工程师意识到生产配置可能被认为是糟糕的安全实践(一个糟糕的论点,恕我直言)

拥有一个网络集中的设置存储库

这个看起来对我没有吸引力,因为我以三种方式尝试过,但最终都失败了:

  1. 在以前的公司,我们在数据库中有配置设置,但当然你不能把它们都放在那里,因为你需要配置那个数据库的连接字符串。此外,在部署之前确保数据库得到正确更新同样困难。
  2. 我们尝试过的另一种方法是建立一个网络服务,作为一种集中式注册中心。这几乎奏效了,但是本地缓存总是存在问题,确保配置服务器的 URL 正确配置,当然还有配置配置服务器。
  3. 活动目录?哇!需要我多说?

想法?

您在使用我正在考虑的选项方面取得了多大的成功?是否有其他对您有效的替代方案?

0 投票
3 回答
3300 浏览

asp.net - How to know if asp.net 3.5 sp1 and asp.net mvc are installed in the server?

When I use:

The result is "2.0.50727.3053"

I know that 3.5 is compatible and in IIS is identified as 2.0, blah blah...

I would like to know the exact .net version installed and if another resources are installed, like ASP.NET MVC, etc. The problem is that the website is installed in a shared hosting, so I can ask about that resouces to tech support, but if I know programatically, its far better.

Regards

0 投票
4 回答
10218 浏览

cakephp - 如何配置 CakePHP 来检测我的开发/生产环境,或者我只是让配置文件不受版本控制?

我是一名 RoR 开发人员,但我目前正在为一个无法调整服务器的项目使用 CakePHP。在我的 Rails 生产服务器中,Passenger 设置为自动使用“生产”环境,覆盖本地应用程序设置。我想设置我的 cakephp 应用程序来做同样的事情。您通常如何使用 CakePHP 来实现这一点?您是否设置了域解析器,或者您只是将 core.php 和 database.php 排除在版本控制之外?在此先感谢,戴维德

0 投票
2 回答
348 浏览

perl - 用 Perl 处理开发/生产库路径的好方法是什么?

使用 Perl,处理不同的开发和生产库路径的简单方法是什么?我想使用我的本地盒子路径进行测试,但是当我启动时,我希望它自动指向生产库路径。

0 投票
4 回答
9029 浏览

debugging - VB6 中的运行时错误堆栈跟踪或位置

我维护一个用 VB6 编写的旧应用程序。在客户端的环境中,它会引发我无法在调试器下重现的运行时错误。有什么方法可以获取堆栈跟踪或错误位置吗?

我的意思是,不要像这里那样在整个代码中放置跟踪语句,也不需要像这里那样添加错误处理程序来记录每个过程。

这似乎是一个简单的问题。对不起。我只是不太了解VB6。考虑到它被(或曾经)使用的广泛程度,谷歌搜索出任何信息是非常困难的。

0 投票
4 回答
2409 浏览

.net - 如何在客户环境 .NET 上调试应用程序

我们有一个用 C# .NET 编写的应用程序,目前在生产环境中使用。显然使用了发布版本。

不幸的是,有时应用程序在某些条件下行为不端,我们无法弄清楚原因。我们无法在内部重现该问题。是的,更多跟踪会有所帮助,但通常是在您意识到应该进行更多跟踪之后。

使用常规的逐行 Visual Studio 附加到进程类型调试来调试该安装的最佳方法是什么。是否会在客户机器上安装 VS 的 express 版本并将 dll 替换为调试版本?仅发送 PDB 和特定的源文件就足够了吗?有没有更好的办法?最终目标是拥有一个类似开发的环境来调试问题。

0 投票
6 回答
4749 浏览

deployment - 跨多个 Tomcat 实例维护 JNDI

我想知道人们如何管理跨其 Tomcat 应用程序服务器的多个实例维护 JNDI 资源。让我们以我的数据库 JNDI 资源为例。它在我的 /conf/context.xml 文件和我的应用程序 web.xml 文件中的引用中声明。

该 JNDI 资源必须在我的开发箱、暂存箱和生产箱上独立定义。如果我想设置开发人员/登台/生产框的新实例怎么办?这意味着我必须为我提出的每个新实例在 context.xml 中重新创建资源名称?从设置的角度来看,这是一个可能存在一些人为错误的地方,这些错误可能导致应用服务器开始指向错误的数据库。

我发现这既麻烦又令人困惑,因为我增加了项目中的开发人员数量以及最终可能使用的生产服务器的数量。

每次重新安装 tomcat 并设置盒子时,您是否只是将其作为设置的一部分,或者创建一个设置脚本来为您处理这个问题?或者是否有一些其他级别的间接可以使这更容易?