简单整理,自己做备忘的,不为其他作任何参考~

PHP程序

1.开启慢日志,过滤超时时间为1s的方法,针对性优化,可以通过添加缓存方式解决。
2.过滤access日志,统计哪些请求较多较为频繁,是否合理?(研发人员在实现功能的时候只考虑效率应该很少会考虑性能问题,所以通过日志过滤在针对性的了解)
3.php工作模式的选择和进程数量的控制,小内存选择动态模式,可以伸缩性的控制进程的数量来减少内存的浪费,大内存机器可以选择静态指定进程数量,减少因动态创建而对cpu造成损耗,进程数量的指定 一般就
  按照内存/30/2来计算即可 因为要留一些内存给其他的应用。
4.开启opcache 进行预编译缓存,这样可以大大节省服务器的负载,减少了重复的加载和解析脚本的时间。
5.当服务器同时跑着很多业务当时候,为了保障核心业务的优先性可以更改进程的nice值,这样cpu会优先处理,也会防止重要业务被oom干掉
6.上传文件等限制,post_max_size 会导致系统中上传文件等限制,同时nginx或者负载均衡也会有相关参数。 建议:当慢日志过多的时候可以优先开启opcache缓存看看是否有缓解,因为当cpu负载过高的时候很可能是由于cpu的原因导致了一些查询 接口信息等返回的较慢,而并不是程序本身就慢。  

nginx

gzip缓解参考: https://www.darrenfang.com/2015/01/setting-up-http-cache-and-gzip-with-nginx/

关注一下这几项参数,说一下关于后端web服务timeout参数,需要业务自己来定义,为什么要提及这个参数呢?在一次线上故障中发现大量的连接不释放,在紧急情况下可以改短这个参数来临时解决问题,
但有可能会出现部分连接没有交互完而被干掉,例如我们有上传大文件的需求,短时间没上传完就会被ka掉。。 gzip: 开启后会对静态文件压缩,根据设置对静态文件做处理,会有效对加快访问速度,本人亲测,将一个固定3s访问对页面增加静态文件压缩后到1s worker_processes worker_rlimit_nofile worker_connections keepalive_timeout 60; send_timeout 60; # 开启gzip
gzip on; # 启用gzip压缩的最小文件,小于设置值的文件将不会压缩
gzip_min_length 1k; # gzip 压缩级别,1-10,数字越大压缩的越好,也越占用CPU时间,后面会有详细说明
gzip_comp_level 2; # 进行压缩的文件类型。javascript有多种形式。其中的值可以在 mime.types 文件中找到。
gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png; # 是否在http header中添加Vary: Accept-Encoding,建议开启
gzip_vary on; # 禁用IE 6 gzip
gzip_disable "MSIE [1-6]\.";

  

 

mysql

1.mysql 可以通过慢日志来确认哪些慢查询。
2.mysql workbench 是官方的工具,可以监控数据库执行情况,也可以帮助定位问题。

  

关于LNMP常见问题和性能方面的个人理解的更多相关文章

  1. 性能调优:理解Set Statistics Time输出

    在性能调优:理解Set Statistics IO输出我们讨论了Set Statistics IO,还有如何帮助我们进行性能调优.这篇文章会讨论下Set Statistics Time,它会告诉我们执 ...

  2. lnmp常见问题

    常见问题地址:http://lnmp.org/faq.html 如何修改安装LNMP时输入的域名? 修改方法:编辑/usr/local/nginx/conf/nginx.conf 查找安装时输入的域名 ...

  3. LNMP 常见问题(FAQ)

    常见问题(FAQ)常见问题关键词快速索引 我们为什么需要采用LNMP架构?原因不在重复,请看:关于 LNMP一键安装包支持哪些Linux发行版?目前支持CentOS(RadHat).Debian.Ub ...

  4. 军哥 LNMP 常见问题

    安装memcached出错: Install memcached...Notice: memcached-1.4.25.tar.gz not found!!!download now...--2016 ...

  5. 性能调优:理解Set Statistics IO输出

    性能调优是DBA的重要工作之一.很多人会带着各种性能上的问题来问我们.我们需要通过SQL Server知识来处理这些问题.经常被问到的一个问题是:早上这个存储过程运行时间还是可以的,但到了晚上就很慢很 ...

  6. [大牛翻译系列]Hadoop(9)MapReduce 性能调优:理解性能瓶颈,诊断map性能瓶颈

    6.2 诊断性能瓶颈 有的时候作业的执行时间会长得惊人.想靠猜也是很难猜对问题在哪.这一章中将介绍如何界定问题,找到根源.涉及的工具中有的是Hadoop自带的,有的是本书提供的. 系统监控和Hadoo ...

  7. 以C语言为例的程序性能优化 --《深入理解计算机系统》第五章读书笔记

    其实大多数的编译器本身就能提供一些简单的优化,比如gcc就能通过使用 -O2 或者 -O3 的选项来优化程序.但编译器的优化始终也是有限,因为它必须小心翼翼保证优化过程不对程序的功能有改动.故而程序员 ...

  8. 从性能角度帮你理解HTTP协议

    因为做性能测试分析的人来说,HTTP 协议可能是绕不过去的一个槛.在讲 HTTP 之前,我们得先知道一些基本的信息. HTTP(HyperText Transfer Protocol,超文本传输协议) ...

  9. 【原创】Hadoop机架感知对性能调优的理解

    Hadoop作为大数据处理的典型平台,在海量数据处理过程中,其主要限制因素是节点之间的数据传输速率.因为集群的带宽有限,而有限的带宽资源却承担着大量的刚性带宽需求,例如Shuffle阶段的数据传输不可 ...

随机推荐

  1. chromium之message_pump_default

    看看头文件,默认的消息泵,该类实现了MessagePump的四个接口 class MessagePumpDefault : public MessagePump { public: MessagePu ...

  2. 用RestTemplate调取接口,取得返回数据,携带header,动态拼接url ,动态参数

    记录我自己的工作 get 请求  ,携带 请求头 header (token) url 根据参数 动态拼接 参数   放入 map  动态拼接 private String lclUrl = &quo ...

  3. Django忘记超级用户密码||账号

    第一步:运行django shell python3 manage.py shell 第二步:重设密码 >>> from django.contrib.auth.models imp ...

  4. 转:30分钟了解Springboot整合Shiro

    引自:30分钟了解Springboot整合Shiro 前言:06年7月的某日,不才创作了一篇题为<30分钟学会如何使用Shiro>的文章.不在意之间居然斩获了22万的阅读量,许多人因此加了 ...

  5. jQuery树形控件zTree使用小结

    作者:Fonour 字体:[增加 减小] 类型:转载 时间:2016-08-02我要评论 这篇文章主要为大家详细介绍了jQuery树形控件zTree使用方法,zTree树插件的基本使用方法,感兴趣的小 ...

  6. asp.net core上使用Redis demo

    整体思路:(1.面向接口编程 2.Redis可视化操作IDE 3.Redis服务) [无私分享:ASP.NET CORE 项目实战(第十一章)]Asp.net Core 缓存 MemoryCache ...

  7. FMX有一套自己的消息处理机制。类似这样:

    unit Unit1; interface uses System.SysUtils, System.Types, System.UITypes, System.Classes, System.Var ...

  8. Scala基本语法总结(一)

    Scala基本语法总结 时隔快一年了,又捡起scala,不是想学的有多么的精通,只是想把之前遇到的知识点和实践中遇到的重点进行归纳总结,对以后的面试或许有点帮助吧! 一.scala开发环境的配置 我这 ...

  9. Linux字符设备驱动--No.3

    字符驱动(按键)初始化函数分析: int charDrvInit(void) { devNum = MKDEV(reg_major, reg_minor); printk(KERN_EMERG&quo ...

  10. go学习笔记-并发

    并发 goroutine goroutine是Go并行设计的核心.goroutine说到底其实就是协程,但是它比线程更小,十几个goroutine可能体现在底层就是五六个线程,Go语言内部帮你实现了这 ...