使用python提供应用程序服务

时间:2010-07-15 13:29:04

标签: python web-services architecture

由于客户端的安全性要求,我公司的Web架构基本上有了额外的层,这使得开发应用程序的过程变得复杂。我想就最好的方法提出一些意见和建议。

首先,概述:

  • 表示层 - 这主要是PHP,还有一些flex应用程序。我们可能很快就会添加HTML5 / Javascript(jQuery)。此层无法查看我们的数据库层,并且是唯一对外界可见的层。
  • app层 - 目前主要是PHP。它可以访问数据库
  • db layer - 只能从非DMZ主机访问。

现在,需要调用应用程序层的Flex应用程序和客户端javascript - 这是相当数量的 - 通过在表示层上运行的PHP代理进行调用,该代理传递请求到应用层。这些通常是AMF服务请求,但我们可以轻松地代理RESTful请求。

我有机会立即更换大量此堆栈,前提是我可以保留基本的安全特性。我想要的是能够编写JavaScript或Flex应用程序,这些应用程序对表示层中可见的服务进行RESTful调用,这些服务将透明地(或透明地!)代理到实际工作完成的应用层中。

问题是,我看到的每个教程(例如)Django或其他pythonic web / REST框架似乎都假设我的演示文稿和应用程序层提供的服务仅由一层提供。我需要有关如何使用Python编写Web服务的建议。应用层必须对客户端进行身份验证并维护客户端会话。 Web层代理不会这样做,因为它没有数据库访问权限。例如,这种事情就是我用Django指出的,它的缓存会话跟踪。但是,说实话,我对任何让我远离编写PHP4的东西持开放态度。

2 个答案:

答案 0 :(得分:1)

django-piston是Django用于创建RESTful API的迷你框架,我认为它应该满足您的要求。

答案 1 :(得分:0)

我发现Pylons只是提供此功能的门票;扩展非常简单,测试很简单,并且作为开发人员给我带来了很多控制权