我应该在这个网站应用程序中使用Rails或Ruby吗? 怎么样?

我对Web编程很新(或者实际上,它已经非常老了,因为我最后一次搞乱Web是HTML 1.1),但现在需要快速部署Web应用程序。 似乎每次我转身时,都会有新的首字母缩略词和技术需要学习(JSON,XMLRPC,GWT,Javascript,Rails等)。

这是我的应用必须做的事情:

  1. 给定用户名和密码,进行身份validation(很简单,一切都是这样,显然)。
  2. 允许用户上传大量数据以进行处理。
  3. 处理该数据。
  4. 允许用户下载其处理的数据。

我已经有了Java脚本和一个用于处理数据的数据库。 在一台机器上,我可以运行一系列命令行程序来处理传入的数据块并将结果放回到mysql数据库中。 那已经存在并且有效。

我想使用这些现有和经过测试的方法构建此任务的Web前端。 我现在倾向于这种方法:

  1. 有两台机器,一台数据库机器和一台Web服务器。 如果需要,该方法允许以后的可伸缩性,但也要求我不能假设我用来访问数据并操纵它的程序是本地存储的。
  2. 使用Ruby DRb应用程序创建服务器和客户端。 客户端会将数据传递给服务器,服务器又会调用这些应用程序。
  3. 使用其他一些Ruby接口与Web前端的DRb进行交互。

这是我的问题:看起来大多数用于Web的Ruby应用程序都会自动尝试构建某种本地数据库。 我发现的所有Rails教程都是从创建自己的数据库并与之交互开始的,这正是我不想做的事情。

Rails是适合我的技术,还是使用Ruby DRb? 我应该探索一些其他技术吗?

如果Rails或Ruby是正确的东西,我应该看什么? 我已经有了编程Ruby书,并且已经将它用于一些后端内容以及使基本的DRb工作。

听起来像Rails可能会对你的情况有点重量级。 也许Sinatra可能更合适? 它是一个超轻量级的框架:一个hello world应用程序可能看起来像:

require 'sinatra' get '/' do "Hello World!" end 

Rails很好。 您可以在本地计算机上使用开发和测试数据库,在远程计算机上使用生产数据库。 它不一定是Web服务器。 获取使用Rails的Agile Web Development的副本。 它会教你所有你需要知道的东西。

    Interesting Posts