何时使用多种主要方法?

时间:2014-04-07 15:47:43

标签: java spring spring-mvc netty

当使用具有多个入口点的应用程序时,我感到很困惑,或者我认为具有多个互连模块的应用程序。我有一个网络应用程序(Netty)以及一个Web应用程序(spring)。我可以将它们捆绑在一起,实际上将它们紧密地耦合在一起,或者我可以将它们模块化以便彼此相互依赖地操作,同时仍然协同工作以使应用程序完整。

是否有任何具体原因使应用程序成为单个实体与多个实体?是否“需要”拥有一个自包含的应用程序(例如,一种主要方法)?

2 个答案:

答案 0 :(得分:0)

首先,询问main()方法的数量有点误导。毕竟,您可以在一个JAR文件中使用main()方法创建多个类。

但问题似乎更多是关于单个应用程序与多个应用程序,或更确切地说:tiers

值得注意的是,这个问题与模块化和多线程问题是分开的,所有这些问题都可以在单层应用程序中使用,就像在多层应用程序中一样容易。

您需要多层应用程序的原因可能有所不同,但以下是一些示例:

  1. 这只是要求的一部分:即聊天软件通常需要服务器和客户端,因为要求是在两台计算机之间移动数据。
  2. 缩放:您需要将工作分散到多台计算机以应对大量数据或请求。 (例如,这是消息队列的典型用例。)
  3. 关注点分离:这通常发生在“企业”系统中,其中需要在完全隔离的情况下执行不同的功能,允许在运行中替换/重新启动模块或单独扩展它们。

答案 1 :(得分:0)

Web应用程序应该有多个条目;想一想您输入的可导致资源的URL。实际上,在许多Web应用程序体系结构(例如JAX-RS)中,鼓励公开资源URI。每个实体,只要一个java bean,都有自己的入口点。不确定这是不是你的意思,但这是我的看法。

相关问题