Используете ли вы AWSDBProxy?Есть ли снижение производительности при масштабировании?

StackOverflow https://stackoverflow.com/questions/501946

Вопрос

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

Похоже, что единственные учебные пособия, в которых говорится об использовании Amazon SimpleDB на сайте rails, используют AWSDBProxy...Лично я нахожу это нелогичным для масштабирования, учитывая расположение сервера типичного сайта Rails ниже (с использованием AWSDBProxy):

Плагин здесь: http://agilewebdevelopment.com/plugins/aws_sdb_proxy

Изображение здесь: http://www.freeimagehosting.net/uploads/91be4e0617.png

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

  1. У нас есть единственная точка отказа, гораздо менее стабильная, чем наш балансировщик нагрузки
  2. Мы должны протолкнуть всю нашу информацию через этот Сервер WEBrick

Решение, конечно, состоит в том, чтобы добавить больше AWSDBProxies...но почему бы тогда просто не использовать следующий код, скажем, в классе, пропустив прокси все вместе?

service = AwsSdb::Service.new(Logger.new(nil),
                                CONFIG['aws_access_key_id'],
                                CONFIG['aws_secret_access_key'])
service.query(domain, query)

Итак, к чему я клоню, так это к тому, что если вы являются используя AWSDBProxy, каковы ваши обоснования для этого?И если вы действительно используете его, на что похожа ваша производительность?Если у вас есть точные цифры, это было бы еще более ценно!

Спасибо!

Это было полезно?

Решение

Я им не пользуюсь и никогда о нем не слышал, но это то, что я считаю разумными причинами.

  1. Вы используете свой основной сервер приложений на EC2, поэтому вероятность сбоя в работе Интернета на самом деле влияет на вас не более одного раза.
  2. Вы запускаете по одному прокси-серверу на каждом из ваших серверов приложений.Таким образом, разрыв соединения не хуже, чем разрыв соединений с базой данных.
  3. Потому что это можно сделать.Это такая же веская причина, как и любая другая в проекте с открытым исходным кодом.Иногда требуется создать что-то, прежде чем вы поймете, хорошая это идея или плохая.
  4. У вас нет достаточного уровня трафика, чтобы нуждаться в балансировщике нагрузки.Затем ваша диаграмма сжимается до строки, если не до одной машины.
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top