合作机构:阿里云 / 腾讯云 / 亚马逊云 / DreamHost / NameSilo / INWX / GODADDY / 百度统计
就像设计一个产品,你的网页也需要一个很好的蓝图来进行设计,在UI/UX设计的时候,我们称之为原型,这里我们使用“Web应用架构”这个名词。
本文,我们就从开发者的角度来讨论一下这个话题并介绍相关的知识。
所谓web应用架构就是一个用来处理内外部各个组件的框架,他主要处理这些组件之间的连接和交互(中间层,用户接口以及数据库等等)。这样,web就可以被客户所使用。
它最初的功能就是让所有的组件都能够同时工作,然后为之后的扩展打下一个更好的基础。
很多开发者都会忽略这一步,而直接开发网页。然而,假如你希望你的网站可以很方便的扩展,并且可靠,安全,那么这一步显然是不可忽略的。
所有人包括开发者,客户设置最终的终端用户都应当参与进来,看看什么样的网站是真正需要的。
Web应用架构有很多种组件,不过总得来说他可以分为两个大类,一个是用户接口组件,另外一个结构性组件。
用户接口组件就是用来创建web应用接口的。换句话说,这些组件和你的显示,设置是密切相关的。他们包含仪表板,统计数据,通知元素,布局,活动跟踪,配置设置等等方面。
另一方面,结构性组件则在构建一个web应用功能的部分起到了很大的作用。因为,他们是允许用户和网页交互的组件,简单的举三个例子:
1)web应用服务器:用Python,PHP,Java,.NET等等开发,他有相关的商业逻辑(或者规则,限制),这样网站就可以自动的运行了。
2)数据库服务器:它存储了网页所需要的数据,并且提供查询,修改等等功能。
3)浏览器:用户是通过它来和网站最终进行交互的。CSS,HTML和Javascript是三大用于开发这个的语言。
取决于各种各样的因素和目的,开发者最终会选择下面三种的一种来进行web应用的开发:
1)单页应用:他和一个桌面应用类似:“可以使用web server的数据来重写浏览器中的页面,而不需要重新加载整个页面。”这样的话,用户的体验会变得很好,因为不会产生任何的中断。目前来看,这也是最流行的web应用架构。
2)微服务架构:这种架构会把整个网页分成多个小的部分,然后一个部分一个部分地进行开发。这种网页,用户可以很方面的推出他们的产品,因为每次都只有一个功能在运行。
3)无服务器框架:当选择这种的时候,不在需要管理结构。你所需要做的就是开发功能。
他可以很容易地把各种Java框架或者工具结合起来,不管他们有多复杂或者简单。有了这样的特性,所以一般会用在比较大的项目或者商业开发环境中。
所有的数据和功能都存储在云上或者一个本地服务器上。这样一来,不同的系统相互之间都可以交互,哪怕他们之间没有直接连接。
这是一个可以存储Message Queue的地方,然后软件可以获取响应的Message。开发者在建立交易系统的时候可以使用他。
可以在一台机器上处理跨平台的软件,Docker,微服务是它最重要的能力之一。除此之外,你设置不需要源码来存储数据。
这种架构,只需要很少的代码就可以提供强大的保护,快速的开发和简单的维护。
这个框架即可作为一种框架又可以作为一个平台。开发者使用NgModules来组织这个架构。代码大小减少和惰性加载是这个架构的最大的优点。
开发者比较倾向于这种框架,因为他比较易于使用,理解和维护。另外,Python对新人来说上手实在是太容易了。
这种框架兼具高效和快速设计的优点,非常方便创建模式和进行配置。而且非常方便代码的分享以及重用,还有很多别的优势。
希望你能够对各种web架构有一个初步的了解。
TOP