При 35 подключениях мой биткойн потребляет 581 МБ памяти, что составляет более половины всей моей памяти в VPS (всего 1024), и мне также нужна память для других служб, таких как apache2 и mysql на моем сервере. Могу ли я предпринять какие-либо шаги, чтобы ограничить ресурсы, используемые биткойндом, округлым числом до 256 Мб, не ограничивая при этом способность биткойнда функционировать должным образом? Я полагаю, я могу ограничить количество макс. Входящих / исходящих соединений в bitcoin.conf, но что тогда будет хорошим лимитом?

3 ответа3

0

Bitcoind использует тонну памяти, пока загружает блокчейн. Проверьте, как правильно настроить пространство подкачки в Ubuntu:

https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-ubuntu-14-04

Кроме того, вы можете проверить торрент-загрузку блокчейна. Пока вы доверяете файлу, это может помочь ускорить время загрузки блокчейна.

http://sourceforge.net/projects/bitcoin/files/Bitcoin/blockchain/bootstrap.dat.torrent/download

0

Вы можете настроить mysql и apache, чтобы использовать работу с гораздо меньшим количеством оперативной памяти, чем их значения по умолчанию, хотя это иная тема, и, очевидно, она может не быть опцией (основанной) на объеме вашего трафика и т. Д ...

... bitcoind

Интересно, что он подключен к такому количеству узлов, по умолчанию он только около 8 подключений в прошлый раз, когда я смотрел

Я бы предложил добавить это в ваш ~/.bitcoin/bitcoin.conf, чтобы хотя бы ограничить количество сессий:

MaxConnections = 8

(используйте больше, если вы хотите синхронизировать весь блокчейн (с нуля) быстрее, а затем уменьшите его, хотя я не уверен, как / если это повлияет на его след.)

У меня сейчас работает версия 80600, 8 подключений и работает (RSS) около 320M

Я думаю, что биткойн всегда будет нуждаться в большом количестве или оперативной памяти ... (https://github.com/bitcoin/bitcoin/issues/2485)...

Мне было бы интересно узнать, что можно узнать о сокращении памяти. Я сам начну исследовать это. (Я использую более 10 монет на сервере, который я размещаю, и мне просто пришлось увеличить его оперативную память до 4g, так как она менялась везде, так что было бы полезно знать)

На данный момент я предлагаю несколько настроек для mysqld и apache. Существует множество вариантов. Для mysqld проверьте mysqltuner.pl и начните сталкиваться с числами (множество обучающих программ там для этого, но я предлагаю небольшие изменения за один раз)

..это из сравнительно небольшого mysqld, который я запускаю на одной из своих виртуальных машин (Debian 6), сейчас он занимает около 128 МБ (но потенциально может достигать 164 МБ)..

пример:

[mysqld]
key_buffer = 16K
max_allowed_packet = 1M
table_cache = 4
sort_buffer_size = 64K
read_buffer_size = 256K
read_rnd_buffer_size = 256K
net_buffer_length = 2K
thread_stack = 64K
query_cache_limit   = 1M
query_cache_size        = 16M

[mysql]
[isamchk]
key_buffer      = 8M
sort_buffer_size = 8M

^^ (Если mysqld может работать на Raspberry Pi, это может быть еще больше уменьшено)

... если у вас есть проблемы со стабильностью, я бы предложил по крайней мере создать файл подкачки и активировать его.

Файлы подкачки могут не подходить в зависимости от используемой виртуализации, но я полагаю, это лучше, чем сбои в работе.

0

Посмотрите на https://stackoverflow.com/questions/4983120/limit-memory-usage-for-a-single-linux-process

Я думаю, что softlimit как программа-обертка это то, что вам нужно использовать. Без проверки я не знаю, приведет ли это к обмену или просто убьет его.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .