2012-12-13 57 views
0

我很困惑如何对我正在做的项目进行分类,如果它是3层或2层。Javascript PHP N层架构

基本上它是一个医疗服务系统,它使用PHP和JS(使用Jquery和Ajax);两者都用于业务逻辑。一些更有知识的人告诉我它是三层的;我不知道为什么......也许是因为HTML被认为是表示层,PHP和更重要的JS被认为是业务层,而PHP(带MySQL)则是用于数据访问层?是吗?我个人认为它是两层的。有人可以请给我一个详细的解释呢?非常感谢!

+2

为什么这很重要?此外,这些术语并没有特别明确的定义,那么为什么不只是补充/应用自己的定义? http://en.wikipedia.org/wiki/3-tier_architecture –

+0

那么你是在展示数据,你有业务逻辑来操纵数据,并且你有一个数据层? – shapeshifter

+0

这很重要,因为架构是项目防御的一部分。我做了功课,但我仍然在两者之间徘徊。是的,数据呈现(通过HTML和JS),业务逻辑(JS和PHP)和PHP数据层。但是这些图层彼此连接,似乎只是两层 - 即客户端和服务器层。我应该如何最好地把它准确?很容易混淆 – Wap

回答

1

没有定义约定。我认为它是2层客户端服务器。有人会说我猜...

+0

谢谢。它们是什么层次?客户端和服务器层? – Wap

1

我认为层指的是物理计算机,而不是软件层。因此,一个3层架构可能是

1 - 数据库服务器 - MySQL或其它数据库软件

2 - 应用(网络)服务器,运行PHP或其他一些服务器端语言

3 - 客户( Web浏览器解释HTML和Javascript)

在两层架构中,数据库和应用程序服务器都是相同的。

+0

这不会使所有基于浏览器的系统都是三层的吗? (1)用于数据库的MySQL,(2)需要访问它的PHP,以及(3)用于客户端的JS和HTML? – Wap

+0

如果MySQL和Apache/PHP在同一台服务器上,并且如果MySQL在单独的服务器上,它将使它们成为全部两层。 –

+0

看起来网络上有很多关于层级是指硬件还是软件的混淆。例如,本文讨论的软件层http://msdn.microsoft.com/en-us/library/windows/desktop/ms685068(v=vs.85).aspx(可能会或可能不会传播超过一个服务器),而这一个谈论硬件服务器http://www.codingthearchitecture.com/2012/07/20/when_do_you_need_a_3_tier_architecture.html –