对于我们公司内网最近的几个项目,我使用了一个非常简单的 nginx + redis + webdis + 客户端 javascript 的堆栈来实现一些简单的数据分析工具。体验非常棒,尤其是与我之前使用其他堆栈(包括自定义 c++、apache/mod_perl、ASP.Net MVC、.Net HttpListener、Ruby on Rails 和一点 Node.js)的经验相比。鉴于客户端模板工具和前端库(如 jquery-ui)的可用性,我似乎可以很高兴地使用这样的无服务器端代码堆栈来实现更复杂的 Web 应用程序(也许用 couchdb 替换/增强 redis如果有必要)...
当然,这个堆栈的主要限制是我的数据库直接暴露在网络上——在这种情况下,在有防火墙的公司网络上是可以接受的,但如果我想在 Internet 上使用相同的技术,这并不是一个真正的选择。我需要某种级别的服务器端逻辑来安全地处理身份验证和用户角色管理。
是否有任何最佳实践或通用开发堆栈?理想情况下,我想要一些轻量级的东西,并为我提供一个简单的框架,用于在将客户端请求转发到数据库后端之前通过我的自定义用户角色逻辑过滤客户端请求。我对任何类型的服务器端模板或 ActiveRecord 风格的存储级抽象都不感兴趣。