Как программно определить использование отдельных пользователей приложения с использованием AWS? - PullRequest
0 голосов
/ 21 июня 2019

У меня есть приложение, построенное на нескольких сервисах AWS, которое предоставляет пользователям услуги хранения документов.

Вместо того, чтобы отслеживать использование моих пользователей в зависимости от того, как они используют мое приложение, а затем умножать их использование на стоимость каждой потребляемой ими услуги (выполняя расчет самостоятельно), мне было интересно, есть ли способ сделать это автоматически (наличие aws отслеживает моих пользователей на уровне отдельных пользователей и автоматически рассчитывает затраты на каждого пользователя)?

Например, когда пользователь использует какой-либо сервис AWS, есть ли возможность предоставить идентификатор для AWS, поэтому AWS отслеживает использование и вычисляет стоимость отдельных идентификаторов? Таким образом, было бы намного проще спросить AWS, сколько потребляют мои пользователи, и назначить им соответствующую плату.

1 Ответ

0 голосов
/ 21 июня 2019

Похоже, что вы хотите определить стоимость своих услуг, чтобы вы могли передать эти расходы своим клиентам.

Я бы порекомендовал вам пересмотреть свою ценовую стратегию. Вместо того, чтобы взимать как «стоимость плюс некоторая прибыль», сфокусируйте свои цены с учетом следующих правил:

  • Плата за вещи, которые представляют ценность для ваших клиентов (что они хотят сделать)
  • Плата за то, что вы хотите, чтобы они делали меньше (что вы не хотите, чтобы они делали)
  • Сделай все остальное бесплатным

Подумайте, как это относится к другим службам, которые взимают деньги:

  • Водоканалы: Плата за воду, но люди платят за потребление слишком много воды
  • Netflix: Плата за предоставление шоу, но дополнительная плата за использование большей пропускной способности (4K, несколько учетных записей)
  • Сотовый телефон: Плата за обслуживание, но дополнительная плата за использование большего количества данных

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

Если ваше приложение предоставляет клиенту льготы за хранение документов, то они оплатят ваши услуги. Тем не менее, вы будете нести дополнительные расходы на хранение большего количества документов, поэтому вам придется взимать дополнительную плату за использование большего объема памяти. Все остальное, по возможности, должно быть бесплатным.

Поэтому не рассчитывайте, сколько каждый пользователь будет платить за использование экземпляров Amazon EC2, пропускной способности передачи данных, доменных имен, хранилища базы данных, обслуживающего персонала, программистов, управления и вашего времени. Вместо этого сконцентрируйтесь на ценности, которую вы даете своим клиентам , и они должны быть готовы платить, если выгода превышает стоимость. Найдите элемент, который на самом деле стоит , если они чрезмерно потребляют, и взимайте за это дополнительную плату. Например, если кто-то хранит больше документов, которые занимают больше места в Amazon S3 и стоят дороже передачи данных, то взимайте с них плату за большее количество документов. Не взимайте с них плату, исходя из технических аспектов, таких как размер используемого вами экземпляра EC2.

Чтобы ответить на ваш конкретный вопрос, вы можете использовать тегирование для определения ресурсов, которые относятся к конкретному пользователю , например, объектов, хранящихся в Amazon S3. Однако вы, вероятно, обнаружите, что большинство ваших затрат составляют общие расходы (например, вы не можете разделить экземпляр EC2, на котором размещено веб-приложение или база данных, используемая всеми клиентами). Ваша база данных приложения, вероятно, уже отслеживает их использование, поэтому тегирование не обязательно даст много дополнительной информации, если конкретные пользователи не потребляют определенные ресурсы.

См .: Стратегии тегирования AWS

...