Необходимо проверить, достаточно ли малы отсортированные наборы для их сериализации в Redis или нет. Например, «объект отладки» может быть применен к образцу отсортированных наборов, чтобы проверить, закодированы ли они как ziplist или нет.
использование памяти ziplist для обмена с ЦП, особенно когда размер отсортированного набора близок к порогу (zset-max-ziplist-records, zset-max-ziplist-value, в файле конфигурации).
Предположим, что отсортированные наборы не закодированы в ziplist, я бы сказал, что загрузка процессора, скорее всего, связана с тысячами операций чтения в секунду, а не с сотнями обновлений в секунду. Обновление zset является операцией log (n). Это очень быстро, и у Redis нет задержки, связанной с блокировкой. Чтение элементов zset является операцией O (n) и может привести к созданию большого буфера и его возврату клиенту.
Чтобы быть уверенным, вы можете сгенерировать трафик только для чтения, проверить процессор, затем остановить его, сгенерировать трафик обновления, снова проверить процессор и сравнить.
Производительность операций чтения zset должна быть близка к производительности LRANGE, которую вы можете найти в тесте Redis . Кажется, что несколько тысяч TPS для zsets с тысячами элементов соответствуют типичной производительности Redis.