php特级课---3、常用的网站加速技术有哪些

2023-06-25,,

php特级课---3、常用的网站加速技术有哪些

一、总结

一句话总结:网站加速技术是一组技术的组合,来提升网站的速度

1.Squid代理缓存技术
2.页面静态化缓存
3.Memcache
4.Sphinx搜索加速

1、squid的作用是什么(squid动静分离)?

动静分离,动态数据和静态数据分离:squid是linux里面的软件:Squid最开始是做代理服务器的

squid是linux里面的软件

动静分离,动态数据和静态数据分离

Squid最开始是做代理服务器的

2、什么是静态数据(除了js和css文件外)?

静态页面、图片/FLUSH、CSS文件、JS文件

3、什么是动态数据?

根据用户的请求从服务器的数据库中或文件获取的记录

4、squid技术的机制和实例?

感觉和cdn有点相似:就近请求服务器

比如新浪,新浪的总部在北京,但是新浪在每个城市都有服务器,比如山西太原,

现在山西太原的一个用户请求访问一个北京的网站,那么那些静态资源(flash,css,js,图片等)会加载进山西太原的服务器的缓存池,

如果山西太原的其它用户要访问这个北京的网站,那么就不需要从北京的服务器上面加载,直接在山西太原的服务器上面加载这些资源就可以了

5、squid反向代理是什么(代理跑一趟的功能)?

代理服务器帮忙请求和返回资源

客户机需要向服务器请求资源,代理服务器帮忙请求,然后代理服务器把资源返回给用户,

感觉游戏加速器就是相似的原理

6、页面静态化如何实现网站加速(比如smarty技术)?

使用现成的插件:比如:Apache HTTP服务器的mod_rewrite等
自己写:自己写的代码实现动态网页静态化,方法也有好几种:1、创建FSO对象,2、利用模板技术,3、使用Server.Transfer转换技术
HttpWebRequest:使用HttpWebRequest请求客户端的方式,获取返回资源,生成静态页面

方法一:使用现成的插件,

比如:Apache HTTP服务器的mod_rewrite等,它们都是基于正则表达式解析器开发的重写引擎。

它们的使用方法查看它们自带的帮助即可

方法二:自己写的代码实现动态网页静态化,方法也有好几种:
  1、创建FSO对象,利用此对象将所需的内容动态创建到文
件中生成HTML页面
  2、利用模板技术,将模板中特殊代码的值替换为从表单或
是数据库字段中接受过来的值 生成HTML文件
  3、使用Server.Transfer转换技术

方法三:使用HttpWebRequest请求客户端的方式,获取返回资源,生成静态页面。

一般这样只需要获取网页内容即可,其它资源可放置在服务器上,自动加载

7、常用的页面静态化(模板技术)有哪些?

Smarty模板
ThinkPHP框架
ZendFrameWork框架

BroPHP框架

8、Memcache是什么?

内存中读取:Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。

实例:用于常用资源的缓存区间

Memcache是一个高性能的分布式的内存对象缓存系统,
通过在内存里维护一个统一的巨大的hash表,它能够用
来存储各种格式的数据,包括图像、视频、文件以及数
据库检索的结果等。简单的说就是将数据调用到内存中,
然后从内存中读取,从而大大提高读取速度
  Memcache是danga的一个项目,最早是
LiveJournal 服务的,最初为了加速 LiveJournal 访问
速度而开发的,后来被很多大型的网站采用
  Memcached是以守护程序方式运行于一个或多个
服务器中,随时会接收客户端的连接和操作

9、memcache的工作机制是怎样的?

第一次取数据的时候从数据库中取,然后存到memcache中,后面的请求直接从memcache中取就好

10、银行系统适合用memcache么?

不适合:服务器宕机会影响影响memcache中存储的数据,所以比如银行经融里面的一些操作就不适合memcache,以防数据突然丢失

11、Sphinx搜索(加速)是什么?

全文索引:Sphinx是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。

Sphinx是一个基于SQL的全文检索引擎,可以结合
MySQL,PostgreSQL做全文搜索,它可以提供比数据库
本身更专业的搜索功能,使得应用程序更容易实现专业
化的全文检索。Sphinx特别为一些脚本语言设计搜索
API接口,如PHP,Python,Perl,Ruby等,同时为
MySQL也设计了一个存储引擎插件。
Sphinx 单一索引最大可包含1亿条记录,在1千万条记
录情况下的查询速度为0.x秒(毫秒级)。Sphinx创建
索引的速度为:创建100万条记录的索引只需 3~4分
钟,创建1000万条记录的索引可以在50分钟内完成,
而只包含最新10万条记录的增量索引,重建一次只需几
十秒

比mysql里面的搜索快太多

12、Sphinx全文索引的原理是什么?

php请求数据,Sphinx拿到文档id,然后去Mysql中通过文档id拿数据

13、搜索引擎的必须的技术是什么?

中文分词:类似于百度的搜索

14、 Sphinx全文索引的时间量级是多少?

1000W条才0.几秒

二、内容在总结中

 

php特级课---3、常用的网站加速技术有哪些的相关教程结束。

《php特级课---3、常用的网站加速技术有哪些.doc》

下载本文的Word格式文档,以方便收藏与打印。