32 resultados para Long-Polling, GCM, Google Cloud Messaging, RESTful Web services, Push, Notifiche

em Instituto Politécnico do Porto, Portugal


Relevância:

100.00% 100.00%

Publicador:

Resumo:

As we move more closely to the practical concept of the Internet of Things and, our reliance on public and private APIs increases, web services and their related topics have become utterly crucial to the informatics community. However, the question about which style of web services would best solve a particular problem, can raise signi cant and multifarious debates. There can be found two implementation styles that highlight themselves: the RPC-oriented style represented by the SOAP protocol’s implementations and the hypermedia style, which is represented by the REST architectural style’s implementations. As we search examples of already established web services, we can nd a handful of robust and reliable public and private SOAP APIs, nevertheless, it seems that RESTful services are gaining popularity in the enterprise community. For the current generation of developers that work on informatics solutions, REST seems to represent a fundamental and straightforward alternative and even, a more deep-rooted approach than SOAP. But are they comparable? Do both approaches have each speci c best suitable scenarios? Such study is brie y carried out in the present document’s chapters, starting with the respective background study, following an analysis of the hypermedia approach and an instantiation of its architecture, in a particular case study applied in a BPM context.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Nonlinear Optimization Problems are usual in many engineering fields. Due to its characteristics the objective function of some problems might not be differentiable or its derivatives have complex expressions. There are even cases where an analytical expression of the objective function might not be possible to determine either due to its complexity or its cost (monetary, computational, time, ...). In these cases Nonlinear Optimization methods must be used. An API, including several methods and algorithms to solve constrained and unconstrained optimization problems was implemented. This API can be accessed not only as traditionally, by installing it on the developer and/or user computer, but it can also be accessed remotely using Web Services. As long as there is a network connection to the server where the API is installed, applications always access to the latest API version. Also an Web-based application, using the proposed API, was developed. This application is to be used by users that do not want to integrate methods in applications, and simply want to have a tool to solve Nonlinear Optimization Problems.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Empowered by virtualisation technology, cloud infrastructures enable the construction of flexi- ble and elastic computing environments, providing an opportunity for energy and resource cost optimisation while enhancing system availability and achieving high performance. A crucial re- quirement for effective consolidation is the ability to efficiently utilise system resources for high- availability computing and energy-efficiency optimisation to reduce operational costs and carbon footprints in the environment. Additionally, failures in highly networked computing systems can negatively impact system performance substantially, prohibiting the system from achieving its initial objectives. In this paper, we propose algorithms to dynamically construct and readjust vir- tual clusters to enable the execution of users’ jobs. Allied with an energy optimising mechanism to detect and mitigate energy inefficiencies, our decision-making algorithms leverage virtuali- sation tools to provide proactive fault-tolerance and energy-efficiency to virtual clusters. We conducted simulations by injecting random synthetic jobs and jobs using the latest version of the Google cloud tracelogs. The results indicate that our strategy improves the work per Joule ratio by approximately 12.9% and the working efficiency by almost 15.9% compared with other state-of-the-art algorithms.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Cloud data centers have been progressively adopted in different scenarios, as reflected in the execution of heterogeneous applications with diverse workloads and diverse quality of service (QoS) requirements. Virtual machine (VM) technology eases resource management in physical servers and helps cloud providers achieve goals such as optimization of energy consumption. However, the performance of an application running inside a VM is not guaranteed due to the interference among co-hosted workloads sharing the same physical resources. Moreover, the different types of co-hosted applications with diverse QoS requirements as well as the dynamic behavior of the cloud makes efficient provisioning of resources even more difficult and a challenging problem in cloud data centers. In this paper, we address the problem of resource allocation within a data center that runs different types of application workloads, particularly CPU- and network-intensive applications. To address these challenges, we propose an interference- and power-aware management mechanism that combines a performance deviation estimator and a scheduling algorithm to guide the resource allocation in virtualized environments. We conduct simulations by injecting synthetic workloads whose characteristics follow the last version of the Google Cloud tracelogs. The results indicate that our performance-enforcing strategy is able to fulfill contracted SLAs of real-world environments while reducing energy costs by as much as 21%.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

A Internet causou uma revolução em grande parte dos processos das empresas, criando oportunidades e gerando necessidades até então desconhecidas. Os Sistemas de Informação, ferramentas indispensáveis para uma gestão moderna das actividades empresariais, também foram influenciados pela evolução constante da tecnologia e as facilidades oferecidas para a popularização do uso da Internet. Rumo a uma crescente necessidade de modernização, rapidez, agilidade, eficiência e eficácia que são exigidos das actividades da empresa, actualmente, a tecnologia da Web é exibida como uma opção viável para melhorar o desempenho na gestão da informação. Esta Tese procura dissertar acerca dos aspectos relativos ao funcionamento e implementação de Serviços Web, suas principais características, vantagens e desvantagens comparativamente aos sistemas de informação tradicionais. Os objectivos propostos podem ser sintetizados no conhecimento e descrição das funcionalidades dos Serviços Web, no estudo da situação actual, na identificação das características que potenciam a capacidade de evolução dos Serviços Web, no estudo e desempenho dos Serviços Web, e finalmente, no estudo e análise da especificação Segurança.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Consolidation consists in scheduling multiple virtual machines onto fewer servers in order to improve resource utilization and to reduce operational costs due to power consumption. However, virtualization technologies do not offer performance isolation, causing applications’ slowdown. In this work, we propose a performance enforcing mechanism, composed of a slowdown estimator, and a interference- and power-aware scheduling algorithm. The slowdown estimator determines, based on noisy slowdown data samples obtained from state-of-the-art slowdown meters, if tasks will complete within their deadlines, invoking the scheduling algorithm if needed. When invoked, the scheduling algorithm builds performance and power aware virtual clusters to successfully execute the tasks. We conduct simulations injecting synthetic jobs which characteristics follow the last version of the Google Cloud tracelogs. The results indicate that our strategy can be efficiently integrated with state-of-the-art slowdown meters to fulfil contracted SLAs in real-world environments, while reducing operational costs in about 12%.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

As grandes empresas como Google, com o Android, e a Apple, com o iOS, ajudaram a tornar a área das aplicações móveis muito apelativa e obtiveram um elevado sucesso. Com o crescimento elevado nesta área foi necessário usar uma solução que integrasse sistemas e permitisse comunicação entre aplicações diferentes, este é o caso dos Web Services, desta forma as novas aplicações podem comunicar com aplicações já existentes, e permitir que sistemas criados em plataformas diferentes comuniquem. O objetivo de um Web Service é disponibilizar uma plataforma independente de hardware e também uma plataforma que não implica estar escrita em determinada linguagem de programação. Para o acesso a um Web Service pode ser usado um protocolo ou estilo de arquitetura, nesta tese de mestrado são estudados os protocolos SOAP e a arquitectura REST, que diferem na técnica de acesso, a na sintax das mensagens trocadas. Para determinar qual dos anteriores (REST e SOAP) pode ser o mais adequado a usar no acesso a um Web Service são feitas análises a ambos e comparações entre os tempos de resposta de forma a determinar qual seria o mais vantajoso a nível de performance. O projeto que serviu como base desta tese de mestrado foi o desenvolvimento de uma aplicação de marcações em serviços beleza/saúde, a qual acede a um Web Service remoto através do REST.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

O objectivo do projecto descrito nesta dissertação é o desenvolvimento da interface entre as empresas e a plataforma Business-to-Business (B2B) de negociação automática de anúncios em construção. A plataforma, no seu todo, deve garantir que os intervalos da programação são preenchidos com um alinhamento de anúncios compatível com os interesses expressos e o perfil construído dos espectadores. A plataforma funciona como um mercado electrónico de negociação automática destinado a agências de publicidade (empresas produtoras) e empresas provedoras de conteúdos e serviços multimédia aos consumidores finais (empresas distribuidoras). As empresas, uma vez registadas na plataforma, passam a ser representadas por agentes que negoceiam automaticamente os itens submetidos com o comportamento especificado. Do ponto de vista da arquitectura, a plataforma consiste num sistema multiagente organizado em três camadas compostas por: (i) agentes de interface com as empresas; (ii) agentes de modelação das empresas; e (iii) agentes delegados, de duração efémera, exclusivamente criados para participar em negociações específicas de conteúdos multimédia. Cada empresa representada na plataforma possui, para além de um número indeterminado de delegados envolvidos em negociações específicas, dois agentes: (i) o agente de interface com a empresa, que expõe um conjunto de operações de interface ao exterior através de um serviço Web, localizado na primeira camada; e (ii) o agente que modela a empresa na plataforma, que expõe através de um serviço Web um conjunto de operações aos agentes das restantes camadas da plataforma, residente na camada intermédia. Este projecto focou-se no desenvolvimento da camada superior de interface da plataforma com as empresas e no enriquecimento da camada intermédia. A realização da camada superior incluiu a especificação da parte da ontologia da plataforma que dá suporte às operações de interface com o exterior, à sua exposição como serviços Web e à criação e controlo dos agentes de interface. Esta camada superior deve permitir às empresas carregar e descarregar toda informação relevante de e para a plataforma, através de uma interface gráfica ou de forma automática, e apresentar de forma gráfica e intuitiva os resultados alcançados, nomeadamente, através da apresentação da evolução das transacções. Em relação à camada intermédia, adicionou-se à ontologia da plataforma a representação do conhecimento de suporte às operações de interface com a camada superior, adoptaram-se taxonomias de classificação de espectadores, anúncios e programas, desenvolveu-se um algoritmo de emparelhamento entre os espectadores, programas e anúncios disponíveis e, por fim, procedeu-se ao armazenamento persistente dos resultados das negociações. Do ponto de vista da plataforma, testou-se o seu funcionamento numa única plataforma física e assegurou-se a segurança e privacidade da comunicação entre empresa e plataforma e entre agentes que representam uma mesma empresa.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

A constante evolução da tecnologia obriga a que o mundo empresarial tenha que alocar esforços para se manter actualizado. Os equipamentos tecnológicos que se encontram actualmente na vanguarda da tecnologia são os dispositivos móveis, que cada vez mais nos rodeiam e acompanham com o intuito de nos facilitar a execução de tarefas rotineiras. O ramo de construção e obras públicas em particular é um sector que obriga a que os seus trabalhadores estejam constantemente em movimento, e que muito têm a ganhar com a utilização de ferramentas de trabalho em equipamentos móveis. Neste projecto pretendeu-se identificar qual o sistema operativo para dispositivos móveis que melhor se enquadra com as necessidades empresariais, assim como quais os mecanismos de comunicação inter-máquinas que melhor se enquadram com o cenário em estudo. Foi então desenvolvida uma plataforma para dispositivos móveis que permite agilizar a execução de processos que normalmente são morosos ou que obrigam à utilização do computador em locais menos próprios, nomeadamente o ambiente de obra. A solução proposta e implementada envolve uma aplicação modular quer permita a fácil inserção e remoção de módulos. Foram também realizados os estudos e implementações de quatro módulos, designadamente: auto-afectação, conferência documental, fornecedores e presenças em obra. Concluído este projecto, ficam reunidas as condições para o fácil desenvolvimento de novos módulos, visando inovação e optimização dos processos de trabalho da empresa.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

In the last two decades, there was a proliferation of programming exercise formats that hinders interoperability in automatic assessment. In the lack of a widely accepted standard, a pragmatic solution is to convert content among the existing formats. BabeLO is a programming exercise converter providing services to a network of heterogeneous e-learning systems such as contest management systems, programming exercise authoring tools, evaluation engines and repositories of learning objects. Its main feature is the use of a pivotal format to achieve greater extensibility. This approach simplifies the extension to other formats, just requiring the conversion to and from the pivotal format. This paper starts with an analysis of programming exercise formats representative of the existing diversity. This analysis sets the context for the proposed approach to exercise conversion and to the description of the pivotal data format. The abstract service definition is the basis for the design of BabeLO, its components and web service interface. This paper includes a report on the use of BabeLO in two concrete scenarios: to relocate exercises to a different repository, and to use an evaluation engine in a network of heterogeneous systems.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

This paper describes a multi-agent brokerage platform for near real time advertising personalisation organised in three layers: user interface, agency and marketplace. The personalisation is based on the classification of viewer profiles and advertisements (ads). The goal is to provide viewers with a personalised advertising alignment during programme intervals. The enterprise interface agents upload new ads and negotiation profiles to producer agents and new user and negotiation profiles to distributor agents. The agency layer is composed of agents that represent ad producer and media distributor enterprises as well as the market regulator. The enterprise agents offer data upload and download operations as Web Services and register the specification of these interfaces at an UDDI registry for future discovery. The market agent supports the registration and deregistration of enterprise delegate agents at the marketplace. This paper addresses the marketplace layer, an agent-based negotiation platform per se, where delegates of the relevant advertising agencies and programme distributors negotiate to create the advertising alignment that best fits a viewer profile and the advertising campaigns available. The whole brokerage platform is being developed in JADE, a multi-agent development platform. The delegate agents download the negotiation profile and upload the negotiation results from / to the corresponding enterprise agent. In the meanwhile, they negotiate using the Iterated Contract Net protocol. All tools and technologies used are open source.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Search Optimization methods are needed to solve optimization problems where the objective function and/or constraints functions might be non differentiable, non convex or might not be possible to determine its analytical expressions either due to its complexity or its cost (monetary, computational, time,...). Many optimization problems in engineering and other fields have these characteristics, because functions values can result from experimental or simulation processes, can be modelled by functions with complex expressions or by noise functions and it is impossible or very difficult to calculate their derivatives. Direct Search Optimization methods only use function values and do not need any derivatives or approximations of them. In this work we present a Java API that including several methods and algorithms, that do not use derivatives, to solve constrained and unconstrained optimization problems. Traditional API access, by installing it on the developer and/or user computer, and remote API access to it, using Web Services, are also presented. Remote access to the API has the advantage of always allow the access to the latest version of the API. For users that simply want to have a tool to solve Nonlinear Optimization Problems and do not want to integrate these methods in applications, also two applications were developed. One is a standalone Java application and the other a Web-based application, both using the developed API.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

O objectivo da tese é demonstrar a adequação do paradigma dos mercados electrónicos baseados em agentes para transaccionar objectos multimédia em função do perfil dos espectadores. Esta dissertação descreve o projecto realizado no âmbito da plataforma de personalização de conteúdos em construção. O domínio de aplicação adoptado foi a personalização dos intervalos publicitários difundidos pelos distribuidores de conteúdos multimédia, i.e., pretende-se gerar em tempo útil o alinhamento de anúncios publicitários que melhor se adeqúe ao perfil de um espectador ou de um grupo de espectadores. O projecto focou-se no estudo e selecção das tecnologias de suporte, na concepção da arquitectura e no desenvolvimento de um protótipo que permitisse realizar diversas experiências nomeadamente com diferentes estratégias e tipos de mercado. A arquitectura proposta para a plataforma consiste num sistema multiagente organizado em três camadas que disponibiliza interfaces do tipo serviço Web com o exterior. A camada de topo é constituída por agentes de interface com o exterior. Na camada intermédia encontram-se os agentes autónomos que modelam as entidades produtoras e consumidoras de componentes multimédia assim como a entidade reguladora do mercado. Estes agentes registam-se num serviço de registo próprio onde especificam os componentes multimédia que pretendem negociar. Na camada inferior realiza-se o mercado que é constituído por agentes delegados dos agentes da camada superior. O lançamento do mercado é efectuado através de uma interface e consiste na escolha do tipo de mercado e no tipo de itens a negociar. Este projecto centrou-se na realização da camada do mercado e da parte da camada intermédia de apoio às actividades de negociação no mercado. A negociação é efectuada em relação ao preço da transmissão do anúncio no intervalo em preenchimento. Foram implementados diferentes perfis de negociação com tácticas, incrementos e limites de variação de preço distintos. Em termos de protocolos de negociação, adoptou-se uma variante do Iterated Contract Net – o Fixed Iterated Contract Net. O protótipo resultante foi testado e depurado com sucesso.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

This paper describes a communication model to integrate repositories of programming problems with other e-Learning software components. The motivation for this work comes from the EduJudge project that aims to connect an existing repository of programming problems to learning management systems. When trying to use the existing repositories of learning objects we realized that they are mainly specialized search engines and lack features for integration with other e-Learning systems. With this model we intend to clarify the main features of a programming problem repository, in order to enable the design and development of software components that use it. The two main points of this model are the definition of programming problems as learning objects and the definition of the core functions exposed by the repository. In both cases, this model follows the existing specifications of the IMS standard and proposes extensions to deal with the special requirements of automatic evaluation and grading of programming exercises. In the definition of programming problems as learning objects we introduced a new schema for meta-data. This schema is used to represent meta-data related to automatic evaluation that cannot be conveniently represented using the standard: the type of automatic evaluation; the requirements of the evaluation engine; or the roles of different assets - tests cases, program solutions, etc. In the definition of the core functions we used two different web services flavours - SOAP and REST - and described each function as an operation for each type of interface. We describe also the data types of the arguments of each operation. These data types consist mainly on learning objects and their identifications, but include also usage reports and queries using XQuery.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Learning management systems are routinely used for presenting, solving and grading exercises with large classes. However, teachers are constrained to use questions with pre-defined answers, such as multiple-choice, to automatically correct the exercises of their students. Complex exercises cannot be evaluated automatically by the LMS and require the coordination of a set of heterogeneous systems. For instance, programming exercises require a specialized exercise resolution environment and automatic evaluation features, each provided by a different type of system. In this paper, the authors discuss an approach for the coordination of a network of eLearning systems supporting the resolution of exercises. The proposed approach is based on a pivot component embedded in the LMS and has two main roles: 1) provide an exercise resolution environment, and 2) coordinate communication between the LMS and other systems, exposing their functions as web services. The integration of the pivot component in the LMS relies on Learning Tools Interoperability (LTI). This paper presents an architecture to coordinate a network of eLearning systems and validate the proposed approach by creating such a network integrated with LMS from two different vendors.