2024-05-16 17:48:23 发布
网友
我现在正在开发一个大型后端系统,用于实时和历史跟踪web服务。 我对Python有丰富的经验,并打算将其与sqlalchemy(MySQL)一起使用来开发后端。 我没有开发健壮和可持续的后端系统的任何主要经验,我想知道你们是否可以为我指出一些有关后端设计模式的文档/书籍?我基本上需要通过实时查询不同的服务(通过HTML/SOAP/JSON)将数据馈送到数据库,并保存这些数据的历史记录。在
谢谢!在
你能更精确地定义“后端”吗?通常,在web开发中,我遵循MVC的结构,其中我的“前端”、html/css/js和处理显示的代码都与我的“后端”模型(业务对象和数据持久性;即数据库)紧密耦合。在
我喜欢Django的模型/视图/模板方法:
http://docs.djangoproject.com/en/dev/faq/general/#django-appears-to-be-a-mvc-framework-but-you-call-the-controller-the-view-and-the-view-the-template-how-come-you-don-t-use-the-standard-names
但是,您还没有真正定义“后端”的含义,因此很难就设计模式给出建议。你说你对Python很有经验,你以前开发过数据库驱动的web应用程序吗?在
更新
根据你的评论,我帮不上什么忙,因为我没有太多的经验做这样的“后台”。然而,考虑到您是如何从web上获取资源的,您的延迟/吞吐量将相当高。因此,为了提高整体效率,您需要一个能够以相当高的并发性运行多个线程或进程的东西。我建议你看看这个帖子上的答案(并搜索类似的答案):
Concurrent downloads - Python
特别是,我发现递归web服务器的示例和下面的示例可能是解决方案的一个非常好的开端:
http://eventlet.net/doc/examples.html#recursive-web-crawler
至于将这个想法转化为一个健壮的/连续的过程,这在很大程度上取决于你的平台和你处理错误的能力。基本上:
保持事物“健壮”的最好方法之一是使它们尽可能简单(而不是简单化)。如果你所做的只是从web上获取信息,以某种方式进行解析,然后将这些信息存储在数据库中,那么就尽量让这个过程保持简单。不要为了使它更健壮而增加不必要的复杂性。如果你最终得到一个200行脚本,你就可以做太好了!在
使用Apache、Django和活塞。在
使用REST作为协议。在
写尽可能少的代码。在
Django模型、表单和管理界面。在
你的资源活塞包装机。在
你能更精确地定义“后端”吗?通常,在web开发中,我遵循MVC的结构,其中我的“前端”、html/css/js和处理显示的代码都与我的“后端”模型(业务对象和数据持久性;即数据库)紧密耦合。在
我喜欢Django的模型/视图/模板方法:
http://docs.djangoproject.com/en/dev/faq/general/#django-appears-to-be-a-mvc-framework-but-you-call-the-controller-the-view-and-the-view-the-template-how-come-you-don-t-use-the-standard-names
但是,您还没有真正定义“后端”的含义,因此很难就设计模式给出建议。你说你对Python很有经验,你以前开发过数据库驱动的web应用程序吗?在
更新
根据你的评论,我帮不上什么忙,因为我没有太多的经验做这样的“后台”。然而,考虑到您是如何从web上获取资源的,您的延迟/吞吐量将相当高。因此,为了提高整体效率,您需要一个能够以相当高的并发性运行多个线程或进程的东西。我建议你看看这个帖子上的答案(并搜索类似的答案):
Concurrent downloads - Python
特别是,我发现递归web服务器的示例和下面的示例可能是解决方案的一个非常好的开端:
http://eventlet.net/doc/examples.html#recursive-web-crawler
至于将这个想法转化为一个健壮的/连续的过程,这在很大程度上取决于你的平台和你处理错误的能力。基本上:
保持事物“健壮”的最好方法之一是使它们尽可能简单(而不是简单化)。如果你所做的只是从web上获取信息,以某种方式进行解析,然后将这些信息存储在数据库中,那么就尽量让这个过程保持简单。不要为了使它更健壮而增加不必要的复杂性。如果你最终得到一个200行脚本,你就可以做太好了!在
使用Apache、Django和活塞。在
使用REST作为协议。在
写尽可能少的代码。在
Django模型、表单和管理界面。在
你的资源活塞包装机。在
相关问题 更多 >
编程相关推荐