Python API前端架构
我想建立一个网站,它是一个API的前端。基本上,前端接受一些用户输入,并使用这些输入来查询API和检索结果。检索结果时,将显示这些结果。这一切都是异步完成的 我的问题是:Python API前端架构,python,django,architecture,celery,Python,Django,Architecture,Celery,我想建立一个网站,它是一个API的前端。基本上,前端接受一些用户输入,并使用这些输入来查询API和检索结果。检索结果时,将显示这些结果。这一切都是异步完成的 我的问题是: 我是否使用芹菜之类的东西在后台处理API查询 假设我使用AJAX(我将使用AJAX),我是否有不同的URL来处理用户输入和检索查询结果 我是否使用长轮询之类的方法来获取并用JavaScript显示结果 考虑到检索到的结果可以进一步过滤,我正在考虑使用memcached作为存储。这是否恰当 如果我错过了什么,或者有更好的方法,我
这就是我把芹菜放进调料的原因。在我看来,应用程序的流程是这样的。用户在我的网页上输入所需的信息,当用户提交数据时,数据将异步发送到我的后端。现在,芹菜用于向第三方API发送请求并检索数据。同时,我的前端不断轮询后端以获取数据,并在接收数据时开始显示数据。您在这里遗漏了一些要点。根据您的需求,我假设您希望构建一个查询(RESTful)API的前端(html+javascript),该API只是一个“讲”HTTP的服务器 因此,API查询与服务器有关,即Apache上的Django或Tornado或。。芹菜不能“处理”您的查询,但它可以用于后台任务 在客户端,AJAX调用将触发一些映射到某些URL的服务器端视图。如何定义它们取决于您。看看一些流行的API(twitter),看看它们是如何构造的 长轮询与您的“业务”逻辑有关,它定义了一种稍后如何向客户机显示数据的方法 此外,缓存与服务器端性能有关,建议您使用memcached或redis之类的工具
编辑(为了编辑):你的方法没有错。芹菜是从外部API获取数据,然后将结果保存到数据库的正确工具,当然,还可以使用一些缓存。然后从客户端进行一些轮询以获得结果。但是,有一种更为优化、无阻塞、优雅的方法可以实现同样的效果。您可以使用Tornado从外部API获取数据,当这些数据准备好后,将它们发送到客户端。不要芹菜,不要长时间吃。非常棒的代码片段。您的回答让我意识到我对问题的解释不正确。我已经更新了我的解释(希望更清楚)。