所以基本上我想要你对我正在进行的项目架构的看法:
所有内容都是使用Flask框架用Python编写的。应用程序提供移动应用程序正在使用的Restful API。现在主要问题是:
由于对MySql服务器进行了许多非常复杂的查询,我们希望存储来自用户的数据以进行进一步分析(例如,他访问了哪些网址,搜索了哪些网页等),我想出了一个解决方案将有另一个Web应用程序提供API(在龙卷风和MongoDB之上运行,使用称为Motor的异步Pymongo驱动程序),我们将在主应用程序中调用它。
似乎确实令人困惑,但主要想法可能表现为:
USER -> ACTION, API CALL -> <-> RECEIVE DATA FROM MYSQL
FLASK/Server
RESPONSE <- DO_STH_WITH_DATA<- -> EXTERNAL API CALL -> TORNADO -> MONGODB
我知道它看起来很糟糕,但我也不擅长画画:p。
为什么要另外申请?首先,我们希望单独访问从用户收集的数据,这就是我们需要另一个Restful API提供某些资源的原因。我关心的是这种解决方案的性能和一些建议(也许将所有内容集成到一个Web应用程序中会更好,这不是我们想要的那样吗?)。请记住,来自我们主应用程序的帖子调用最终会以某种方式通过电机对mongodb的异步调用来处理,这应该会对性能产生积极影响。
编辑:
我要提到外部api调用将使用芹菜(这正是我们现在计划的)。