繁体   English   中英

如何计算或估算 Azure 应用程序 (SaaS) 的每位用户成本?

[英]How to calculate or estimate cost per user on Azure Application (SaaS)?

我相信没有神奇的公式可以得出精确的数字,它可能取决于应用程序和用户的一系列不同方面。

但事情是这样的:

我正在构建一个软件,让教会可以管理他们的成员、员工和捐款。 将其视为 CRM(或任何类似的东西)。 我们还必须记住,一些教会有 200 名成员,其他教会有 6000 名成员。 有的教会一个月能收到几十笔捐款,有的教会一个月能收到几千笔捐款。

它将是托管在 Azure 上的 SaaS。 每个教会都会为一个帐户支付月费,这就是我被困的地方。 我如何知道成本以便确定最终价格?

我想知道是否有人可以分享一些有助于我估算的数据:

1) 保持这个应用程序运行的最低每月成本(比方说,对于一个教堂)。

2) 每个教堂的预计/估计成本,以便我们计算最终价格。

这是一个非常开放的问题,您可以选择您的架构来针对不同的事物(例如成本、可用性、速度)进行优化。 您需要决定是构建单租户应用程序还是多租户应用程序。 前者可能更简单,更容易按客户计量,因为每个部署实际上只有一个客户(或教堂); 但是,这最终可能会导致运行成本高昂,因为在非高峰时段您可能会有闲置的网络/工作者角色。 多租户应用程序可让您获得更好的整体计算利用率,但您需要对每个租户进行计量的方法。 即使使用多租户应用程序,如果需要,您仍然可以使用单租户数据库。

您可能需要考虑基于某些操作单位(或每个教堂的某些用户数量)的分层定价模型。 为了帮助计量,您可以:

  • 查看存储分析(这提供了访问的 blob/表/队列的详细日志记录,包括访问的确切资源,在什么时间)。
  • 创建自定义性能计数器并使用 Windows Azure 诊断发出这些计数器
  • 查看 Windows Azure SQL Consumption( 包括动态管理视图

对于基线成本:考虑几件事:

  • 对于 SLA 和一般正常运行时间可靠性,您至少需要 2 个实例
  • 始终使用您可以操作的最小实例大小,并随着负载的增加扩展到更多实例
  • 假设您正在针对成本进行优化,因此您在 Web 角色实例中运行所有后台/队列处理/调度等,而没有任何辅助角色实例
  • 对于此练习,假设多租户计算和单租户数据库(网络版,每个租户平均 < 100MB)。 这导致每个租户每月在数据库上花费 5 美元。
  • 假设有 5 个教堂。 假设最少有 2 个 Small 实例,并假设它在一天中突增到 4 个实例 12 小时。 这是 3 个实例的平均运行率,或每月 260 美元。
  • 假设某些带宽费用为每月 10 美元。
  • 假设队列、blob、诊断的一些存储费用为每月 25 美元。

有了上面的假设(完全编造给你一个稻草人开始):

  • DB:5 美元 x 5 个租户:每月 25 美元。
  • 计算:每月 260 美元
  • 带宽:每月 10 美元
  • 存储:每月 25 美元
  • 大概总计:每月 300-400 美元。

现在:这完全是虚构的,我不知道您的应用程序将存储/生成多少数据或带宽。 但希望这能让您大致了解如何开始预测成本。 请注意,我没有在估算中包括存储交易。 我认为那只是背景噪音。

  1. 运行一台服务器(/数据库/无论你在测量什么)。
  2. 生成负载,直到一台服务器不再足够为止。
  3. 推断。

由于我的回应是简洁的步骤,因此还有另一件事需要考虑。 如何确定您的价格:

  1. 确定你的成本。
  2. 确定您的客户将支付多少费用。
  3. 介于两者之间充电。

请注意,#1可能真的无关紧要。 假设成本是

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM