Предисловие
Студенты, которые работали в крупных программных системах, знают, что по мере того, как системы системы становятся все больше и сложнее, проблема, которая возникает с худшей производительностью системы, особенно потерей производительности, вызванной частой работой базы данных, является более серьезной. Многие BigWigs предложили много решений и разработали много структур для оптимизации потерь производительности, вызванных частыми рабочими базами данных. Среди них два особенно выдающихся сервера кеша - это мемкаххи и redis. Сегодня мы не будем говорить о Memcached и Redis. Здесь мы в основном представим соответствующее содержание интеграции Spring и Redis. Я не скажу многое ниже, давайте посмотрим на подробное введение вместе.
Метод заключается в следующем
Первый шаг - добавить код POM Redis в проект:
<depervice> <groupid> redis.clients </GroupId> <ArtifactId> jedis </artifactid> <sersive> 2.6.0 </version> </depervice>
Второй шаг состоит в том, чтобы загрузить файл конфигурации Redis в Spring: ApplicationContext-redis.xml, содержимое следующее
<bean id = "boolconfig"> <name = "maxtotal" value = "$ {redis.maxtotal}" /> < /bean> <bean> <constructor-arg index = "0" ref = "boolconfig" /> <constructor-arg index = "1"> <bean> <bean> <vinductor-Arg = "0" 0 "0" 0 "0". value = "$ {redis.node1.host}"/> <constructor-arg index = "1" value = "$ {redis.node1.port}"/> </bean> </list> </constructor-arg> </bean> </> </bean> </list> </constructor-arg> </bean> </> </bean> </list> </constructor-arg> </bean>Третий шаг - написать файл свойства, подключающийся к серверу Redis: Redis.properties
redis.maxtotal = 100redis.node1.host = 127.0.0.1redis.node1.port = 6379
Шаг 4: Напишите соответствующий класс метода работы, класс функций и класс перераспределения Redis:
Функрион класс:
Пакет xx.service;/** * Для извлечения того же кода операции * @author yeying * <p> Описание: </p> * <p> Компания: </p> * @date: 5 декабря 2017 г. в 21:02:44
Класс перераспределения:
пакет com.taotao.common.service; import org.springframework.beans.factory.annotation.autowired; import org.springframework.stereotype.service; import redis.clients.jedis.shardedjedis; импорт redis.jedis.shardiSp. *<p> Описание: </p> *<p> Компания: </p> *@date: 3 декабря 2017 г. в 14:11:47 */ @servicepublic class rediSservice {@autowired (обязательно = false) // Внедрение частного shardedjedispool shardedjedispool; private <t> t execute (function <t, shardedjedis> веселье) {shardedjedis shardedjedis = null; try {// Получить jedis sharded object из пула соединений shardedjedis = shardedjedispool.getresource (); // получить данные от Redis return Fun.callback (shardedjedis); } catch (Exception e) {e.printstackTrace (); } Наконец {if (null! = shardedjedis) {// закрыть, определить, является ли соединение действительным, поместите его обратно в пул соединений и сбросьте статус, если оно недействительное, shardedjedis.close (); }} return null; } / ** * Выполнить операцию установки * @param key * @param value * @return * / public String set (final String value, значение строки) {return this.execute (new Function <String, shardedJedis> () {@Override public String обработан (shardedjedis e) {return e.set (key, value);}}); } / ** * Выполните операцию установки и установите время выживания в секундах * @param ключ * @param value * @param seconds * @return * / public String set (окончательный ключ строки, окончательное значение строки, окончательные целые секунды) {return.execute (new Function <String, shardedJedis> () { @ @ @ @ @ @ @ @ @ @ @string string string (shardedjedis e) {string string) {string string) {string string) {string string) {string string); E.Expire (ключ, секунд); } / ** * Выполнить операцию GET * @param ключ * @return * / public String get (final String Key) {return this.execute (new Function <string, shardedjedis> () {@override public String Callback (shardedjedis e) {return e.get (key);}}); } / ** * Выполнить операцию установки * @param ключа * @return * / public long del (final String Key) {return this.execute (new Function <long, shardedjedis> () {@override public long callback (shardedjedis e) {return e.del (key);}}); } / ** * Установите время выживания за секунды * @param ключ * @param секунды * @return * / public long истекает (конечная строка, конечные целые секунды) {return this.execute (новая функция <long, shardedjedis> () {@override public long callck (shardedjedis e) {return e.expire (ключ, секунд); }}); }}Шаг 5: Запустите сервис Redis, Redis-server.exe и дважды щелкните, чтобы открыть:
Суммировать
Вышеуказанное - все содержание этой статьи. Я надеюсь, что содержание этой статьи имеет определенную справочную ценность для каждого обучения или работы. Если у вас есть какие -либо вопросы, вы можете оставить сообщение для общения. Спасибо за поддержку Wulin.com.