架构之动静分离与模板引擎的关系

下午一个问题深深困扰我了,这个动静分离到底有什么优势。

动静分离:html和php代码分离,html可以放在cdn上,然后计算或拿数据用ajax解决。                  //两步走战略

模板引擎:仍然是.php的后缀,但会有标志,比如index.blade.php or login.tpl.php等等,

      转到web服务器后,php解释器拿去replace掉模板引擎的占位符,最终生成content返回客户端。//还是属于,主web服务器处理好请求后一次性返回客户端。

动静分离:说白了,两步走战略,将主要的访问压力放到cdn上,主web服务器相当于延迟加载,即页面需要数据时,通过ajax去读取。

  优势:分担负载,减轻主web服务器的压力,适用于大负载。

     html放置cdn,同时还可以通过配置缓存要客户浏览器中,类似于css、js那样。极大减轻压力。

  劣势:网络环境不佳时,ajax回应很慢,导致页面出现空白,出错处理会不好看。

     编程方面,url之类参数都需要写死,参数修改麻烦,

     增加了复杂度。

模板引擎:一次处理完返回给客户。

  优势:一个请求一次解决。在不使用模式时,页面还可以用php做动态处理。

       开发更轻松随意。

     参数定制可以很灵活。

  劣势:在大负载情况下,会给服务器造成很大压力。

相关链接:

  http://www.linuxidc.com/Linux/2013-08/88570.htm  //nginx+apache实现动静处理,即nginx反向代理,apache只处理动态

时间: 2024-08-14 07:38:23

架构之动静分离与模板引擎的关系的相关文章

Web服务之LNMMP架构及动静分离实现

一.LNMMP LNMMP环境是Linux + Nginx + Memcached + MySQL + PhP,即LNMP + memcached. Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态.数据库驱动网站的速度.Memcached基于一个存储键/值对的hashmap.其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通

Linux深入篇之四:构建Nginx+Tomcat动静分离架构

Linux深入篇之四:构建Nginx+Tomcat动静分离架构 Nginx动静分离简单来说就是把动态跟静态请求分开,不能理解成只是单纯的把动态页面和静态页面物理分离.严格意义上说应该是:动态请求跟静态请求分开,可以理解成使用Nginx处理静态页面,Tomcat.Resin处理动态页面. 动静分离从目前实现角度来讲大致分为两种: 一种是纯粹的把静态文件独立成单独的域名,放在独立的服务器上,也是目前主流推崇的方案: 另外一种方法就是动态跟静态文件混合在一起发布,通过nginx来分开. 具体怎么来实现

使用模块化思维和模板引擎搭建前端架构(require+underscore)

require.js 介绍: 是一个非常小巧的JavaScript模块载入框架,是AMD规范最好的实现者之一.最新版本的RequireJS压缩后只有14K,堪称非常轻量. 官网:http://www.requirejs.cn/    (PS:如果没接触过,刚开始看都是一头蒙蔽的,建议看下菜鸟教程) 新手教程:http://www.runoob.com/w3cnote/requirejs-tutorial-1.html 优点:可完成团队协作.模块复用.单元测试等等一系列复杂的需求 undersco

LNMMP架构实现Web动静分离

前言 前面的文章中说过LAMP架构包括:Linux操作系统,Apache网站服务器,MySQL数据库,Perl.PHP或者Python编程语言,而今天要说的LNMMP 和LAMP类似,只是作为Web服务器的不再是Apache而是高性能的Nginx,同时引进Memcached加速缓存效率,用于加快访问速度. Memcached是一款开源.高性能.分布式内存对象缓存系统,可应用各种需要缓存的场景,其主要目的是通过降低对数据库的访问来加速Web应用程序.它是一个基于内存的"键值对"存储,用于

Nginx LB+keepalived+varnish+NAMP架构部署wordpress实现动静分离

Nginxproxy+varnish Nginx负载均衡它可基于四层和七层之间进行调度,而且对后端各个节点具有健康状态检测的功能,当后端服务器故障时,会自动标记为不可用状态,当后端节点上线时再将请求调度至此节点,配合keepalived利用飘移IP,高可用保证调度器的实时在线.为保证热区数据的快速响应配合varnish缓存加速,并实现动静分离. 案例架构拓扑如下: 拓扑环境如下: 前端:Nginx+keepalived高可用 调度服务器:Varnish1.Varnish2 缓存服务器:Varni

Haproxy的负载均衡、动静分离、状态监控、近期网络架构

一.Haproxy的简介 Haproxy的官网站点:http://haproxy.com/ HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代 理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案.HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理.HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接.并且它的运行模式使得它可以很简单安全的整合进您当前的架构中, 同时可以保护你的web服务器不被暴露到网络上. HAProxy实现

Nginx+Tomcat动静分离架构

Nginx+Tomcat动静分离架构 Nginx+tomcat是目前主流的java web架构,Nginx动静分离简单来说就是把动态跟静态请求分开,不能理解成只是单纯的把动态页面和静态页面物理分离.严格意义上说应该是动态请求跟静态请求分开,可以理解成使用Nginx处理静态页面,Tomcat.Resin出来动态页面. 动静分离从目前实现角度来讲大致分为两种,一种是纯粹的把静态文件独立成单独的域名,放在独立的服务器上,也是目前主流推崇的方案:另外一种方法就是动态跟静态文件混合在一起发布,通过ngin

网站集群架构实战(LVS负载均衡、Nginx代理缓存、Nginx动静分离、Rsync+Inotify全网备份、Zabbix自动注册全网监控)--技术流ken

前言 最近做了一个不大不小的项目,现就删繁就简单独拿出来web集群这一块写一篇博客.数据库集群请参考<MySQL集群架构篇:MHA+MySQL-PROXY+LVS实现MySQL集群架构高可用/高性能-技术流ken>下面是项目的一些简单介绍. WEB集群项目简介 随着网站访问量的激增,势必会导致网站的负载增加,现需求搭载一套高性能,高负载,高可用的网站集群架构以保障网站的持续.高效.安全.稳定的运行. 针对以上需求,我们采用了如下的技术: 使用负载均衡技术来实现网站请求的调度分发,减小后端服务器

Centos7.3 部署 LAMP 架构动静分离

一.LAMP动静分离当需要搭建一个高效的web架构时,采用动静分离无疑是最好的选择,这篇博文将写下来LAMP的动静分离部署方式. 所谓LAMP?LAMP架构是目前最成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件,能够提供动态web站点服务及其应用开发环境.与之并肩的还有LNMP.LTMP等,LAMP说白了就是Linux操作系统上安装Apache网站服务,构建php/perl/Python运行环境来连接mysql数据库,四个组件合起来就简称"LAMP". LNMP只不过