503 服务器容量 Elastic Beanstalk
Posted
技术标签:
【中文标题】503 服务器容量 Elastic Beanstalk【英文标题】:503 server at capacity Elastic Beanstalk 【发布时间】:2016-11-28 01:45:24 【问题描述】:我有弹性 beanstalk 运行 Node 应用程序。 Node 应用程序将数据发送到通过 cloudformation 构建的 3 个 Mongo 服务器。一切都很好,直到我在数据库中点击了几百万个条目,突然我开始收到 503 错误。
日志从节点应用程序显示:
[MongoError: exception: socket exception [CONNECT_ERROR] for s2-rs9/XXXXXX:27027]
name: 'MongoError',
message: 'exception: socket exception [CONNECT_ERROR] for s2-rs9/XXXXXX:27027',
sharded: false,
primary: 's2-rs9',
code: 11002,
ok: 0,
errmsg: 'exception: socket exception [CONNECT_ERROR] for s2-rs9/XXXXXX:27027'
有什么想法吗?
【问题讨论】:
【参考方案1】:您需要做的就是为您的数据库启用分片,您的分片在错误消息中为假。如果查询增加,您必须启用分片以平衡增加的查询数量。
你可以用sh.enableSharding(database)
做到这一点
要查看分片命令,您可以执行sh.help()
,这将输出您的命令列表及其描述。在那里你可以找到这个 enableSharding。
另外请记住,在进行分片之前,您的 myKey 上需要有索引(否则您会收到一些关于索引的错误)。所以如果你还没有这样做 - 之前用db.collection.ensureIndex(myKey)
创建它们
【讨论】:
以上是关于503 服务器容量 Elastic Beanstalk的主要内容,如果未能解决你的问题,请参考以下文章
Elastic Beanstalk 在配置菜单中没有负载均衡器设置
AWS Elastic Beanstalk - 增加实例磁盘容量
Amazon Elastic MapReduce 中的容量调度程序