大流量程序设计与实现--系列一

大流量程序设计与实现--系列一

一、流量大:

1、服务器集群

2mysql优化(设计合理的数据表、3nf、分表(垂直、水平分割)、

   读写分离、mysql配置优化)

3apache理想并发量

   nginx 理想并发量

4mysql 理想并发量

4.1 数据库负载均衡(读写分离)(amoeba新浪研发)

(主数据库master,从数据库slave)

(数据库之间的同步,利用复制技术,配置就可以)

4.2 select (不同的语句 访问不同的slave数据库、只需要配置一个日志文件来实现)

    dml-数据操作 (update/delete/insert)

    ddlcreate drop) 

    dcl(数据控制语句grant授权 revoke) 

    dtl(数据事物语句savepoint rollback commit

5、集群实现理论

5.1硬件配置:F5 BIG-IP NetScalar 优点是效果好,缺点是贵

5.2软件实现:LVSlinux virtual server),nginx(反向代理),是轮询技术

6、缓存技术(memcached/redis

二、数据量大

1、表的设计要合理

2、分表技术(垂直、水平分割)

3、读写分离

4mysql配置优化(调整最大并发量,定时对数据库碎片整理crontab -e

三、页面静态化

1、原理:就是第一个人访问,然后生成静态html,然后后面的就访问这个html

    1.1尽量少的访问数据库

2、静态网址:http://www.1366768.com/site/index.html静态页面

    2.1静态静态页面的网站

    特点: 1. 利用seo(search engine optimization)搜索引擎优化

       2. 返回速度快

       3. 防止sql注入

    eg:

    //登录不好的代码方式

    $sql = "select id, pwd from users where id=$id and passwd=$passwd";

    $res = mysql_query($sql);

    //根据$res 来判断是否存在该用户,然后是否登录成功。

    //因为这样,就让用户输入了两个变量,变量愈多,就俞可能被攻击

    //应该改成

    $sql = "select id from users where id=$id";

    $res = mysql_query($sql);

    然后把得到的数据与用户输入的密码进行对比

    if(md5($pwd) === 数据库得到的密码){

    }

3、动态网址:比如http://www.1366768.com/index.php?id=112

    3.1 不利于seo

    3.2 每次都访问数据库,导致速度慢

    3.3 sql注入,嵌入javascript夸域攻击

4、伪静态网址

实际开发中,我们希望达到这样的目的:把下面的网址

    http://www.1366768.com/index.php?lang=cn&class=sport&tid=2

    修改成:

    http://www.1366768.com/index-cn-sport-id2.html

    这样网址就是伪静态网址:

    4.1 有利于seo

    4.2 防止注入

    4.3 任然要访问数据库,速度并没有变快

5、页面静态化技术分类:

    5.1. 方式看(真静态,伪静态)

    5.2. 从范围(全局静态,局部静态化[ajax+jquery])

四、SEO

1. apache里面有个工具ab.exe来测试网站速度

2. seo 技巧

   2.1 url不要超过255byte

   2.2 http://www.1366768.com/site/showBlog.html?id=462

       容易让spider多次重复抓取,这样不好,还是应该写成伪静态

   2.3 图片alt信息,如果希望被百度搜索到,就好好写这个alt信息

   2.4 里面的keyword/descripte34个关键字就可以了,

       多了百度也不看,和别人以为自己作弊。

   2.5 网站前台不要写frame/frameset/iframe标签,后台是可以使用的

   

   2.6 flash缺少文字描述,标题简短介绍就可以了,不要写得太多,太细

       如我我们给的图片或者视频取名字,尽量简短,说清楚就可以了

你可能感兴趣的:(资料收集)