SlideShare uma empresa Scribd logo
1 de 20
2012

Arquitetura de Serviços com
   jQuery e JSon via WCF
         Case: Smartip
Sobre nós
 Fabrício Doi                  José Otávio Quaglio
   Mestre pela POLI-USP          MBA em Gestão de Projetos pela
   Arquiteto na Cast              FGV
   Responsável técnico pela      Arquiteto na Cast
    Smartip                       Twitter: @jquaglio
   Twitter: @frenezabr           Blog: http://jquaglio.blogspot.com




                                           #SouDev
Agenda
 O que é a Smartip?
 Histórico e Complicações
 Problemas Enfrentados
 Ganhos na Solução Atual
 Futuro
O que é a Smartip?


             Vídeo
Histórico

                                                       Evolução
                                           Ação (10)   (11)

                            Revisão (09)

               Competição
               (08)

       Idéia
       (07)
Histórico
                                                Evolução
                                    Ação (10)   (11)

                     Revisão (09)

        Competição
        (08)
                       2007 – Idéia: algoritmo de recomendação a
Idéia
(07)                      partir de comparação de perfis
                             Uso inicial: nova rede social!
                             Tecnologia: ASP.NET WebForms com ASP.NET
                                Ajax Control Toolkit e SQL Server 2005
Histórico
                                                             Controles acessando o SQL Server 2005
                                                           e trazendo informações de recomendações
                                                Evolução
                                    Ação (10)   (11)

                     Revisão (09)

        Competição
        (08)

Idéia
(07)
                                                                ............   .............................
                                                                ............   .............................
                                                                ............   .............................
                       Ajax Control Toolkit                                    .............................
                                                                ............   .............................
                                                                ............   .............................
                                                                ............   .............................
Histórico
                                                     Evolução (11)
                                         Ação (10)

                          Revisão (09)


             Competição
             (08)
                            2008 – Oportunidade: Netflix Contest
Idéia (07)

                               Prêmio para o melhor algoritmo (base de 20 k
                                usuários e 100 mil avaliações)
                               Abandono da idéia do site como rede social
                               Tecnologia: Foco no algoritmo e migração para
                                o banco de dados SQL Server 2008
Histórico
                                               Evolução
                                   Ação (10)   (11)

                     Revisão
                     (09)
        Competição
        (08)
                       2009 – Repensar na atividade
Ideia
(07)                      MBA FIA
                                   Todos os trabalhos baseados na Smartip
                            3º Lugar no Empreenda
                            Revisão do algorítmo
                            Oferecer como serviço / integrar com redes
                             sociais
                            Tecnologia: WCF e MySQL
Histórico
                                           Evolução
                               Ação (10)   (11)

                     Revisão
                     (09)
        Competição
        (08)
                       2009
Ideia
(07)
                          Serviço WCF acessando redes sociais
                           (Facebook)
                          Migração do SQL Server 2008 para MySQL
Histórico
                                           Evolução
                               Ação (10)   (11)

                     Revisão
                     (09)
        Competição
        (08)
                                                                        seuze.com.br
Ideia
(07)
                                                         ............     .............................
                                                         ............     .............................
                                                         ............     .............................
                                   WCF            SOAP                    .............................
                                                         ............     .............................
                                                         ............     .............................
                                                         ............     .............................
                                MySQL
Histórico
                                                Evolução
                                    Ação (10)   (11)

                     Revisão (09)

        Competição
        (08)
                       2010 – Busca de clientes
Ideia
(07)
                          Divulgação do serviço
                          ObaOba!
                          Tecnologia: WCF e SQL no Azure (em menos
                           de 10 dias)
Histórico
                                                Evolução
                                    Ação (10)   (11)

                     Revisão (09)

        Competição
        (08)
                                                                                 seuze.com.br
Ideia
(07)
                                                                  ............     .............................
                                                                  ............     .............................
                                                                  ............     .............................
                                    WCF                    SOAP                    .............................
                                                                  ............     .............................
               SQL                                                ............     .............................
                                                                  ............     .............................
Histórico
                                                Evolução
                                    Ação (10)   (11)

                     Revisão (09)

        Competição
        (08)
                       2011 – Evolução para estágio atual
Ideia
(07)
                          Simplificação de Implantação
                          Criação do Plugin Smartip
                          Tecnologia: JavaScript (Acessando WCF via
                           JQuery, trafegando JSON)
Histórico

      WCF        SQL



                                         seuze.com.br
      JSON                ............     .............................
                          ............     .............................
                          ............     .............................
   API Smartip     JSON                    .............................
                          ............     .............................
                          ............     .............................
                          ............     .............................
Histórico


                   API Smartip
      WCF   JSON
                     jQuery



      SQL
Problemas Enfrentados
 Tráfego de Informações
    Problema: Alto volume de informações tráfegando no HTTP
    Solução: Alteração do serviço para trafegar JSON ao invés de
     SOAP.
 Limitação do Browser
    Problema: Consumo de serviços através de domínios
     diferentes
    Solução: Utilização de JSONP (JSON with padding)
 Segurança
    Problema: Ficou comprometida por ser totalmente client
    Solução: Utilização de chave única para autorizar o uso do
     serviço
Ganhos na Solução Atual
 Solução simples
 Tempo de implantação
 Multi-plataforma
 Desempenho
    Evitar onerar desempenho dos clientes
    Melhoria de desempenho no próprio WCF
 Custo
Futuro
 Melhoria na Segurança
 Migração para NoSQL (Azure Table e Azure Blob)
 Criação de exemplos para integração com outras redes
 sociais (wiki)
   http://smartip.wikispaces.com
Obrigado!!!
   Dúvidas???

  Fabrício Doi
  @frenezabr


               José Otávio Quaglio
               @jquaglio
               http://jquaglio.blogspot.com

Mais conteúdo relacionado

Destaque

Proceso estadístico
Proceso estadísticoProceso estadístico
Proceso estadísticoEDYAC
 
Portfolio 1 Birthe Mygenfordt
Portfolio 1 Birthe MygenfordtPortfolio 1 Birthe Mygenfordt
Portfolio 1 Birthe MygenfordtBirthe Mygenfordt
 
Gdz istoriya ukraini_dovidnuk
Gdz istoriya ukraini_dovidnukGdz istoriya ukraini_dovidnuk
Gdz istoriya ukraini_dovidnukLucky Alex
 
SALUDOS POR EL DÍA NACIONAL DEL OBSTETRA EN TUMBES
SALUDOS POR EL DÍA NACIONAL DEL OBSTETRA EN TUMBESSALUDOS POR EL DÍA NACIONAL DEL OBSTETRA EN TUMBES
SALUDOS POR EL DÍA NACIONAL DEL OBSTETRA EN TUMBESfelicianovictorgutarracerron
 
Social Selling - Offering Value on Social Media
Social Selling - Offering Value on Social Media Social Selling - Offering Value on Social Media
Social Selling - Offering Value on Social Media Lucy Hall
 

Destaque (8)

Curso de PHP 5.3
Curso de PHP 5.3Curso de PHP 5.3
Curso de PHP 5.3
 
Proceso estadístico
Proceso estadísticoProceso estadístico
Proceso estadístico
 
Sermon da padre alemon 1
Sermon da padre alemon 1Sermon da padre alemon 1
Sermon da padre alemon 1
 
Portfolio 1 Birthe Mygenfordt
Portfolio 1 Birthe MygenfordtPortfolio 1 Birthe Mygenfordt
Portfolio 1 Birthe Mygenfordt
 
Gdz istoriya ukraini_dovidnuk
Gdz istoriya ukraini_dovidnukGdz istoriya ukraini_dovidnuk
Gdz istoriya ukraini_dovidnuk
 
SALUDOS POR EL DÍA NACIONAL DEL OBSTETRA EN TUMBES
SALUDOS POR EL DÍA NACIONAL DEL OBSTETRA EN TUMBESSALUDOS POR EL DÍA NACIONAL DEL OBSTETRA EN TUMBES
SALUDOS POR EL DÍA NACIONAL DEL OBSTETRA EN TUMBES
 
Social Selling - Offering Value on Social Media
Social Selling - Offering Value on Social Media Social Selling - Offering Value on Social Media
Social Selling - Offering Value on Social Media
 
Hipertensi¢n arterial
Hipertensi¢n arterialHipertensi¢n arterial
Hipertensi¢n arterial
 

Semelhante a Arquitetura de Serviços com jQuery e JSON via WCF

Agenda Versão Final - CMG 14a. conferencia nacional
Agenda Versão Final - CMG 14a. conferencia nacionalAgenda Versão Final - CMG 14a. conferencia nacional
Agenda Versão Final - CMG 14a. conferencia nacionalJoao Galdino Mello de Souza
 
Agenda atualizada - 14TH CMG BRASIL PERFORMANCE AND CAPACITY PLANNING CONFERENCE
Agenda atualizada - 14TH CMG BRASIL PERFORMANCE AND CAPACITY PLANNING CONFERENCEAgenda atualizada - 14TH CMG BRASIL PERFORMANCE AND CAPACITY PLANNING CONFERENCE
Agenda atualizada - 14TH CMG BRASIL PERFORMANCE AND CAPACITY PLANNING CONFERENCEJoao Galdino Mello de Souza
 
Desenvolvimento Moderno de aplicativos Android
Desenvolvimento Moderno de aplicativos AndroidDesenvolvimento Moderno de aplicativos Android
Desenvolvimento Moderno de aplicativos AndroidNelson Glauber Leal
 
Service Mesh de microserviços com Istio e Envoy
Service Mesh de microserviços com Istio e EnvoyService Mesh de microserviços com Istio e Envoy
Service Mesh de microserviços com Istio e EnvoyVinícius de Paula
 
Introdução a data warehouse e olap
Introdução a data warehouse e olapIntrodução a data warehouse e olap
Introdução a data warehouse e olapFlavia Martins Bispo
 
Introdução a data warehouse e olap
Introdução a data warehouse e olapIntrodução a data warehouse e olap
Introdução a data warehouse e olapFernando Palma
 
Construindo APIs REST escaláveis com Docker, Kubernetes e o Microsoft Azure -...
Construindo APIs REST escaláveis com Docker, Kubernetes e o Microsoft Azure -...Construindo APIs REST escaláveis com Docker, Kubernetes e o Microsoft Azure -...
Construindo APIs REST escaláveis com Docker, Kubernetes e o Microsoft Azure -...Renato Groff
 
Agenda atualizada - 14TH CMG BRASIL PERFORMANCE AND CAPACITY PLANNING CONFERENCE
Agenda atualizada - 14TH CMG BRASIL PERFORMANCE AND CAPACITY PLANNING CONFERENCEAgenda atualizada - 14TH CMG BRASIL PERFORMANCE AND CAPACITY PLANNING CONFERENCE
Agenda atualizada - 14TH CMG BRASIL PERFORMANCE AND CAPACITY PLANNING CONFERENCEJoao Galdino Mello de Souza
 
Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT
Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINTConstruindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT
Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINTIg Bittencourt
 
Website Fixie - Metodologia Projeto E
Website Fixie - Metodologia Projeto EWebsite Fixie - Metodologia Projeto E
Website Fixie - Metodologia Projeto EIsabela Loepert
 
Palestra de Silverlight no DevBrasil Summit 11
Palestra de Silverlight no DevBrasil Summit 11Palestra de Silverlight no DevBrasil Summit 11
Palestra de Silverlight no DevBrasil Summit 11Anderson Sa
 
Escalando e otimizando sistemas legados
Escalando e otimizando sistemas legadosEscalando e otimizando sistemas legados
Escalando e otimizando sistemas legadosNelson Haraguchi
 
Convivendo e migrando para microservices
Convivendo e migrando para microservicesConvivendo e migrando para microservices
Convivendo e migrando para microservicesDanilo Iurovski
 

Semelhante a Arquitetura de Serviços com jQuery e JSON via WCF (14)

Agenda Versão Final - CMG 14a. conferencia nacional
Agenda Versão Final - CMG 14a. conferencia nacionalAgenda Versão Final - CMG 14a. conferencia nacional
Agenda Versão Final - CMG 14a. conferencia nacional
 
Agenda atualizada - 14TH CMG BRASIL PERFORMANCE AND CAPACITY PLANNING CONFERENCE
Agenda atualizada - 14TH CMG BRASIL PERFORMANCE AND CAPACITY PLANNING CONFERENCEAgenda atualizada - 14TH CMG BRASIL PERFORMANCE AND CAPACITY PLANNING CONFERENCE
Agenda atualizada - 14TH CMG BRASIL PERFORMANCE AND CAPACITY PLANNING CONFERENCE
 
Desenvolvimento Moderno de aplicativos Android
Desenvolvimento Moderno de aplicativos AndroidDesenvolvimento Moderno de aplicativos Android
Desenvolvimento Moderno de aplicativos Android
 
Service Mesh de microserviços com Istio e Envoy
Service Mesh de microserviços com Istio e EnvoyService Mesh de microserviços com Istio e Envoy
Service Mesh de microserviços com Istio e Envoy
 
Introdução a data warehouse e olap
Introdução a data warehouse e olapIntrodução a data warehouse e olap
Introdução a data warehouse e olap
 
Introdução a data warehouse e olap
Introdução a data warehouse e olapIntrodução a data warehouse e olap
Introdução a data warehouse e olap
 
Construindo APIs REST escaláveis com Docker, Kubernetes e o Microsoft Azure -...
Construindo APIs REST escaláveis com Docker, Kubernetes e o Microsoft Azure -...Construindo APIs REST escaláveis com Docker, Kubernetes e o Microsoft Azure -...
Construindo APIs REST escaláveis com Docker, Kubernetes e o Microsoft Azure -...
 
Agenda atualizada - 14TH CMG BRASIL PERFORMANCE AND CAPACITY PLANNING CONFERENCE
Agenda atualizada - 14TH CMG BRASIL PERFORMANCE AND CAPACITY PLANNING CONFERENCEAgenda atualizada - 14TH CMG BRASIL PERFORMANCE AND CAPACITY PLANNING CONFERENCE
Agenda atualizada - 14TH CMG BRASIL PERFORMANCE AND CAPACITY PLANNING CONFERENCE
 
Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT
Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINTConstruindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT
Construindo Aplicações Semânticas com Desenvolvimento Ágil: Plataforma JOINT
 
Website Fixie - Metodologia Projeto E
Website Fixie - Metodologia Projeto EWebsite Fixie - Metodologia Projeto E
Website Fixie - Metodologia Projeto E
 
Palestra de Silverlight no DevBrasil Summit 11
Palestra de Silverlight no DevBrasil Summit 11Palestra de Silverlight no DevBrasil Summit 11
Palestra de Silverlight no DevBrasil Summit 11
 
Escalando e otimizando sistemas legados
Escalando e otimizando sistemas legadosEscalando e otimizando sistemas legados
Escalando e otimizando sistemas legados
 
Campus partybrasil2011 v2
Campus partybrasil2011 v2Campus partybrasil2011 v2
Campus partybrasil2011 v2
 
Convivendo e migrando para microservices
Convivendo e migrando para microservicesConvivendo e migrando para microservices
Convivendo e migrando para microservices
 

Arquitetura de Serviços com jQuery e JSON via WCF

  • 1. 2012 Arquitetura de Serviços com jQuery e JSon via WCF Case: Smartip
  • 2. Sobre nós  Fabrício Doi  José Otávio Quaglio  Mestre pela POLI-USP  MBA em Gestão de Projetos pela  Arquiteto na Cast FGV  Responsável técnico pela  Arquiteto na Cast Smartip  Twitter: @jquaglio  Twitter: @frenezabr  Blog: http://jquaglio.blogspot.com #SouDev
  • 3. Agenda  O que é a Smartip?  Histórico e Complicações  Problemas Enfrentados  Ganhos na Solução Atual  Futuro
  • 4. O que é a Smartip? Vídeo
  • 5. Histórico Evolução Ação (10) (11) Revisão (09) Competição (08) Idéia (07)
  • 6. Histórico Evolução Ação (10) (11) Revisão (09) Competição (08)  2007 – Idéia: algoritmo de recomendação a Idéia (07) partir de comparação de perfis  Uso inicial: nova rede social!  Tecnologia: ASP.NET WebForms com ASP.NET Ajax Control Toolkit e SQL Server 2005
  • 7. Histórico Controles acessando o SQL Server 2005 e trazendo informações de recomendações Evolução Ação (10) (11) Revisão (09) Competição (08) Idéia (07) ............ ............................. ............ ............................. ............ ............................. Ajax Control Toolkit ............................. ............ ............................. ............ ............................. ............ .............................
  • 8. Histórico Evolução (11) Ação (10) Revisão (09) Competição (08)  2008 – Oportunidade: Netflix Contest Idéia (07)  Prêmio para o melhor algoritmo (base de 20 k usuários e 100 mil avaliações)  Abandono da idéia do site como rede social  Tecnologia: Foco no algoritmo e migração para o banco de dados SQL Server 2008
  • 9. Histórico Evolução Ação (10) (11) Revisão (09) Competição (08)  2009 – Repensar na atividade Ideia (07)  MBA FIA  Todos os trabalhos baseados na Smartip  3º Lugar no Empreenda  Revisão do algorítmo  Oferecer como serviço / integrar com redes sociais  Tecnologia: WCF e MySQL
  • 10. Histórico Evolução Ação (10) (11) Revisão (09) Competição (08)  2009 Ideia (07)  Serviço WCF acessando redes sociais (Facebook)  Migração do SQL Server 2008 para MySQL
  • 11. Histórico Evolução Ação (10) (11) Revisão (09) Competição (08) seuze.com.br Ideia (07) ............ ............................. ............ ............................. ............ ............................. WCF SOAP ............................. ............ ............................. ............ ............................. ............ ............................. MySQL
  • 12. Histórico Evolução Ação (10) (11) Revisão (09) Competição (08)  2010 – Busca de clientes Ideia (07)  Divulgação do serviço  ObaOba!  Tecnologia: WCF e SQL no Azure (em menos de 10 dias)
  • 13. Histórico Evolução Ação (10) (11) Revisão (09) Competição (08) seuze.com.br Ideia (07) ............ ............................. ............ ............................. ............ ............................. WCF SOAP ............................. ............ ............................. SQL ............ ............................. ............ .............................
  • 14. Histórico Evolução Ação (10) (11) Revisão (09) Competição (08)  2011 – Evolução para estágio atual Ideia (07)  Simplificação de Implantação  Criação do Plugin Smartip  Tecnologia: JavaScript (Acessando WCF via JQuery, trafegando JSON)
  • 15. Histórico WCF SQL seuze.com.br JSON ............ ............................. ............ ............................. ............ ............................. API Smartip JSON ............................. ............ ............................. ............ ............................. ............ .............................
  • 16. Histórico API Smartip WCF JSON jQuery SQL
  • 17. Problemas Enfrentados  Tráfego de Informações  Problema: Alto volume de informações tráfegando no HTTP  Solução: Alteração do serviço para trafegar JSON ao invés de SOAP.  Limitação do Browser  Problema: Consumo de serviços através de domínios diferentes  Solução: Utilização de JSONP (JSON with padding)  Segurança  Problema: Ficou comprometida por ser totalmente client  Solução: Utilização de chave única para autorizar o uso do serviço
  • 18. Ganhos na Solução Atual  Solução simples  Tempo de implantação  Multi-plataforma  Desempenho  Evitar onerar desempenho dos clientes  Melhoria de desempenho no próprio WCF  Custo
  • 19. Futuro  Melhoria na Segurança  Migração para NoSQL (Azure Table e Azure Blob)  Criação de exemplos para integração com outras redes sociais (wiki)  http://smartip.wikispaces.com
  • 20. Obrigado!!! Dúvidas??? Fabrício Doi @frenezabr José Otávio Quaglio @jquaglio http://jquaglio.blogspot.com