84669인 학습
152542인 학습
20005인 학습
5487인 학습
7821인 학습
359900인 학습
3350인 학습
180660인 학습
48569인 학습
18603인 학습
40936인 학습
1549인 학습
1183인 학습
32909인 학습
去看了他们的各种配置,太多太多,以现在初级的运维水准不可能一一了解,所以打算问大家有哪些你们熟悉的特别需要了解知道的配置,怎么配置能更好的维护项目、提高性能。
ringa_lee
好大的问题,说说我个人关注哪些点,欢迎其他伙伴一起补充完善肯定会漏
安全
nginx(user配置项)、php-fpm(user,group配置项)等服务以及网站目录的权限、用户和用户组这个真的很重要
php安全方面还要注意系统级别的函数如果没有项目需求全部禁用(disable_functions)
php不要打开错误打印,很容易暴露信息被攻击
display_startup_errors = Off ,display_errors = Off
性能
nginx进程数worker_processes、最大连接数worker_connections
php-fpm性能相关:pm.max_children、pm.start_servers、pm.min_spare_servers、pm.max_spare_servers、pm.max_requests
日志监控分析
nginx日志:access_log配合log_format
php记录日志:log_errors
php-fpm记录慢执行日志:slowlog配合request_slowlog_timeout
我还会关注下系统级别:iptables、/etc/sysctl.conf等等
建议
最好自己在写点脚本监控内存、流量、cpu、进程数、磁盘空间等等、也可以用监控产品、开源监控项目等等都可以,合理控制报警策略。
然后定期分析上面配置中所产出的日志文件,把一些响应慢的日志、错误的时间、执行慢的日志都排查一下理解一下,解决一些日常的运行中性能问题
php的配置中基本都是默认不需要改,主要的就是添加Xdebug时需要在php.ini中增加配置,如
[xdebug] zend_extension="/Applications/MAMP/bin/php/php7.0.0/lib/php/extensions/no-debug-non-zts-20151012/xdebug.so" xdebug.remote_enable = 1 xdebug.remote_connect_back = 1 xdebug.remote_port = 9000 xdebug.scream=0 xdebug.cli_color=1 xdebug.show_local_vars=1
Xdebug在Development环境是特别有用的,在Production环境时需要开启OPcache,那就需要打开php.ini中OPcache配置如:
[OPcache] zend_extension="/Applications/MAMP/bin/php/php7.0.0/lib/php/extensions/no-debug-non-zts-20151012/opcache.so" opcache.memory_consumption=128 opcache.interned_strings_buffer=8 opcache.max_accelerated_files=4000 opcache.revalidate_freq=60 opcache.fast_shutdown=1 opcache.enable_cli=1
关于PHP日志处理,建议使用monolog/monolog库来处理日志打印。这里推荐一个异常处理工具Sentry,和日志处理工具Logentries。
php-fpm:
pm 系列配置
好大的问题,说说我个人关注哪些点,欢迎其他伙伴一起补充完善肯定会漏
安全
nginx(user配置项)、php-fpm(user,group配置项)等服务以及网站目录的权限、用户和用户组这个真的很重要
php安全方面还要注意系统级别的函数如果没有项目需求全部禁用(disable_functions)
php不要打开错误打印,很容易暴露信息被攻击
性能
nginx进程数worker_processes、最大连接数worker_connections
php-fpm性能相关:pm.max_children、pm.start_servers、pm.min_spare_servers、pm.max_spare_servers、pm.max_requests
日志监控分析
nginx日志:access_log配合log_format
php记录日志:log_errors
php-fpm记录慢执行日志:slowlog配合request_slowlog_timeout
我还会关注下系统级别:iptables、/etc/sysctl.conf等等
建议
最好自己在写点脚本监控内存、流量、cpu、进程数、磁盘空间等等、也可以用监控产品、开源监控项目等等都可以,合理控制报警策略。
然后定期分析上面配置中所产出的日志文件,把一些响应慢的日志、错误的时间、执行慢的日志都排查一下理解一下,解决一些日常的运行中性能问题
php的配置中基本都是默认不需要改,主要的就是添加Xdebug时需要在php.ini中增加配置,如
Xdebug在Development环境是特别有用的,在Production环境时需要开启OPcache,那就需要打开php.ini中OPcache配置如:
关于PHP日志处理,建议使用monolog/monolog库来处理日志打印。
这里推荐一个异常处理工具Sentry,和日志处理工具Logentries。
php-fpm: