寻找通用服务器模式的名称

时间:2015-12-31 20:57:38

标签: design-patterns

我在确定是否存在以下常见模式的名称时遇到了一些问题:

thing 至少具有以下生命周期:

  • 上线
  • 无限期接受请求
  • 收到一个信号以停止接受新请求,但完成处理当前正在处理的任何请求
  • 离线

我的意思是这与具有终端生命周期的东西相反,例如:

  • 上线
  • 在一个请求上做了一些工作
  • 离线

在我看来,这种模式最具体的例子是一个受负载均衡器影响的Web服务器,但是我很难找到关于这个主题的一般文献。

1 个答案:

答案 0 :(得分:0)

您只是在描述Client/Server model

网络环境中不存在“保持活跃”和“不存在”之间的区别,因为服务器必须始终“保持活力”。否则,它将无法接受客户的请求。 (例如网络服务器)负载均衡器的干预更多地是对基础设施模式的描述,而不是服务器的模式。因为服务器没有“要求”被关闭。它被告知时只接受它。

我刚刚发表了一篇关于系统的论文,该系统可以快速启动按需处理(我们的论文研究了一种更好的系统和算法,用于负载平衡过程)。但是,尽管我们的系统决定(基于完成时间)我们可以快速启动/停止它们,但个别流程仍然是客户端/服务器模型。

如果你想要关于模式领域的一般文献......

您可以使用以下几种主要资源:

即“四人帮”设计模式书。 (由于作者数量而命名:4)https://en.wikipedia.org/wiki/Design_Patterns_(book)这是该主题的第一本书之一。

Books on Pattern-Oriented Software Architecture(完全免责声明,其中一位作者是我的博士顾问)这些书的每一卷都涵盖了不同的学科领域。 Vol 2特别涵盖了与您所谈论的内容直接相关的并发/网络对象(服务器等)。他还教授在Android平台上讲授的Coursera MOOC on POSA, specifically Concurrency(但课程适用于非手持设备。更容易设置Android VM,或'拥有'设备而不是'服务器' )

如果您想要最近最新研究:OOPSLASPLASH举行:

SPLASH:

  

关于系统,编程,语言和方法的ACM SIGPLAN会议   应用程序:人性化软件(SPLASH)

OOPSLA:

  

OOPSLA的范围包括编程语言的所有方面   广泛解释的软件工程。

     

欢迎解决软件开发任何方面的论文,   包括需求,建模,原型设计,设计,实施,   生成,分析,验证,测试,评估,维护,   软件系统的重用,更换和报废。