当前位置:  开发笔记 > 后端 > 正文

你可以在没有Source的情况下分发Ruby on Rails应用程序吗?

如何解决《你可以在没有Source的情况下分发RubyonRails应用程序吗?》经验,为你挑选了2个好方法。

我想知道是否可以在没有源代码的情况下分发用于生产的RoR应用程序?我在SO上看过这篇文章,但我的情况有点不同.这将是一个由具有一些线索的人管理的应用程序,所以我很酷,仍然需要在客户端设置Apache/Mongrel/MySQL.我真正想要的是保护源.编码似乎是分发PHP应用程序的一种流行方式(例如:Helpspot).

我发现了这些潜在的解决方案:

Zenobfuscate - 然而,并不支持所有类型的Ruby代码,因此可以计算出来

Ruby编码器 - 可能是最好的选择,因为他们的PHP编码器看起来没问题(但我还没有尝试过),但它还没有.我之前使用过IONcube for PHP并且运行良好,但IONcube似乎并不感兴趣.

弹弓 - 它在其他SO帖子中提到过,但它解决了我的另一个问题,来源仍然可见.

RubyScript2Exe - 来自doco,它不是生产就绪的,所以重要的是.

我听说可能使用JRuby并分发字节码可能是实现这一目的的一种方法,但我从未使用过JRuby所以我不确定涉及到什么.

任何人都可以提供任何想法和/或已知示例吗?理想情况下,我也希望拥有某种自动构建方案.



1> Daniel Lopez..:

您现在最好的选择是使用JRuby.一点背景:我的公司(BitRock)与许多专有和商业开源供应商合作.我们帮助他们将服务器软件(通常基于PHP,Java或Ruby)与Web服务器或应用程序服务器(Apache,Tomcat),语言运行时和数据库(通常是Postgres,MySQL)打包成一个独立的,易于使用的安装程序.我们有大量基于PHP的客户(包括你提到的HelpSpot),还有几个基于Rails的客户.对于RoR客户,规范是将JRuby与Tomcat或Glassfish一起使用,尽管在某些情况下我们还捆绑了一个本机Ruby解释器来运行依赖于尚未移植到JRuby的库(通常不是应用程序的核心)的特定脚本.JRuby已经快速成熟,在许多情况下,它实际上比常规Ruby更快地运行代码.您还需要考虑尽管将代码移植到JRuby是相当简单的,但您需要花一些时间在其上.您可能需要查看JRuby Stack,它是您开始使用所需的一切的免费安装程序.祝好运!



2> Bob Aman..:

如果您发布源代码,混淆或其他方式,您的应用程序将被盗版.例如,参见Mint.这取决于您正在构建的内容,但您可能会发现最好将应用程序作为各种类型的混合发布:具有定义良好的API的托管应用程序以及在客户服务器上运行的组件.只要产品的真实价值存在于服务器端,您就不需要对代码进行模糊处理,只需不加修改即可发布源代码.此外,这也可能让您有机会接触运行PHP而不是Ruby的客户端.例如,请参阅Google Analytics,HopToad,Scout等.


-1表示没有回答问题.这不是架构设计,商业模式或应用程序是否会被盗版的问题.
++这是Web应用程序的新的开源/闭源世界.对于开发人员来说,它实际上代表了一个非常好的场景 - 您的应用程序的价值在于您的服务和执行,而不一定在代码本身.您可以享受开放代码的自由和有限供应的好处.
我认为,鉴于这个问题没有实际的解决方案,而且这通常是一种固有的缺陷方法,提供替代方案是非常合理的.
推荐阅读
TXCWB_523
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有