Мое веб-приложение использует CodeIgniter 3.1.10 в качестве фреймворка и php 7.1 , и я хочу попробовать memcached , потому что я планирую использовать loadbalancer и несколько веб-серверов.
Я установил конфигурацию сеанса в config.php следующим образом:
$config['sess_driver'] = 'memcached';
$config['sess_save_path'] = 'localhost:11211?timeout=10&read_timeout=10&persistent=1';
До сих пор я былудалось настроить сервер memcached и иметь возможность хранить сеансы, но не очень согласован .Иногда он возвращает ошибку, подобную этой:
session_start(): Failed to read session data: user (path: localhost:11211)
Особенно на одной странице, где одновременно вызывается несколько ajax.Довольно часто один или два ajax возвращают ошибку, как указано выше.Но когда я устанавливаю с помощью файлов сеанс , ajax работает нормально (никогда не возвращает ошибку сеанса).
Ниже приведена конфигурация memcached на php.ini
memcached.compression_factor 1.3 1.3
memcached.compression_threshold 2000 2000
memcached.compression_type fastlz fastlz
memcached.default_binary_protocol 0 0
memcached.default_connect_timeout 0 0
memcached.default_consistent_hash 0 0
memcached.serializer php php
memcached.sess_binary_protocol 1 1
memcached.sess_connect_timeout 0 0
memcached.sess_consistent_hash 1 1
memcached.sess_lock_expire 0 0
memcached.sess_lock_max_wait not set not set
memcached.sess_lock_retries 5 5
memcached.sess_lock_wait not set not set
memcached.sess_lock_wait_max 2000 2000
memcached.sess_lock_wait_min 1000 1000
memcached.sess_locking 1 1
memcached.sess_number_of_replicas 0 0
memcached.sess_persistent 0 0
memcached.sess_prefix memc.sess. memc.sess.
memcached.sess_randomize_replica_read 0 0
memcached.sess_remove_failed_servers 0 0
memcached.sess_sasl_password no value no value
memcached.sess_sasl_username no value no value
memcached.sess_server_failure_limit 0 0
memcached.store_retry_count 2 2
Кто-нибудь имеет подобный опыт или знает выход?Заранее спасибо