gpt4 book ai didi

java - 体系结构 - 我应该将许多临时应用程序组合到一个应用程序中吗?

转载 作者:行者123 更新时间:2023-11-30 09:25:19 26 4
gpt4 key购买 nike

我的主要目标是提供一个用 jquery 编写的基于 solr 的搜索应用程序。 (不熟悉solr的,就假设它是一个可以返回搜索结果的rest api。)为了这个目标,我编写了许多小型应用程序和 servlet,每个应用程序和 servlet 都执行一项临时任务。例如:

  1. SearchApp - 一个 jquery 应用程序,最终用户可以在其中执行搜索。
  2. SolrProxy - 在 SearchApp 和 solr 之间扮演代理角色的 java servlet。它所做的其中一件事是记录用户请求以供以后分析。
  3. StatsApp - 一个执行用户 Activity 分析并返回包含数据的 json 的 servlet。
  4. Indexer - 一个 java 应用程序,它根据我的要求将数据索引到 solr。在此过程中,它还会获取一个 SQLServer 数据库,然后对该数据库执行一些更新命令。
  5. IndexerServlet - 一个异步 servlet,它使用 Indexer 提供通过 http 请求执行索引的能力。
  6. Nutch - 一个开源项目,可将数据索引到 solr 以满足 Indexer(3) 中未完成的其他要求。
  7. (可能)- 将执行计划的 Nutch 运行的一些服务。

可能还会添加更多组件。

拥有多个 java 项目,每个项目执行一项任务,而不是让一个项目处理大部分组件,这似乎有点不对。对此有什么想法和见解吗?我应该将所有 Java 应用程序组合到一个项目中吗?我应该为此使用某种框架吗?还是我应该像现在这样生活?

最佳答案

我认为您拥有所有这些独立的应用程序并不是一个坏主意。他们似乎都在做一件事,而且做得很好。您可以 做的是通过统一界面公开它们。所以本质上你有一个立面,它位于所有这些不同的服务前面,呈现一个抽象和统一的界面。该服务的消费者将不知道该外观背后的内容。这也很好,因为现在您可以在不影响其他组件的情况下单独更新和替换单个组件。如果您将所有这些组合成一个,则每次修改其中一个组件时都必须推送一个新版本。

关于java - 体系结构 - 我应该将许多临时应用程序组合到一个应用程序中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15368159/

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