2010-05-28 39 views
7

这是一个奇怪的元编程问题,但我意识到我的新项目不需要一个完整的MVC框架,并且是一个铁杆人,我不确定现在使用什么。什么技术堆栈/平台用于项目?

为了给你一个必要功能的要点;该网站将显示静态页面,但用户将能够登录并“编辑他们当前的计划”。所有购买和信用卡编辑都由定期付款用户处理,我只需要一个页面来编辑他们当前的计划。所有这些都将通过(动态)XML API调用完成,因此不需要数据库。

我应该坚持使用我的典型rails/nginx堆栈,还是有一些我可以用来减轻负载,因为我不需要Rails的分量。我熟悉Python和PHP,但宁愿不去那条路线。 Sinatra是不错的选择吗?

tl; dr:什么是快速提供大部分静态页面的好方法,最好在Ruby中,某些页面需要动态XML呈现?

回答

5

如果你想坚持使用Ruby,Sinatra会很好,就像Rails Metal一样。

+1

我其实还没有听说过Rails Metal,谢谢! – dannyzlo 2010-05-28 08:18:55

0

如果你知道Rails,那么为什么不坚持下去?这样,您就可以使用您习惯的所有身份验证功能等,而无需学习其他平台并承担包含的实施风险。如果应用程序增长超出预期,那么您已经拥有了一个坚实的基础。

+0

我的理由是,我不需要整个代码库的重量来实现这么简单的事情。这里唯一的动态内容是通过API调用,包括认证。我所要做的就是快速提供静态页面,然后能够动态生成XML到视图中,并从请求中解析XML。 – dannyzlo 2010-05-28 08:25:42

+0

@Danny Z:我明白你在说什么,但是当你为混合添加另一个框架时,你会增加你必须支持的解决方案组合的整体复杂性,因为你必须学习新的框架,进行部署,跟踪对其的更改等。除非您对客户强加的运行时限制非常严格,否则有时候最好只是坚持您所知道的内容。只是我的0.02美元的价值。 – 2010-05-28 08:39:47

+0

这条思路导致'我拥有的就是一把锤子,所以每一个问题都是钉子'。 – x1a4 2010-05-28 14:49:59

3

如果您感觉有点冒险,并希望获得一些有用的使用Rails技术的经验,您可以尝试构建Rack应用程序。这是一个非常简单的API,可以响应通用的HTTP查询,并且从那里您可以快速构建静态文件处理和XML处理。与轨道相比,启动和提供页面的速度也快得多。

http://github.com/cloudhead/toto是一个体面的基于机架的应用程序的一个例子。

+0

看着它,谢谢!你有什么好的“指导”阅读建议吗?或者其他什么 – dannyzlo 2010-05-28 08:28:44

+0

实际上有一个railscast。这可能是一个开始http://railscasts.com/episodes/151-rack-middleware的好地方。他在这集中将它集成到了rails中,但它会向您介绍API。 – Ceilingfish 2010-05-28 08:39:40