• Nenhum resultado encontrado

Computação na Nuvem em aplicações móveis Arthur Casals Vinícius Nascimento Silva

N/A
N/A
Protected

Academic year: 2022

Share "Computação na Nuvem em aplicações móveis Arthur Casals Vinícius Nascimento Silva"

Copied!
25
0
0

Texto

(1)

Computação na Nuvem em aplicações móveis

Arthur Casals

Vinícius Nascimento Silva

(2)

Conceito

“[...] uma infraestrutura na qual tanto a armazenagem quanto o processamento de dados ocorre fora do dispositivo móvel” (MCC forum)

● Computação nas Nuvens

● Computação Móvel

● Redes sem fio

● Portabilidade

● Elástico

● “Pague o que usar”

● SaaS

(3)

Conceito

(4)

Vantagens

● Agiliza o desenvolvimento

● Necessita de menos recursos locais (bateria)

● Aumenta capacidade de armazenamento e processamento

● Suporte para diversas plataformas

● Arquitetura Focada em APIs

● Melhora a confiabilidade de informação

● Recursos compartilhados e integrados entre sistemas

(5)

Arquiteturas

MDICC - Mobile Distant Immobile Cloud Computing

Nuvem mais poderosa (escalabilidade e elasticidade)

Maior latência

(6)

Arquiteturas

MPICC - Mobile Proximate Immobile Cloud Computing

Nuvem de computadores públicos (Cafeterias, Shoppings ...)

Nuvem de poder moderado

Possíveis problemas de privacidade e segurança

Menor latência

(7)

Arquiteturas

MPMCC - Mobile Proximate Mobile Cloud Computing

Nuvem de aparelhos móveis próximos (Celulares, Tablets...)

Nuvem de poder limitado

Ponto-a-ponto ou cliente-servidor

Possíveis problemas de privacidade e segurança

Maior complexidade topológica

Latência negligenciável

(8)

Arquiteturas

HMCC - Hybrid Mobile Cloud Computing

Integração entre MDICC, MPICC e MPMCC

Recursos apropriados para cada tarefa

Maior complexidade de escalonamento

(9)

Modelos padrões de aplicações móveis

● Tecnologia Nativa

Fácil interação com recursos do aparelho

Possibilidade de otimização para o hardware

Independente de disponibilidade de internet

Sem portabilidade

Código fonte complexo

Tempo maior para lançamento no mercado

Necessita equipe treinada na linguagem nativa

(10)

Modelos padrões de aplicações móveis

● Tecnologia Web

Multi-plataforma

Acessível de qualquer lugar

Apenas conhecimento de programação web

Latência

Acesso limitado aos recursos do aparelho

Dificuldade de manter sessões de longo período

(11)

Novos modelos de aplicações móveis

● Augmented Execution

Executar tarefas em uma réplica virtual do aparelho na nuvem

● Elastic Partitioned/Modularized Applications

Executar parte da aplicação da nuvem e parte no cliente, de forma dinâmica

AlfredO, MAUI, Weblets

● Application Mobility

Transportar processos de entre aparelhos

● Ad-hoc Mobile Clouds

Executar tarefas em aparelhos móveis próximos

(12)

Segurança (problemas)

● Confidencialidade

● Privacidade

Multi-tenancy

● Reusabilidade de objetos

● Remanescência de dados

● Integridade

● Autorização

● Disponibilidade

(13)

Segurança (soluções)

● Criptografia e esteganografia

Trusted Third-Party

● Criptografia Incremental

● Re-encriptação por proxy e criptografia baseada em identidade

● Autenticação via Certificados Digitais

Watermarking

Security Service Admission Model (SSAM)

(14)

Integração com IoT (CloudIoT)

Motivação: complementaridade

(15)

Integração com IoT (CloudIoT)

● Comunicação: conexão, processamento e acompanhamento em cloud + automação e coleta de dados em IoT

● Armazenagem de informação

● Poder computacional

Things as a Service: agregação e abstração de recursos heterogêneos a partir de semânticas específicas

XaaS: Sensing, Actuating, Data, Identity, Video Surveillance...

(16)

Integração com IoT (CloudIoT)

(17)

Integração com IoT (CloudIoT)

(18)

Open Challenges

● Arquitetura para ambientes heterogêneos

“The Open Cloud Computing Interface comprises a set of open community-lead specifications delivered through the Open Grid Forum. OCCI is a Protocol and API for all kinds of

Management tasks [...] with a strong focus on integration, portability, interoperability, and innovation while still offering a high degree of extensibility.” (http://occi-wg.org/)

(19)

Open Challenges

● Particionamento estático de processamento

(20)

Open Challenges

Edge computing

(21)

Open Challenges

● Arquitetura para ambientes heterogêneos

● Particionamento estático de processamento

Edge computing

● Redução de custo energético envolvido na transmissão de dados

● Sensibilidade a contexto

● Congestionamento de dados

● Confiança, segurança e privacidade

...mas...

(22)

Open Challenges

A tecnologia existente é marginalmente utilizada! Como utilizar o que já existe para, de fato, termos integração entre computação nas nuvens e aplicações móveis?

● Escolha de abordagem: aplicações nativas vs aplicações web

Aplicações nativas utilizam melhor os recursos dos aparelhos, mas requerem implementações individuais (muito mais trabalho e manutenção)

Aplicações web aproveitam melhor recursos disponíveis em nuvem, mas são mais difíceis de se adaptar para uso offline (depende de como o aparelho se comporta)

Solução híbrida, talvez?

Falta um “killer app” que utilize propriamente as tecnologias existentes

(23)

Open Challenges

Uma abordagem possível: progressive web apps

(https://developers.google.com/web/progressive-web-apps/)

Web apps em direção a aplicações nativas

● Funciona em diferentes condições de rede

● Responsividade por construção

● Otimizada para conversão (== mais incentivos para adoção)

● Cache + push notifications (funciona como um app nativo)

● Login sincronizado entre dispositivos

● Funciona com Web Bluetooth (web + IoT) e sensores do disposiivo

(24)

Referências

Murugesan, S. and Bojanova, I., 2016. Encyclopedia of Cloud Computing.

John Wiley & Sons.

Yadav, D.S. and Doke, K., 2016. Mobile Cloud Computing Issues and Solution Framework.

Botta, A., De Donato, W., Persico, V. and Pescapé, A., 2016. Integration of cloud computing and internet of things: a survey. Future Generation Computer Systems, 56, pp.684-700.

Umair, S., Muneer, U., Zahoor, M.N. and Malik, A.W., 2016. Mobile Cloud Computing Future Trends and Opportunities. In Managing and Processing Big Data in Cloud Computing (pp. 105-120). IGI Global.

(25)

Referências

● Hu, W., Gao, Y., Ha, K., Wang, J., Amos, B., Chen, Z., Pillai, P. and

Satyanarayanan, M., 2016, August. Quantifying the impact of edge computing on mobile applications. In Proceedings of the 7th ACM SIGOPS Asia-Pacific Workshop on Systems (p. 5). ACM.

Othman, M., Madani, S.A. and Khan, S.U., 2014. A survey of mobile cloud computing application models. IEEE Communications Surveys & Tutorials, 16(1), pp.393-413.

Othman, M., Xia, F. and Khan, A.N., 2015. Context-aware mobile cloud computing and its challenges. IEEE Cloud Computing, 2(3), pp.42-49.

Referências

Documentos relacionados

Tendo a camada de aplicação como contexto, a atividade de escalonamento envolve aplicações de usuário, tarefas, e workflows buscando otimizar eficiência do uso dos recursos

Com os serviços de computação em nuvem sendo cada vez mais sendo utilizados para o processamento de dados confidenciais em aplicações, como comercio eletrônico, as

O uso da técnica de checkpoint reduz o tempo de reinicialização de aplicações de Bioinformática e, deste modo, resulta em um mais curto tempo de provisionamento de recursos, assim como,

Assim e voltando ao caso concreto em apreço, tanto para quem entenda que a competência do tribunal de comércio apenas existirá quando estiverem causa direitos privativos de

A solução Cisco CloudCenter™ é uma plataforma de gerenciamento de nuvem híbrida centrada em aplicações, que fornece os recursos de infraestrutura e implanta, de forma segura,

• A computação na nuvem é um novo modelo de computação que permite ao usuário final acessar uma grande quantidade de aplicações e serviços em qualquer lugar e independente

Para auxiliar o professor na efetivação do ensino de Artes nas escolas, conforme as exigências da Lei, há uma sistematização metodológica fundamentada no Referencial Curricular

Para migração de ambientes SAP Business Suite com banco de dados SAP HANA, recomendamos verificar a SAP note 1872170 para estimar os requerimentos de memória para a instancia EC2