gpt4 book ai didi

java - 可用性:如何为我的用户提供并轻松部署(最好是基于 Node.js + MongoDB 的)服务器后端?

转载 作者:行者123 更新时间:2023-12-01 13:10:36 25 4
gpt4 key购买 nike

我目前正在计划一个应用程序(或多或少的头脑 Storm ),旨在用于小型组织。该应用程序需要与后端服务器同步,例如用于用户管理和一些高级的集中功能。该服务器必须在本地托管,并且应该能够在 Linux、Mac 和 Windows 上运行。我还没有决定如何实现这一点,主要是我不知道哪种方法是最明智的。

从技术上来说,一个非常有趣的方法似乎是node.js + mongoose,连接到本地MongoDB。但这正是我陷入困境的地方:如何确保组织的 IT 能够轻松便捷地进行设置?

安装node.js + MongoDB是一项繁琐的工作,而且远非标准化和简单。我没有资源为每个主要操作系统和配置提供详细的演练,或者自己接管设置。理想情况下,本地管理员应在用作服务器的计算机上运行某种设置(24/7 运行的“常规”PC 就足够了)并使系统启动并运行,类似于某些游戏提供用于托管小型游戏的可执行文件的方式-几个 friend 的服务器(例如,Minecraft)。

我也考虑过 Java EE,尽管我没有在这里深入研究细节。我不确定这是否真的是一个选择。

很多人建议外包后端(BaaS),例如到 parse.com 或类似的服务。这不是一个选项,因为后端必须在本地托管。

如果这个问题太不具体,我很抱歉,但不幸的是,我真的不知道从哪里开始。

最佳答案

我可以从系统管理员方面和开发人员方面为您提供建议。

系统管理员

设置node.js并不是一项艰巨的任务。 正确设置 MongoDB 是。但这不是你作为应用程序供应商的职责,尤其是当你是一个单人秀自由开源项目时,正如我所假设的那样。设置数据库是管理员的任务,所以让他来做吧。只需告诉他们您需要什么,也许指出安全问题,任何有能力的系统管理员都会完成他的工作并设置环境。

然而,有些事情你低估了。

应用程序,尤其是有用的应用程序,往往会被使用。 MongoDB 有很多好处,但对资源的礼貌并不是其中之一。因此,在软件开发公司或视觉效果公司中,在多余的 PC 上运行可能会起作用,其中每个工作站都有大内存,但在会计师公司中,您的应用程序将很快缺乏资源。不要做出诸如“将在您多余的桌面上运行”之类的 promise ,除非您完全确定这一点,因为您进行了广泛的负载测试以确保您是正确的。任何明智的系统管理员都会监控应用程序,并在必要时扩展资源。但是,当你做出这样的 promise 并违背它们时,你就失去了软件最重要的一个因素:用户的信任。一旦丢失,就很难再找回来。

开发人员

您确实必须决定 MongoDB 是否是适合这项工作的工具。一旦您的文档之间存在关系,其中文档的更改必须反射(reflect)在其他文档中,您就必须非常小心。问问自己,你的决定是否基于理性、受过教育的基础。我见过一些项目是用 NoSQL 数据库实现的,使用关系数据库会更好,因为 NoSQL 是每个人的宠儿。

从 Node.js 到 Java EE 是一条很远的路。 Java EE 的概念不一定容易掌握,特别是如果您对一般应用程序开发和 Java 开发经验很少。

问题

在对应用程序一无所知的情况下,很难提出建议或给您建议。为什么 mongodb 必须是本地的?不能用VPC来做吗?它是网络应用程序、桌面应用程序还是服务器应用程序?源颂可以公开吗?每个安装预计有多少并发用户?您想要模块化还是整体应用程序?您的沟通需求是什么?您在编程语言方面有什么经验?这完全取决于您想要完成什么以及您想要通过应用程序提供哪些服务。

关于java - 可用性:如何为我的用户提供并轻松部署(最好是基于 Node.js + MongoDB 的)服务器后端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22898861/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com