37,948 research outputs found
Next Generation Cloud Computing: New Trends and Research Directions
The landscape of cloud computing has significantly changed over the last
decade. Not only have more providers and service offerings crowded the space,
but also cloud infrastructure that was traditionally limited to single provider
data centers is now evolving. In this paper, we firstly discuss the changing
cloud infrastructure and consider the use of infrastructure from multiple
providers and the benefit of decentralising computing away from data centers.
These trends have resulted in the need for a variety of new computing
architectures that will be offered by future cloud infrastructure. These
architectures are anticipated to impact areas, such as connecting people and
devices, data-intensive computing, the service space and self-learning systems.
Finally, we lay out a roadmap of challenges that will need to be addressed for
realising the potential of next generation cloud systems.Comment: Accepted to Future Generation Computer Systems, 07 September 201
CloudHealth: A Model-Driven Approach to Watch the Health of Cloud Services
Cloud systems are complex and large systems where services provided by
different operators must coexist and eventually cooperate. In such a complex
environment, controlling the health of both the whole environment and the
individual services is extremely important to timely and effectively react to
misbehaviours, unexpected events, and failures. Although there are solutions to
monitor cloud systems at different granularity levels, how to relate the many
KPIs that can be collected about the health of the system and how health
information can be properly reported to operators are open questions. This
paper reports the early results we achieved in the challenge of monitoring the
health of cloud systems. In particular we present CloudHealth, a model-based
health monitoring approach that can be used by operators to watch specific
quality attributes. The CloudHealth Monitoring Model describes how to
operationalize high level monitoring goals by dividing them into subgoals,
deriving metrics for the subgoals, and using probes to collect the metrics. We
use the CloudHealth Monitoring Model to control the probes that must be
deployed on the target system, the KPIs that are dynamically collected, and the
visualization of the data in dashboards.Comment: 8 pages, 2 figures, 1 tabl
The role of concurrency in an evolutionary view of programming abstractions
In this paper we examine how concurrency has been embodied in mainstream
programming languages. In particular, we rely on the evolutionary talking
borrowed from biology to discuss major historical landmarks and crucial
concepts that shaped the development of programming languages. We examine the
general development process, occasionally deepening into some language, trying
to uncover evolutionary lineages related to specific programming traits. We
mainly focus on concurrency, discussing the different abstraction levels
involved in present-day concurrent programming and emphasizing the fact that
they correspond to different levels of explanation. We then comment on the role
of theoretical research on the quest for suitable programming abstractions,
recalling the importance of changing the working framework and the way of
looking every so often. This paper is not meant to be a survey of modern
mainstream programming languages: it would be very incomplete in that sense. It
aims instead at pointing out a number of remarks and connect them under an
evolutionary perspective, in order to grasp a unifying, but not simplistic,
view of the programming languages development process
- …