网站性能提高实战经验点滴记录

 更新时间:2011年02月19日 16:43:05   作者:  
网站性能提高实战经验点滴记录,需要的朋友可以参考下。
DB:
1.数据库可以适当设计一些冗余字段来减少联合查询
2.经常查询的字段要建立索引
3.查询内容尽量简洁, 比如cakephp中的查询尽量设置$this->recursive=-1,并指定fields.
4.数据库用单独的服务器,有条件的常用查询数据单独分库
5.把session等数据放在Memcache而不是数据库中既能满足多服务器之间共享也能降低数据库的负载。
参考如下文章: http://www.linuxjournal.com/article/7451?page=0,1
6.Bad Sql会摧毁系统的CPU,尤其在使用IN查询时,一定要确保array里面数据是唯一的,且不能有大量数据。
HTTP Request:
1.调节apache增大服务器并发处理连接数
2.压缩js/css减少客户并发请求连接数(apache/nginx的gzip配置)
3.尽量使用离线数据库,少调用远程http service(geoip service, google map...).至少要设置合理的请求超时时间。
4.图片、静态资源用专用的服务器
WEB server:
1.apache+php->ningx+(php+fpm)
2.haproxy, 设置请求队列queue, 比如50,这样可以起到缓冲和保护web server的作用,效果明显
3.添加web server, haproxy负载均衡
( 多服务器注意session/cache放在数据库或者memcache中,代码补丁注意同步, 动态生成或者管理员加载的资源注意同步)
Code:
1.避免无效循环
2.避免无效链接请求
3.设计上注意不要产生单个服务器的文件
4.设计上注意不要产生大量的小文件,否则可能会引起inode资源耗尽
5.设计上注意不要把大量营销邮件的发送和单个业务邮件混淆在一起,另外批量邮件的产生和发送逻辑要分开
6.最好把营销邮件的发送以调用第三方专业邮件服务的形式完成。这样可以避免垃圾邮件和检查无效邮件
to be continued.

相关文章

  • Git如何清除本地缓存

    Git如何清除本地缓存

    这篇文章主要介绍了Git如何清除本地缓存问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • ASCII码对照表以及各个字符的解释(精华版)

    ASCII码对照表以及各个字符的解释(精华版)

    ASCII(American Standard Code for Information Interchange,美国信息互换标准代码)是一套基于拉丁字母的字符编码,共收录了 128 个字符,用一个字节就可以存储,它等同于国际标准 ISO/IEC 646
    2020-03-03
  • GIt的基本操作详解

    GIt的基本操作详解

    本文主要介绍了GIt的基本操作。具有很好的参考价值,下面跟着小编一起来看下吧
    2017-01-01
  • Git别名的使用

    Git别名的使用

    这篇文章主要介绍了Git别名的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • Jenkins定时构建语法规则及时间设置

    Jenkins定时构建语法规则及时间设置

    这篇文章主要为大家介绍了Jenkins定时构建时间设置,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06
  • 关于使用mvn deploy命令将本地jar包上传到maven私服的问题(收藏)

    关于使用mvn deploy命令将本地jar包上传到maven私服的问题(收藏)

    这篇文章主要介绍了使用mvn deploy命令将本地jar包上传到maven私服,分享本篇教程可以帮助多数朋友少走弯路,本文具有很好的收藏价值,需要的朋友可以参考下
    2022-03-03
  • Postman传递对象参数(包含有集合对象)

    Postman传递对象参数(包含有集合对象)

    postman通常需要传递各式各样的参数,本文主要介绍了Postman传递对象参数(包含有集合对象),具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-01-01
  • git push 本地项目推送到远程分支的方法(git命令版)

    git push 本地项目推送到远程分支的方法(git命令版)

    这篇文章主要介绍了git push 本地项目推送到远程分支的方法(git命令版),需要的朋友可以参考下
    2020-09-09
  • Prompt 编程产生背景技术原理应用实例解析

    Prompt 编程产生背景技术原理应用实例解析

    这篇文章主要为大家介绍了Prompt 编程产生背景技术原理应用实例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-11-11
  • 关于rpc长连接与短连接的思考记录

    关于rpc长连接与短连接的思考记录

    文章总结了RPC项目中长连接和短连接的处理方式,包括RPC和HTTP的长连接与短连接的区别、TCP的保活机制、客户端与服务器的连接模式及其利弊分析,文章强调了在实际应用中需要根据具体情况选择长连接还是短连接,并讨论了负载均衡器在RPC中的作用
    2025-01-01

最新评论