decacheanosql. RobertoMarin [email protected] https://github.com/robertomarin/redis-de-cache-a-nosql https://slides.com/robertomarin/redis REDIS? REmoteDIctionaryServer Criadoem2009por SalvatoreSanfilippo OQUEOREDISNÃOÉ Somenteumkey/valuestore:Memcached Umbancodedadosrelacional:MySQL,Oracle,PostGre Umbancoorientadoadocumentos:MongoDB,CouchDB Umcache:RedisétãopersistentequandoPostGre ->RedisPersistenceDemystified ANOTÍCIA REDISMEMCACHEMEMCACHED DOCUMENTACÃO http://redis.io/documentation http://redis.io/commands http://redis.io/clients http://try.redis.io INSTALANDOOREDIS Baixeaversãoatual:http://redis.io/download Descompacte $make $maketest $makeinstall INICIANDOOREDIS $redis-serverredis.conf GETTINGSTARTED$_CONSOLE INFO GET/SET INCR/DECR CLIENTESJAVA Jedis (maismaduro,maisconhecido) Redisson (interessante,diferentesfeatures) EXEMPLOS{$CODE} Redis01.java Redis02.java CONFIGURAÇÃO redis.conf redis-1200.conf REPLICAÇÃO $SLAVEOFhostport SHARDING Oqueésharding? Quandodevousarsharding? SHARDING ConfiguraçõesdosShards IniciarosShards Exemplo: Redis03Sharding.java ISTHISREALLIFE? CEP-CÓDIGOPOSTAL BaseemMySQL CachecomRedis CepTest.java Performance?!~ CEPDAOCOMREDIS antesDeIrNoBanco() tentarecuperardoredis; senãofornulo transformaemobjeto; retornaobjeto; senão recuperadobanco; transformaemstring(json); armazenanoredis; retornaobjeto; CepRedisDaoTest.java OQUETEMDEBOM? temosumcache:) OQUETEMDERUIM? acoplamento:( umaclasseextra;@ QUEMPODERÁNOSDEFENDER? AOP aspectorientedprogramming MASOQUEÉAOPMESMO? SQL+REDIS+AOP Lembrando,estamosresolvendo: acoplamento:( umaclasseextra;@ CepAopTest.java OQUETEMDEBOM? únicocódigoparatodos:D poucoacoplamento;P OQUETEMDERUIM? pointcutnãoétãocustomizável=( eseeuquisercolocarumexpires:@ SQL+REDIS+AOP+@ANNOTATION = POWER SQL+REDIS+AOP+@ANNOTATION CepAopTest.java RedisAnnotationAspect.java OQUETEMDEBOM? únicocódigoparatodos:D poucoacoplamento;P expireseoutrasfeatures=) OQUETEMDERUIM? nãosei,maspodeficarmelhor! ESEAFONTEDEDADOSCAIR? webservice bancodedados COMOOCACHEPODENOSAJUDAR? emvezdeguardarmosapenasoobjetonoredis NÓSGUARDAMOSUMENVELOPE quetemoobjetodentro!:D SQL+REDIS+AOP+@ANNOTATION+HA RedisAnnotationHAAspect.java ÉCERTOFAZERISSO? AGORAQUEAGENTEFEZTUDOISSO... PorquenãodeixartodaabasedeCEPsnoRedis? Éconfiável? OUTRASESTRUTURASCOMREDIS HASHES LISTS SETS SORTEDSETS + = Obrigado! Dúvidas?:) RobertoMarin [email protected]