《构建高性能WEB站点》动态内容缓存(页面缓存) 04月23日
动态内容缓存就是把动态语言(目前一般是动态脚本php、python、perl、java、ruby等)生成的结果保存起来,下次来取的时候直接返回html的结果。缓存这个东西,就是为了避免重复计算,把结果保留下来,这个比较适合读多写少的页面和网站,但是像微博的页面、人人的个人首页之类的就绝对不能用页面缓存。
在新浪这种大型的互联网公司,而且以读为主的新闻媒体,页面缓存一般分两种。一种是静态页面,就是编辑直接敲html生成一个页面,然后发到线上的前端机(比如首页,经过人工处理过的排行榜,推荐视频等,也就是运营页面)。另外一些就是存放在数据库中的数据,一般是php调用计算出页面之后放到前端cdn缓存,一段时间之后自动过期重新取数据,比如用squid、varnish等实现前端缓存。 (更多…)
这两个月应该看的书 04月10日
定一个目标,这两个月一定要看的书,不能吃老本了,要与时俱进。 1.构建高性能web站点 2.积累必要的一些运维 [...]
《构建高性能web站点》–服务器并发处理能力–I/O 04月09日
网络流量作为互联网最重要的部分,广义上说最重要的是PV,UV等参数,流量和这个网站的价值成正比。微观来说具体到 [...]
《构建高性能web站点》–服务器并发处理能力(3) 03月31日
继续昨天晚上的总结,每天学习一点,打算在这个月把所有的学习完,然后再细分一下每个地方,这一章太牛逼了,它完全可以把一个菜鸟编程一个中鸟。
总结一:系统调用
进程的运行态分为用户态和内核态两种运行模式,进程可以在这两种运行模式下切换,当然会有一定的开销。一般情况下,程序进行数据的运算,以及内存中数据的管理都是在用户态的,但是一旦要写磁盘、发送网络数据,就得切换到内核态进行系统调用,因为系统调用有更多的权利控制计算机,内核态完成后之后切换回用户态,这个比较好理解。
系统调用在linux下的查看方式,strace -p pid 就可以查看到一个进程的运行的系统调用了,这是nginx的子进程空闲的时候的strace过程。 (更多…)
《构建高性能web站点》——服务器并发处理能力–服务器进程 03月30日
很多时候,web服务器的性能是我们最关注的地方,如果是纯静态资源的网站,web服务器的性能将是考虑的最主要的地 [...]
《构建高性能web站点》——服务器并发处理能力(1) 03月29日
这一章,很难懂,是因为整个互联网都在研究这个东西,大到google、facebook等顶级网站,小到xxxor [...]
《构建高性能web站点》——网络传输 03月28日
网络传输,算是互联网最原始的形态,从最初的smtp、ftp、telnet形成的相关的协议到最后的http一统天 [...]
从头开始阅读《构建高性能web站点》 03月28日
这本书,很久以前就买了,一直在断断续续地看,没有系统地总结一下,发现web方面的东西都很零散,很少有一本书或者 [...]