SlideShare uma empresa Scribd logo
ASPNET 5 & REDIS
ESCALE A PERFORMANCE DA SUA
APLICAÇÃO
APRESENTAÇÃO
Palestrante: José Roberto Araújo
• MCP | Palestrante | Arquiteto de Sistemas
Onde me encontrar?
• Grupos:
• @AspNet BR
• @Academia .Net para Zumbis
• @CrazyTechGuys
• @Slideshare { /jroberto.jr }
• @Facebook { /joserobertoaraujo }
• @Twitter { @jrobertofaraujo }
• @Linkedin { /joserobertoaraujo }
• @Blog { http://www.jrobertoaraujo.net }
UM POUCO DE HISTÓRIA
AspNet Cache, 2003
• HttpRequest.Context.Cache
Windows Server AppFabric, 2010
MemCached, 2003
E O QUE TEMOS AGORA?
Redis
• Criado em 2009, por Salvatore Sanfilippo!
O REDIS
• O que é ?
• Remote Dictionary Server
• In-Memory Key-Value
• Open-Source e escrito em C
• Script LUA
• Leve
• Desenvolvida em C ANSI
• Master-Slave
• Redundância de persistência
• Alto nível de estrutura de dados
• Suporta operações atômicas usando
transação
• Expiração de Chave
• Vários bibliotecas Clientes
• Onde encontro ?
• Azure
• Amazon
• Docker
• Vagrant
QUEM ESTÁ USANDO ?
Twitter
Pintrest
Airbnb
Medium.com
Udemy
Stackoverflow
Instacart
INFORMAÇÕES SÃO ARMAZENADAS :: KEY-VALUE
• Pode-se também chamar de base NoSQL
• Todos os dados são armazenados no formado Key-Value
• Os valores podem ser armazenados como: string, int, boolean, double
TIPOS DE ARMAZENAMENTO
Lists Sets HashesStrings
COMO ARMAZENAR MEUS DADOS ?
• Nenhum dado dentro do Redis é relacional, Mas... Podemos relaciona-los
• Você precisa analisar que tipo de informação precisa ser armazenada
• Procure retornar apenas o que é necessário para sua aplicação
• Quase todo GET, necessitará de um FETCH
PIPELINE ?
• Comando ‘Pipeline’
• Nâo são Transacionais
• Entrega um lote de comandos sem necessitar de respostas
• O Cliente armazena todos os comandos até sua execução
• Outra forma de reduzir a latência associada ao grande volume de comandos:
• Otimiza o throughput na rede
• Reduz a quantidade de comandos enviados pelos clientes
• Load Batch usando o LINUX
• Performance
• cat [Arquivo.txt] | redis-cli --pipe
PUB/SUB
• É um Pattern ?
• Como funciona ?
• Onde utilizo ?
TRANSACTION ?
• O que não é:
• NÃO É IGUAL ao DB Transaction
• O que é:
• Como funciona?
• Onde utilizo?
SHOW ME THE CODE
!!!
REFERÊNCIAS
• http://redis.io
• https://hub.docker.com/_/redis
• https://github.com/ServiceStack/ServiceStack.Redis
OBRIGADO !!!
Dúvidas ?
Exemplo utilizado: Github

Mais conteúdo relacionado

PDF
Plataforma Tecnológica do clicRBS
PDF
Integração do Zabbix com Grafana
PPTX
Desenvolvendo APIs seguras com ASP.NET Core, JWT, Docker e Azure Web App for ...
PDF
Tirando o coelho da cartola: integrando sistemas com RabbitMQ
PDF
1º Meetup Zabbix Meetup do Recife: Werneck Costa - UserParameters
PDF
Clusterização de Aplicações PHP
PPT
Principais Tecnologias WEB
ODP
FLISOL-Jaguaruana/CE - 2013 - Monitoramento com Software Livre - Zabbix 2.0
Plataforma Tecnológica do clicRBS
Integração do Zabbix com Grafana
Desenvolvendo APIs seguras com ASP.NET Core, JWT, Docker e Azure Web App for ...
Tirando o coelho da cartola: integrando sistemas com RabbitMQ
1º Meetup Zabbix Meetup do Recife: Werneck Costa - UserParameters
Clusterização de Aplicações PHP
Principais Tecnologias WEB
FLISOL-Jaguaruana/CE - 2013 - Monitoramento com Software Livre - Zabbix 2.0

Mais procurados (19)

PDF
Minicurso Ruby e Rails (RailsMG UNA)
PDF
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
PDF
PHP - Aula #01
PDF
PPTX
Escalabilidade com docker - ASP.NET Conference 2016
PPTX
ASP.NET Core - iMasters - Março/2016
PPTX
TDC SP 2015 - Criando aplicações ASP.NET no Mac
PPTX
Minicurso - Banco de Dados NoSQL com .Net Core
PPT
O caminho das pedras na construção de uma aplicação cloud friendly
PPTX
Monitorando Bancos Oracle - 2º ZABBIX MEETUP DO INTERIOR-SP
PPT
L'esprit de l'escalier
PPTX
Integrando sua App ao Mundo via REST/JSON
PPTX
Zabbix - Alem da Infraestrutura - Parte 2
PPTX
Clojure
PDF
Análise estática de código Python
PDF
Escalabilidade e Resiliência de Microservices em Python
PPTX
SQL Server 2017 para Desenvolvedores de Software - SQL Saturday 715
PPTX
Os Desafios do Zabbix com Alta Disponibilidade - 3º Zabbix Meetup do Interior
PPTX
Apresentacao zabbix
Minicurso Ruby e Rails (RailsMG UNA)
Filosofia Ruby e Rails (UFOP e Inforuso 2010)
PHP - Aula #01
Escalabilidade com docker - ASP.NET Conference 2016
ASP.NET Core - iMasters - Março/2016
TDC SP 2015 - Criando aplicações ASP.NET no Mac
Minicurso - Banco de Dados NoSQL com .Net Core
O caminho das pedras na construção de uma aplicação cloud friendly
Monitorando Bancos Oracle - 2º ZABBIX MEETUP DO INTERIOR-SP
L'esprit de l'escalier
Integrando sua App ao Mundo via REST/JSON
Zabbix - Alem da Infraestrutura - Parte 2
Clojure
Análise estática de código Python
Escalabilidade e Resiliência de Microservices em Python
SQL Server 2017 para Desenvolvedores de Software - SQL Saturday 715
Os Desafios do Zabbix com Alta Disponibilidade - 3º Zabbix Meetup do Interior
Apresentacao zabbix
Anúncio

Destaque (6)

PPTX
Web moderna além do Frontend com AngularJS
PPTX
Matando web forms e modernizando um grande varejista
PPTX
Arquitetura agnóstica aplicada asp net6 + nodejs e redis
PPTX
Asp net identity - De dentro das trincheiras
PPTX
DDD na prática :: Implementação tática – Entidades vs Objeto de Valor
PPTX
Serverles com Azure Functions & DocumentDB
Web moderna além do Frontend com AngularJS
Matando web forms e modernizando um grande varejista
Arquitetura agnóstica aplicada asp net6 + nodejs e redis
Asp net identity - De dentro das trincheiras
DDD na prática :: Implementação tática – Entidades vs Objeto de Valor
Serverles com Azure Functions & DocumentDB
Anúncio

Semelhante a AspNet 5 & Redis - Escalando sua performance (20)

PPTX
Conhecendo o Novo REST Framework
PPTX
Desenvolvemos para web?
PDF
Otimizacao de websites em PHP
PPTX
ASP.NET Core APIs: Performance Tips
PPTX
Introdução ao ASP .NET Web API
PPTX
Webservices em PHP e a liberdade da Web
PPTX
Ruby on Rails for beginners 2.0
PPT
Rails asservice
PDF
Introdução a Microservices com Node.JS
PPTX
PDF
Carreira de Desenvolvimento
PDF
4. Introdução ao PHP.pdf
PDF
compreensão geral para estruturar uma api
PPTX
Iniciando com Ruby on Rails - Luiz Fernando Pimenta
PPTX
Cache com redis novatec
PPTX
Cache com redis novatec
PDF
Frameworks PHP
PDF
Preparando sua arquitetura para microservicos
PDF
Desenvolvendo Sistema Cloud e Web Full-stack Developer
PDF
ClusterizaçãO De AplicaçõEs Php
Conhecendo o Novo REST Framework
Desenvolvemos para web?
Otimizacao de websites em PHP
ASP.NET Core APIs: Performance Tips
Introdução ao ASP .NET Web API
Webservices em PHP e a liberdade da Web
Ruby on Rails for beginners 2.0
Rails asservice
Introdução a Microservices com Node.JS
Carreira de Desenvolvimento
4. Introdução ao PHP.pdf
compreensão geral para estruturar uma api
Iniciando com Ruby on Rails - Luiz Fernando Pimenta
Cache com redis novatec
Cache com redis novatec
Frameworks PHP
Preparando sua arquitetura para microservicos
Desenvolvendo Sistema Cloud e Web Full-stack Developer
ClusterizaçãO De AplicaçõEs Php

Último (20)

PPTX
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
PDF
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
PPTX
Émile Durkheim slide elaborado muito bom
PPTX
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
PDF
Custos e liquidação no SAP Transportation Management, TM130 Col18
PPTX
Aula 18 - Manipulacao De Arquivos python
PPTX
Curso de Java 15 - (Uso de Servlets (Entendendo a Estrutura)).pptx
PDF
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
PDF
Processos na gestão de transportes, TM100 Col18
PDF
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
PDF
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
PDF
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
PPTX
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
PPTX
Aula sobre banco de dados com firebase db
PPTX
Curso de Java 14 - (Explicações Adicionais (Classes Abstrata e Interface)).pptx
PPTX
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
PPTX
Curso de Java 17 - (JEE (Sessões e Cookies)).pptx
PPTX
Curso de Java 12 - (JDBC, Transation, Commit e Rollback).pptx
PPTX
Curso de Java 11 - (Serializable (Serialização de Objetos)).pptx
PPTX
Curso de Java 10 - (IO Manipulação de Arquivos).pptx
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
Émile Durkheim slide elaborado muito bom
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
Custos e liquidação no SAP Transportation Management, TM130 Col18
Aula 18 - Manipulacao De Arquivos python
Curso de Java 15 - (Uso de Servlets (Entendendo a Estrutura)).pptx
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
Processos na gestão de transportes, TM100 Col18
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
Aula sobre banco de dados com firebase db
Curso de Java 14 - (Explicações Adicionais (Classes Abstrata e Interface)).pptx
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
Curso de Java 17 - (JEE (Sessões e Cookies)).pptx
Curso de Java 12 - (JDBC, Transation, Commit e Rollback).pptx
Curso de Java 11 - (Serializable (Serialização de Objetos)).pptx
Curso de Java 10 - (IO Manipulação de Arquivos).pptx

AspNet 5 & Redis - Escalando sua performance

  • 1. ASPNET 5 & REDIS ESCALE A PERFORMANCE DA SUA APLICAÇÃO
  • 2. APRESENTAÇÃO Palestrante: José Roberto Araújo • MCP | Palestrante | Arquiteto de Sistemas Onde me encontrar? • Grupos: • @AspNet BR • @Academia .Net para Zumbis • @CrazyTechGuys • @Slideshare { /jroberto.jr } • @Facebook { /joserobertoaraujo } • @Twitter { @jrobertofaraujo } • @Linkedin { /joserobertoaraujo } • @Blog { http://www.jrobertoaraujo.net }
  • 3. UM POUCO DE HISTÓRIA AspNet Cache, 2003 • HttpRequest.Context.Cache Windows Server AppFabric, 2010 MemCached, 2003
  • 4. E O QUE TEMOS AGORA? Redis • Criado em 2009, por Salvatore Sanfilippo!
  • 5. O REDIS • O que é ? • Remote Dictionary Server • In-Memory Key-Value • Open-Source e escrito em C • Script LUA • Leve • Desenvolvida em C ANSI • Master-Slave • Redundância de persistência • Alto nível de estrutura de dados • Suporta operações atômicas usando transação • Expiração de Chave • Vários bibliotecas Clientes • Onde encontro ? • Azure • Amazon • Docker • Vagrant
  • 6. QUEM ESTÁ USANDO ? Twitter Pintrest Airbnb Medium.com Udemy Stackoverflow Instacart
  • 7. INFORMAÇÕES SÃO ARMAZENADAS :: KEY-VALUE • Pode-se também chamar de base NoSQL • Todos os dados são armazenados no formado Key-Value • Os valores podem ser armazenados como: string, int, boolean, double
  • 8. TIPOS DE ARMAZENAMENTO Lists Sets HashesStrings
  • 9. COMO ARMAZENAR MEUS DADOS ? • Nenhum dado dentro do Redis é relacional, Mas... Podemos relaciona-los • Você precisa analisar que tipo de informação precisa ser armazenada • Procure retornar apenas o que é necessário para sua aplicação • Quase todo GET, necessitará de um FETCH
  • 10. PIPELINE ? • Comando ‘Pipeline’ • Nâo são Transacionais • Entrega um lote de comandos sem necessitar de respostas • O Cliente armazena todos os comandos até sua execução • Outra forma de reduzir a latência associada ao grande volume de comandos: • Otimiza o throughput na rede • Reduz a quantidade de comandos enviados pelos clientes • Load Batch usando o LINUX • Performance • cat [Arquivo.txt] | redis-cli --pipe
  • 11. PUB/SUB • É um Pattern ? • Como funciona ? • Onde utilizo ?
  • 12. TRANSACTION ? • O que não é: • NÃO É IGUAL ao DB Transaction • O que é: • Como funciona? • Onde utilizo?
  • 13. SHOW ME THE CODE !!!
  • 14. REFERÊNCIAS • http://redis.io • https://hub.docker.com/_/redis • https://github.com/ServiceStack/ServiceStack.Redis
  • 15. OBRIGADO !!! Dúvidas ? Exemplo utilizado: Github