Попробуйте StatFs.getAvailableBlocks . Вам нужно преобразовать количество блоков в КБ с помощью getBlockSize.
JMeter от Apache может обрабатывать различные типы серверов. Я использую его для нагрузочных тестов против веб-приложений, другие в команде используют его для вызовов БД. Его можно настроить разными способами, чтобы получить нужную вам нагрузку. Его можно запускать в консольном режиме и даже кластеризовать с использованием разных клиентов, чтобы минимизировать накладные расходы клиента (и, следовательно, фальсификацию результатов).
Это java-приложение, которое на первый взгляд немного сложное. Но все же нам это нравится. : -)
На самом деле мы так и не нашли подходящего решения для стресс-тестирования нашей базы данных DB2 мэйнфрейма, поэтому в итоге мы развернули собственное. На самом деле он просто состоит из банка из 30 компьютеров под управлением Linux с установленной DB2 Connect.
29 ящиков запускают сценарий, который просто ожидает появления начального файла на монтировании NFS, а затем начинает выполнять фиксированные запросы на основе данных. Тот факт, что эти запросы (и данные в базе данных) являются фиксированными, означает, что мы можем легко сравнить их с предыдущими успешными запусками.
30-й блок запускает два сценария подряд (второй такой же, как и все остальные блоки). Затем первая пустая упаковка заполняет таблицы базы данных известными данными, а затем создает стартовый файл, чтобы все остальные машины (и сама) могли продолжить работу.
Все это делается с помощью bash
и DB2 Connect, поэтому его довольно легко поддерживать (и бесплатно).
У нас также есть другой вариант выполнения случайных запросов на основе анализа производственной информации, собранной за многие месяцы. . Труднее проверить результат на соответствие известному успешному базовому показателю, но в этом случае мы ищем только функциональные проблемы и проблемы с производительностью (поэтому мы проверяем ошибки и запросы, которые занимают слишком много времени).
В настоящее время мы изучаем, действительно ли мы можем объединить все эти физические серверы в виртуальные машины, как на мэйнфрейме, работающем под управлением zLinux (который будет использовать HyperSockets с общей памятью для TCP / IP, в основном устраняя сетевые задержки), так и на платформах Intel с VMWare, чтобы освободить часть этого оборудования. .
Это вариант, который вам следует изучить, если вы этого не сделаете ».
Вы проверяли Bristlecone как инструмент с открытым исходным кодом от Continuent? Я не использую его, но он работает для Postgres и, кажется, может делать то, что вы просите. (извините, как новый пользователь, я не могу дать вам прямую ссылку на страницу инструмента, но Google поможет вам туда; o])