对于基于规则引擎的软件,将 ruby​​ 前端与 java 后端集成是一个好主意吗?

发布于 2024-12-22 07:16:49 字数 355 浏览 0 评论 0原文

我正在编写一个应用程序,其中 Web 应用程序将是 Rails,它将允许用户输入规则/Ruby 逻辑并将其保存到数据库中。稍后,Java 将出现并获取这些规则(if/else/elseif),并通过 jruby 引擎执行它们。我想知道这样做的负面影响和可能的副作用?这里有两种语言吗?

我想做 Rails 前端,因为可用的插件,以及 Web 应用程序的开发速度。例如,groovy 没有那么多插件,我相信它的开发速度要慢得多。

如果我选择这个解决方案,我是否遗漏了任何东西,或者可能在未来有害的逻辑?

此外,我认为由于 ruby​​ 是动态的,因此用户可以更轻松地通过“ruby”语法而不是像 bean shell 这样的另一个第三方库来输入规则。

I am writing an application where the webapp will be rails and it will allow a user to input rules/ruby-logic and save them to the database. Later on, Java will come along and grab these rules (if/else/elseif) and will execute them via jruby engine. I am wondering of the negatives and possible side-effects of this? And having two languages here?

I want to do rails front-end because the available plugins, and speed of development of webapps. For example, groovy doesnt have as many plugins and i believe that it's much slower in development.

Am I missing anything, or possible logic that may be hurtful in the future if I choose this solution?

In addition I think since ruby is dynamic it will be easier for the user to input rules via a 'ruby' syntax instead of another third-party library like bean shell.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

浅浅 2024-12-29 07:16:49

我觉得大多数复杂的应用程序最终都需要多种语言,通常按照您的计划通过数据库进行交互。我不确定是什么限制导致你在后端使用 Java 而不是 ruby​​(猜测遗留或性能),但如果这是一个要求,那么你的计划听起来是合理的。

就负面/副作用而言,Jruby 似乎有点落后于最新的 ruby​​,但只要您匹配 UI 和 Java 版本,这通常不是什么大问题。后端。我想不出任何有害的东西,但魔鬼总是在细节中;-)

I feel like most complex applications end up needing several languages eventually, usually interfacing through the DB as you're planning. I'm not sure what constraint leads to you Java on backend rather than ruby (guessing legacy or performance), but if that's a requirement then your plan sounds reasonable.

As far as negatives/side-effects, Jruby seems to lag a bit behind the latest ruby, but that's not generally a big deal as long as you match versions for the UI & backend. I can't think of anything that would be harmful in this off the top of my head, but the devil is always in the details ;-)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文