- PVSM.RU - https://www.pvsm.ru -
Кёртис Спенсер (Curtis Spencer) с коллегами из компании Spool разработали легковесный сервер Fake S3 [1], который ведёт себя как настоящий Amazon S3 и помогает тестировать проекты, не гоняя данные в настоящее облако и не тратя деньги на трафик. К тому же, для тестирования Fake S3 надёжнее, потому что работает локально. Спенсер говорит, что благодаря Fake S3 они сэкономили около $1000 за последний месяц на одной только оплате трафика.
Установка
gem install fakes3
Для запуска сервера нужно указать хост и порт.
fakes3 -r /mnt/fakes3_root -p 4567
Пример клиентского кода
require 'rubygems'
require 'aws/s3'
include AWS::S3
AWS::S3::Base.establish_connection!(:access_key_id => "123",
:secret_access_key => "abc",
:server => "localhost",
:port => "10001")
Bucket.create('mystuff')
('a'..'z').each do |filename|
S3Object.store(filename, 'Hello World', 'mystuff')
end
bucket = Bucket.find('mystuff')
bucket.objects.each do |s3_obj|
puts "#{s3_obj.key}:#{s3_obj.value}"
end
Bucket.delete("mystuff",:force => true) # Delete your bucket and all its keys
Есть даже возможность эмулировать сетевые условия, например, максимальную скорость канала.
fakes3 -r ~/fakes3_root -p 10001 --limit=50K
Эта команда органичит пропускную способность для запросов GET полосой 50K/s на каждый запрос.
Разработчики подчёркивают, что их сервер предназначен именно для тестирования проектов, а не для замены S3. Если вы хотите сделать замену S3, то они рекомендуют [2] использовать для этого другие инструменты: Ceph [3], ParkPlace [4] (поддерживает bitorrent), Boardwalk [5] (интерфейс S3 перед MongoDB) и RiakCS [6].
Автор: alizar
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/testirovanie/5977
Ссылки в тексте:
[1] Fake S3: https://github.com/jubos/fake-s3
[2] рекомендуют: http://blog.getspool.com/2012/04/18/fake-s3-save-time-money-and-develop-offline/
[3] Ceph: http://ceph.newdream.net/
[4] ParkPlace: https://github.com/mattjamieson/parkplace
[5] Boardwalk: https://github.com/razerbeans/boardwalk
[6] RiakCS: http://basho.com/products/riakcs/
Нажмите здесь для печати.