我在 Heroku 文档中遇到了这个页面......
裸域,也称为裸域或顶级域,是通过 A 记录在 DNS 中配置的,当用于高可用性环境(如大型本地数据中心、云基础设施服务和 Heroku 等平台)时,会产生严重的可用性影响。
为了获得最大的可扩展性和弹性,应用程序应避免裸域,而应仅依赖基于子域的主机名。
这里有人说企业吗?他们警告的“可用性影响”是什么?
(我注意到http://stackoverflow.com没有问题,所以显然在这个问题上有可行的替代哲学。)
我INFO在 Heroku 日志中没有看到Django 生成的日志条目(级别为)。
这是我的配置:
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'filters': {
'require_debug_false': {
'()': 'django.utils.log.RequireDebugFalse',
},
'require_debug_true': {
'()': 'django.utils.log.RequireDebugTrue',
},
'not_development_filter': {
'()': NotDevelopmentFilter,
},
},
'handlers': {
'console':{
'level': 'INFO',
'class': 'logging.StreamHandler',
},
'null': {
'class': 'django.utils.log.NullHandler',
},
'mail_admins': {
'level': 'ERROR',
'filters': ['not_development_filter'],
'class': 'django.utils.log.AdminEmailHandler',
'include_html': True,
}
},
'loggers': {
'': {
'handlers': ['mail_admins', 'console'],
'level': 'INFO',
},
'django': {
'handlers': ['console'],
},
'django.request': {
'handlers': ['mail_admins'],
'level': 'ERROR',
'propagate': False, …Run Code Online (Sandbox Code Playgroud) 我一直在研究 Heroku 作为托管服务提供商。我对其易于部署以及根据需要扩展和缩减资源的能力特别感兴趣。
是否有与 Django 一起使用的具有这种轻松和强大功能的托管解决方案?
这是我的问题的一些背景:
我尝试的解决方案是在具有静态 IP 的单独服务器上使用 Squid 将代理请求从 Heroku 转发到外部服务。这样,外部服务总是看到代理服务器的静态 IP,而不是 Heroku 服务的动态 IP。
由于我的代理服务器不能依赖 IP 地址进行身份验证(这就是开始的问题!),它必须依赖用户名和密码。此外,用户名和密码不能以明文传输,因为如果攻击者要拦截明文,那么他们可以冒充我连接到我的代理,使用我代理的静态 IP 发出出站请求,从而逃避外部Web 服务的防火墙。
因此,Squid 代理必须只接受通过 HTTPS 的连接,而不是 HTTP。(与外部 Web 服务的连接可能是 HTTP 或 HTTPS。)
我在 CentOS 6.5.x 上运行 Squid 3.1.10,这是我squid.conf目前的情况。仅出于故障排除目的,我暂时启用了 HTTP 和 HTTPS 代理,但我只想使用 HTTPS。
#
# Recommended minimum configuration:
#
acl manager proto cache_object
acl localhost src 127.0.0.1/32 ::1
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1
# Example …Run Code Online (Sandbox Code Playgroud) 我注意到我们的节点应用程序在一天左右后内存不足。内存被每分钟左右运行一次的作业消耗掉,因为这几乎是目前唯一发生的事情。当我在我的机器上本地运行应用程序时,我可以看到应用程序也达到了内存上限,然后垃圾收集开始了。
在 heroku 上,它似乎超出了我们 1G RAM 实例的内存上限,并且 GC 没有启动。我想知道这是否是因为节点配置的内存限制比实际的 Dyno 更高。
改述:herkou 上的 node.js 内存限制是否绑定到 Dyno 内存限制?
我在使用 GoDaddy DNS 时遇到了一些问题,我想我可能会在转移到其他提供商之前与大家分享这些问题。
我有一个为用户使用子域并托管在 Heroku.com 上的应用程序。我希望通过 https 访问整个站点,但 Heroku 这样做的方式很棘手。通常 Heroku 为您提供 3 个 IP 地址,您可以为通配符子域创建 * 记录。这与 Godaddy 配合得很好。
我的问题是,Heroku 执行 SSL 的方式是,它们不是 IP 地址,而是为您提供 AmazonAws url。因此,对于“foo”的示例子域,您可以创建一个主机名为 foo 的 cname,用于查看您的 amazonaws.com 地址。我网站上的用户经常创建子域,所以我想使用通配符 CNAME。我在这里读到这是一种合法的做法(虽然不推荐)但不幸的是,如果我想要我想要的安全性,我相信我必须这样做。
有没有人能够在 GoDaddy 上创建通配符 cname?Heroku 上的其他人是否与我处于相同的情况并找到了一个很好的解决方法,可能是 Zerigo DNS 附加组件?
谢谢
我定期为客户构建MVP。我经常在 Heroku 上部署,以便他们可以查看产品是否有效并向潜在客户和投资者演示。
然后我在 heroku 上部署了一个应用程序,它就像一个魅力,如果不是为了一件小事。该应用程序需要大约 30 秒才能启动,如果没有流量,heroku 有一个令人讨厌的习惯,即杀死 dyno。我的客户现在将该应用程序用于演示目的,因此负载极低且断断续续。
我正在寻找一个最好的解决方案:
避免第一个请求花费 30 秒的最佳方法是什么?
我目前正在使用Heroku(使用 AWS)并且我的程序需要与我自己的 EC2 实例进行通信。我已经在与 Herokus 相同的区域中创建了我的 EC2 实例,但是,为了进一步降低成本,我希望能够通过我的 Heroku dyno 和同一可用区中的 EC2 实例之间的私有 IP 地址加入社区。
我知道我可以重新启动 Heroku 以在服务器和可能不同的可用区之间切换,但是,有什么方法可以确定它们是在同一个可用区还是在不同的可用区?
可能我可以编写一个程序,将 Heroku 重新启动到它在同一区域中的程度。
这是我在其他一些地方看到过的讨论,但这个问题并没有被明确说明是不可能的。
我想将顶点域指向 heroku 应用程序 ( example.comto example.herokuapp.com)
CNAME 似乎不可能,因为它们在顶级级别是不允许的(子域很好)。
ALIAS 记录似乎是一种选择,即使我不完全理解它们,或者它们是否是标准的。我们使用 AWS Route53 作为我们的 DNS 提供商,但 ALIAS 记录似乎只能用于特定的 Amazon 服务(s3 网站、负载均衡器等)
那么是否可以将顶点域指向 Heroku 应用程序?使用其他 DNS 提供商是我唯一的选择吗?
谢谢
编辑:我知道,我可以CNAMEwww.example.com来example.herokuapp.com,然后从重定向example.com到www.example.com使用别名记录,以及S3站点重定向。但我们想要的恰恰相反,我们希望浏览器显示example.com.
domain-name-system amazon-web-services heroku amazon-route53