  Deploying services efficiently while satisfying their quality requirements is
a major challenge in network slicing. Effective solutions place instances of
the services' virtual network functions (VNFs) at different locations of the
cellular infrastructure and manage such instances by scaling them as needed. In
this work, we address the above problem and the very relevant aspect of
sub-slice reuse among different services. Further, unlike prior art, we account
for the services' finite lifetime and time-varying traffic load. We identify
two major sources of inefficiency in service management: (i) the overspending
of computing resources due to traffic of multiple services with different
latency requirements being processed by the same virtual machine (VM), and (ii)
the poor packing of traffic processing requests in the same VM, leading to
opening more VMs than necessary. To cope with the above issues, we devise an
algorithm, called REShare, that can dynamically adapt to the system's
operational conditions and find an optimal trade-off between the aforementioned
opposite requirements. We prove that REShare has low algorithmic complexity and
is asymptotic 2-competitive under a non-decreasing load. Numerical results,
leveraging real-world scenarios, show that our solution outperforms
alternatives, swiftly adapting to time-varying conditions and reducing service
cost by over 25%.
