Code For Colorful Life
JSONP是如何实现跨域请求的?
学习自:说说JSON和JSONP,也许你会豁然开朗,含jQuery用例
条件
- 由于JS的同源策略限制,无法通过AJAX向其他域发送请求;
- 凡是拥有”src”这个属性的标签都拥有跨域的能力,比如
<script>
、<img>
、<iframe>
; - JS可动态为当前DOM结构增加和删除节点;
- 当浏览器请求一个JS文件时,会执行请求返回的内容。
Read more...
2014-03-27 JS与服务端通信
MySQL查询优化学习
学习自《高性能MySQL 第三版》和网络资源
一张图了解MySQL执行SQL语句过程:
是否向数据库请求了不需要的数据
- 查询了不需要的记录
- 多表关联时返回全部列
- 总是取出全部列
解决方案:1、使用 LIMIT;2、避免使用 *,从而有机会使用索引覆盖查询。
Read more...
2014-03-20 MySQL查询优化
MySQL EXPLAIN学习
参考自:Mysql Explain 详解和EXPLAIN Output Format
EXPLAIN 列输出解析:
id
SELECT 标识,是执行 SELECT 的顺序。该值可以为 NULL ,如果是引用了 union 的结果。在这种情况下,table 列的值应该像<unionM,N>
,表示被 union 的行的id值为 M 和 N。
Read more...
2014-03-18 MySQL查询优化
MySQL Index学习
学习自《高性能MySQL 第三版》和网络资源
索引是存储引擎用于快速找到记录的一种数据结构。
在MySQL中,索引是在存储引擎层而不是服务器层实现的。因此,不同存储引擎的索引的工作方式不一样,所支持的索引类型也不同。
Read more...
2014-03-16 MySQL索引
进程调度算法
非抢占方式
批处理系统:
先来先服务(FCFS)
基于时间片的轮转调度算法
将就绪进程按先来先服务的原则排成一个队列,每次调度时,把CPU分配给队首进程,并令其执行一个时间片(从几ms到几百ms)。当执行时间片用完时,由一个计数器发出时钟中断请求,调度进程便根据此信号来停止该进程的执行,并将它送往就绪队列的末尾;然后,再把处理机分配给就绪队列中新的队首进程,同时也让它执行一个时间片。
Read more...
2014-03-12 进程
高性能网站架构基础知识
学习自《构建高性能Web站点》,这里记录一些资源,以备需要时查询
缓存
1、客户端缓存:JS/CSS/图片/静态页面,通过控制http响应头部实现
相关知识:Apache mod_headers 和 mod_expires
2、反向代理缓存
3、动态内容缓存
Read more...
2014-02-27 网站架构