gpt4 book ai didi

java - 使用rmi而不直接连接数据库有什么好处

转载 作者:行者123 更新时间:2023-12-01 12:51:24 24 4
gpt4 key购买 nike

我们要求为一家拥有 10 个分支机构的公司设计一个应用程序。

他们需要一个分布式数据库应用程序,使用它可以存储和检索其他分支的数据。为了实现这一目标,我计划使用连接字符串的 IP 地址通过网络访问数据库。

但是我发现一些文章说使用RMI技术是实现这一目标的最佳途径。但与直接将应用程序连接到数据库相比,我找不到使用 rmi 的任何详细优势。有必要使用RMI技术吗?我不知道rmi。请给我一个详细的答复。提前致谢。

最佳答案

RMI 是执行此操作的最佳技术吗?我们必须就“最佳”达成一致。但我的第一 react 是“不”。

答案取决于这些分支机构是否通过公司内部的安全网络访问数据,或者是否通过浏览器和公共(public)互联网访问数据。

如果所有分支都位于同一安全网络的防火墙内,则 RMI 可能是可接受的。如果它们都可以处理 Java 客户端,您就可以让它工作。

但是,如果它们要通过公共(public)互联网,唯一有意义的解决方案是通过端口 443 的 HTTPS。客户端将以 HTML5 和 CSS3 编写,以便在浏览器中运行。

无论这个问题的答案如何,我认为在每种情况下您都希望在客户端和数据库之间放置一个中介。您不希望客户端直接访问数据,因为它不安全。中介人将负责:

  1. 用户身份验证和授权。
  2. 验证请求数据。
  3. 将请求与查询绑定(bind)以避免 SQL 注入(inject)攻击。
  4. 记录和监控。
  5. 交易维护。

仅当所有服务器和客户端都基于 Java 时,RMI 才有意义。

更现代的方法是使用 HTTP Web 服务(SOAP 或 REST),而不是 RMI。这具有与非 Java 客户端一起工作的优点。这样,您对于移动客户端也将处于更好的位置。

关于java - 使用rmi而不直接连接数据库有什么好处,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24193128/

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