我需要设置一个仅提供 1x1 像素并记录所有请求的跟踪服务器。我最初考虑使用 Amazon 的 S3 或 CloudFront,但它们的成本对我来说太高了。我每天需要服务 5 亿像素,而 S3 对每 100 万个 GET 请求收取 0.4 美元,所以即使没有数据传输成本,我每月也需要 6,000 美元。我正在考虑在 EC2 实例上设置 nginx 或 lighttpd。我应该期望这两个性能如何(例如,每个大型 EC2 实例)?这个任务有更好的免费产品吗?
问问题
963 次
1 回答
4
Nginx 确实是一个很好的候选者,并且已经内置了对空 GIF 的支持(请参阅http://wiki.nginx.org/HttpEmptyGifModule)。
由于访问日志记录,磁盘 I/O 可能是此服务器的最大问题。找出不同 EC2 实例性能的唯一方法是测试它们。
如果一个 EC2 实例不能提供您需要的性能,或者如果您需要为此服务提供任何冗余,您还应该考虑使用负载均衡器(AWS Elastic Load Balancer或您自己的自定义负载均衡器)。
您还可以在不同地理区域设置多个较小的服务器,并使用基于 DNS 延迟的路由将请求路由到它们(使用基于 AWS Route 53 延迟的路由或其他 DNS 解决方案)。这将显着减少与服务器的连接时间,并将负载分布到多个数据中心。
于 2013-09-13T09:10:36.583 回答