我有一个t3a.micro实例,运行流量相当低的wordpress。此实例自动不可用,导致504网关超时错误。此时,我也无法使用ssh连接EC2。它在一天中的任何时候都会发生,有时是每天发生,有时甚至一周都不会发生。当它下降的时候,也没有交通高峰。我也是在AWS的支持下提出这个问题的,并得到了以下答复:
在检查结束时,我能够看到实例在过去24小时中多次失败实例状态检查,表明实例在OS级别上有问题。在进一步检查控制台日志后,我看到了以下内存错误:内存不足:终止进程2050 (apache2)总计-vm:552924kB,anon:54868kB,file-rss:0kB,shmem-rss:32076kB,UID:33个pgtable:848kB oom_score_adj:0 of memory: apache2 (apache2)总计-vm:624936kB,anon-rss:51952kB,file-rss:0kB,shmem-rss:34184 0kB,UID:33个pgtable:856kB oom_score_adj:0 Out内存:已杀死进程1815 (apache2)总计:5504kB,anon-rss:51604kB,file-rss:0kB,shmem-rss:34532 0kB,UID:33 pgtable:836 0kB oom_score_adj:0 of memory: apache2-vm:624744 0kB,anon-rss:52260 0kB,file-rss:0kB,shmem-rss:32136 0kB,UID:33 pgtable:856 0kB oom_score_adj:0 of memory: oom_score_adj:0 2014 (apache2)总计-vm:552440kB,anon-rss:54020 0kB,file-rss:0kB,shmem-rss:28856kB,UID:33 pgtable:844 0kB内存不足:杀死进程2165 (apache2)总计-vm:624756kB,anon:51948kB,file-rss:0kB,shmem:29836kB,UID:33 pgtable:856 0kB oom_score_adj:0 A bit关于OOM (内存外)杀手,如果内存被进程耗尽,从而威胁系统的稳定性,那么OOM杀手就会启动。OOM杀手的任务是继续销毁进程,直到释放足够的内存,以便内核试图运行的进程的其余部分能够顺利运行。从输出结果看,您的实例可能耗尽了内存,因此Linux内核正在调用OOM杀手。
他们建议监控每个进程的内存使用情况,并终止或修复该进程,以避免使用那么多内存。当我运行wordpress时,这看起来并不是一种非常实用的方法,即使它使用了太多内存几分钟,我也无法修改它。
我还有另一个实例t3.size使用弹性豆柄,它在bean梗提供的amazon环境中托管了一个带有nginx/tomcat环境的java web应用程序。同样的问题发生在这个实例中,自动下降并显示504网关超时。
问题:-我不想升级我的实例,因为它们在当前流量的情况下运行得非常好。是否有任何解决方案来处理这些问题,而不需要升级,当然也不需要对进程进行持续监视?
发布于 2021-01-07 17:30:05
你的主要选择是:
我在一个MySQL (512 on内存)和512 on交换空间上运行了五个相当低容量的Wordpress网站、t3a.nano和其他一些工具。
以下是几种减少典型Wordpress系统内存使用的方法(从我的头顶):
您还应该搜索"LAMP (或LEMP) wordpress减少内存使用量“
下面是我使用的MySQL配置。这是我为MySQL 8.x提供的新配置,还没有经过测试,但是它非常类似于我的MySQL5配置,所以应该可以。它被优化为低内存使用率,而不是高性能,而且我不是MySQL专家,所以它可能不是很好。
[mysqld]
# set basedir to your installation path
basedir=(insert here)
# set datadir to the location of your data directory
datadir=(insert here)
# Turn off performance schema
performance_schema=OFF
# Turn off binary log
skip-log-bin
log_bin = OFF
# Disable monitoring
innodb_monitor_disable=all
# RAM optimisation settings overall
innodb_buffer_pool_size=50M
innodb_buffer_pool_instances=1
innodb_flush_method=unbuffered
innodb_log_buffer_size=1048576
innodb_log_file_size=4194304
innodb_max_undo_log_size=10485760
innodb_sort_buffer_size=64K
innodb_ft_cache_size=1600000
innodb_max_undo_log_size=10485760
max_connections=20
key_buffer_size=1M
# Reduce RAM: per thread or per operation settings
thread_stack=140K
thread_cache_size = 2
read_buffer_size=8200
read_rnd_buffer_size=8200
max_heap_table_size=16K
tmp_table_size=128K
temptable_max_ram=2097152
bulk_insert_buffer_size=0
join_buffer_size=128
net_buffer_length=1K
# Slow query log
slow_query_log=OFF
#long_query_time=5
#log_slow_rate_limit=1
#log_slow_rate_type=query
#log_slow_verbosity=full
#log_slow_admin_statements=ON
#log_slow_slave_statements=ON
#slow_query_log_always_write_time=1
#slow_query_log_use_global_control=all
# Logs
log_error = (wherever)
general_log = ON
general_log_file = (wherever)https://serverfault.com/questions/1048945
复制相似问题