多个Django Web服务器的负载均衡

18

我想知道是否有人曾经实现过多个Django Web服务器指向同一个数据库,通过负载均衡实现作为单个网站的功能?

您使用哪种软件进行负载均衡?

您的Django Web服务器需要进行哪些额外的设置/配置?

您需要以任何方式修改Django代码吗?

1个回答

9
在Amazon EC2设置中,我发现AWS的弹性负载均衡器非常酷(除了每个ELB实例仅支持单个IP地址之外)。
前端Django框只需要更改其数据库设置以指向一个单独的数据库(即给定数据库框的IP,该IP在我们的EC2生态系统中是内部IP),一旦数据库框被设置为侦听该IP和适当的端口,我们就准备好了。

2
你如何存储会话数据? - theycallmemorty
6
使用基于数据库的会话,而不是机器特定的会话,这样无论哪个前端服务器收到请求都没有关系。 - Steve Jalim
3
你是否使用过memcached?如果是,它是在Django服务器上还是在DB机器上? - mhl666
6
我曾经使用过 memcached 在数据库服务器上占用一些内存,但是如果你正确地设置了 memcached ,你可以在任何或所有的服务器上使用一个 memcached 实例网络 -- 请参考 https://docs.djangoproject.com/en/dev/topics/cache/#memcached 中的第二个示例。 - Steve Jalim
1
如果您正在使用AWS,会话数据可以存储在DynamoDB中。https://github.com/gtaylor/django-dynamodb-sessions - nu everest

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接