好的,我有一些关于Memcache的奇怪问题。我的缓存技术的基本思想是将PHP脚本请求的数据保存在Memcached服务器中。我和我的团队面临的主要问题是,有时保存大量数据可能会超过Memcached中项目数据大小的1MB限制。
为了进一步解释这种方法,请想象以下情况: 我们有很多数据来配置某个对象,这些数据包含很多文本和数字等。我们需要保存近200个这些对象,所以我们首先采用的方法是将所有200个对象缓存到Memcached中的一个大项目中。该项目可能会超过1MB的限制,因此我们可以采用新的方法。
我们采用的新方法是将配置对象的数据分解成较小的构建块(由于我们不在同一页上使用所有数据),然后我们将使用较小的构建块来获取我们在特定页面中使用的确切数据量。
问题如下: 当你获取更大的数据时,GET速度是否会改变?或者Memcached服务器并行处理请求数量的限制是否会妨碍第二种方法,因为我们将使用多个GET来获取配置对象的多个构建块?
我知道这是一个奇怪的问题,但对于我们正在采用的新方法至关重要,因为它将确定我们将使用的构建块的大小以及我们是否需要添加数据。
编辑1: 请注意,我们可以使用第二种方法的MULTIGET函数,因此我们不必连接到Memecached并等待每个获取的数据的响应。因此,将使用并行请求来获取多个键。
为了进一步解释这种方法,请想象以下情况: 我们有很多数据来配置某个对象,这些数据包含很多文本和数字等。我们需要保存近200个这些对象,所以我们首先采用的方法是将所有200个对象缓存到Memcached中的一个大项目中。该项目可能会超过1MB的限制,因此我们可以采用新的方法。
我们采用的新方法是将配置对象的数据分解成较小的构建块(由于我们不在同一页上使用所有数据),然后我们将使用较小的构建块来获取我们在特定页面中使用的确切数据量。
问题如下: 当你获取更大的数据时,GET速度是否会改变?或者Memcached服务器并行处理请求数量的限制是否会妨碍第二种方法,因为我们将使用多个GET来获取配置对象的多个构建块?
我知道这是一个奇怪的问题,但对于我们正在采用的新方法至关重要,因为它将确定我们将使用的构建块的大小以及我们是否需要添加数据。
编辑1: 请注意,我们可以使用第二种方法的MULTIGET函数,因此我们不必连接到Memecached并等待每个获取的数据的响应。因此,将使用并行请求来获取多个键。