问题标签 [multi-tier]

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 投票
1 回答
228 浏览

web-applications - 三层架构:数据层应该是什么?

我构建了一个从服务器日志文件中读取的监控 Web 应用程序。之后,业务逻辑使用地理定位服务提取其他信息。我是否应该同时考虑日志文件和地理定位数据库作为我的数据层?

0 投票
0 回答
27 浏览

ruby - 从 rails 5.x 客户端应用程序中删除所有数据库访问功能

我对 ruby​​ 和 Ruby on Rails 框架还很陌生。

Rails --api only 项目非常适合刚刚进入基本的 rest API 开发,而没有任何不需要的额外内容。

我总是会构建一个 Web API 应用程序来处理我的数据访问和域逻辑。我将为前端 Web 客户端创建一个单独的 rails 应用程序。也许这种分层对于小型或“宠物”项目并不总是必要的,但我更喜欢这种架构。

我正在尝试找到从我的客户项目中删除与数据访问相关的代码和 gem 的最佳方法,因为我永远不会访问数据库。

是否有一种干净的方法可以以类似于 --api 开关仅包含与 API 应用程序相关的内容的方式自动执行此操作?

手动执行此操作并不是世界末日,但如果我可以编写一个 bash 脚本,我可以传递一个项目名称,它会为我构建 2 个 shell 项目 - 1 个 API,1 个客户端 - 只包含我想要的东西通常需要在每个级别。

非常感谢您对此提出的任何建议。

提前致谢!

0 投票
1 回答
33 浏览

css - 删除缩进多层有序列表

我有多层列表,我希望所有层都有相同的缩进,目前当我进入每一层时,每一层都会缩进更多。我希望他们都共享相同的缩进级别。我已经设法将 css 提高到它们都缩进的水平,但是我遇到的问题是,如果一行太长,它会越过下一行。拥有第二条线的能力似乎已经消失。看看这张图片的结果如何我如何处理代码,以便第二行正常运行并且不覆盖第一行?

HTML 代码是:

0 投票
0 回答
368 浏览

delphi - FastReports:从客户端添加没有数据库连接的查询数据选项卡

我有一个用 Delphi XE3 制作的多层应用程序。

在客户端,我有一个使用 FastReports 制作的报告,该报告与主要数据的 TClientDataSet 相关联,但我需要在 TFrxReport 的数据选项卡中添加查询以从详细表中获取数据。我无法在应用程序上添加这些查询,因为最终用户是在运行时选择该详细信息的人,并且可能有很多详细信息。我需要动态地添加这些细节。

问题是,¿是否可以在没有客户端数据库连接的情况下在 TFrxReport 的组件数据选项卡中添加查询?或 ¿ 我是否需要明确添加数据库连接?

此致

0 投票
0 回答
45 浏览

java - 在逻辑层中使用 javafx 类是错误的吗?

在开发分离为业务逻辑和 UI 层的应用程序时,使用 UI 包中的类是否会出错?更具体地说,有什么理由不使用包中的Property<T>javafx吗?

有问题的应用程序计算量不是很大,所以我可以处理Property<T>类的开销。bind()将值相互关联提供了很大的灵活性,并且有助于我的应用程序中的控制流,但是在我的业务逻辑层中使用 UI 包感觉不合适。这背后的(非常失败的)推理是,它们——显然——是为 UI 设计的。他们不参加一定是有原因的java.util


额外的问题:为什么包中的Property<T>javafx.beans首先而不是在java.util

0 投票
0 回答
30 浏览

webserver - 拥有应用服务器有什么意义?

在多层基础架构设计中,大多数新的 Web 服务器都能够以高计算能力处理请求。即使 Web 服务器能够执行所有操作,为什么我们将应用程序服务器作为单独的层?(考虑一个 IIS 能够作为 Web 服务器和应用程序服务器工作的场景,为什么 JAVA 技术不是这种情况,因为 Web 服务器和应用程序服务器是不同的)

0 投票
1 回答
132 浏览

spring - 将层从多层架构中解耦为微服务

设想:

目前,我们在这种模式下有多层架构

该应用程序建立在Spring 4.2, Java 8, MongoDB.

要求:

我们需要将 SouthBound 解耦为一个单独的 App,或者可以说是微服务。

问题:

我们正在考虑两种方式

  1. 将 SouthBound 中的服务公开为 REST API 并在 SrvcLayer 中使用它们。它会增加一些延迟问题,并且还需要弄清楚安全部分。

  2. 使用消息队列,如 RabbitMQ。但是这些调用必须是同步的。所以我不确定 RabbitMQ 是否会帮助我们。

哪种方法合适。关于如何构建此用例的任何其他建议。

0 投票
0 回答
25 浏览

tomcat - 多层架构应用程序可扩展性问题

我们有一个基于 Spring 的具有多层架构的应用程序。

图层按此顺序

全部捆绑在一个.war文件中并部署在里面Apache Tomcat 7

我们有 Rest API,它在服务层做一些系列的工作并返回响应。

例如:

Policy Push API 将进行合规性检查、验证和推送数据并记录在 DB 中并向用户显示 msg。这个过程大约需要 2 秒分钟。

几天前,我们的服务器开始崩溃。在检查时,我们发现我们达到了大约 2000 个请求/秒,tomcat无法处理。

为了克服这个问题,我们添加Nginx Loadbalancer了 3 个实例。

它在某种程度上是稳定的,但我觉得它只是一个修复。

我正在研究Kafka,RabbitMQ作为一种选择。但在这种情况下,问题将是Request 将添加到队列中,并且响应将返回给 User

我们需要实时显示策略状态。

通过将其添加到队列中,不保证推送策略。

如果有人可以帮助这个用例如何处理会有所帮助?

向负载均衡器添加更多服务器是唯一的选择还是其他?

0 投票
1 回答
96 浏览

delphi - Datasnap 服务器身份验证问题与用户凭据的远程数据库

情况是:Datasnap 客户端使用他的凭据连接到 Datasnap 服务器。身份验证过程从服务器向保存用户凭据的远程数据库发出请求开始。如果凭据匹配 - 一切正常,则完成身份验证。但是如果此时远程数据库不可用怎么办?如何在身份验证时向客户端推送诸如“服务器目前不可用,稍后再试”之类的内容?或者第二种情况:用户被阻止(要实现这一点,我们也需要访问数据库),我想告诉他他无法访问服务的原因?我在谷歌上搜索这个问题,但我仍然不明白正确的方法。

任何提示都会有所帮助,在此先感谢您,祝您有美好的一天!

0 投票
2 回答
63 浏览

ruby-on-rails - 如何在运行多台服务器的生产环境中使 ActiveRecord 查询更快?

我怎样才能重写 ActiveRecord 查询来解决这个问题?我是一名 python 程序员并使用 sqlalchemy,所以如果可以从 python 的角度解释这将是很棒的。我真的只需要知道如何解决这个问题。

我知道这个问题可能与在每台服务器上打开的连接有关,因此与单服务器登台环境相比,在生产环境中运行时运行速度很慢。但我不知道如何解决这个问题。我习惯用 python 编程,我使用 sqlalchemy,它已经针对这种分布式系统进行了优化。

ActiveRecord 查询经过优化,可以在多服务器生产环境和单服务器暂存环境中运行。