在kubernetes中使用redis作为sidecar的优缺点是什么?在每个app pod中添加redis容器时是否有可能有持久性缓存?这会影响缓存的可用性和可伸缩性吗?
bjg7j2ky1#
我很难想象把redis作为一个侧车来运行有什么好处。我总是将它作为单独的部署(如果启用了持久性,则为有状态集)和单独的服务来运行。如果redis在自己的pod中,那么:如果应用程序有多个副本,它们将共享相同的redis当您重新部署应用程序时,它不会同时终止和重新启动redis如果为redis启用了持久性,则不需要为应用程序pod配置持久性存储考虑到redis的整体功能(主要是内存存储,有限的数据类型支持),在应用程序中简单地将这些缓存数据存储在单例对象中,或多或少相当于将redis作为一个侧车运行(每个pod有一个缓存数据副本,删除pod时数据会丢失)。
1条答案
按热度按时间bjg7j2ky1#
我很难想象把redis作为一个侧车来运行有什么好处。我总是将它作为单独的部署(如果启用了持久性,则为有状态集)和单独的服务来运行。
如果redis在自己的pod中,那么:
如果应用程序有多个副本,它们将共享相同的redis
当您重新部署应用程序时,它不会同时终止和重新启动redis
如果为redis启用了持久性,则不需要为应用程序pod配置持久性存储
考虑到redis的整体功能(主要是内存存储,有限的数据类型支持),在应用程序中简单地将这些缓存数据存储在单例对象中,或多或少相当于将redis作为一个侧车运行(每个pod有一个缓存数据副本,删除pod时数据会丢失)。