<mods:mods xmlns:mods="http://www.loc.gov/mods/v3" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.loc.gov/mods/v3 http://www.loc.gov/standards/mods/v3/mods-3-4.xsd"><mods:titleInfo><mods:title>A Universal Architecture for Cross-Cutting Tools in Distributed Systems</mods:title></mods:titleInfo><mods:name type="personal"><mods:namePart>Mace, Jonathan Christopher</mods:namePart><mods:role><mods:roleTerm type="text">creator</mods:roleTerm></mods:role></mods:name><mods:name type="personal"><mods:namePart>Fonseca, Rodrigo</mods:namePart><mods:role><mods:roleTerm type="text">Advisor</mods:roleTerm></mods:role></mods:name><mods:name type="personal"><mods:namePart>Herlihy, Maurice</mods:namePart><mods:role><mods:roleTerm type="text">Reader</mods:roleTerm></mods:role></mods:name><mods:name type="personal"><mods:namePart>Krishnamurthi, Shriram</mods:namePart><mods:role><mods:roleTerm type="text">Reader</mods:roleTerm></mods:role></mods:name><mods:name type="corporate"><mods:namePart>Brown University. Department of Computer Science</mods:namePart><mods:role><mods:roleTerm type="text">sponsor</mods:roleTerm></mods:role></mods:name><mods:originInfo><mods:copyrightDate>2018</mods:copyrightDate></mods:originInfo><mods:physicalDescription><mods:extent>xi, 129 p.</mods:extent><mods:digitalOrigin>born digital</mods:digitalOrigin></mods:physicalDescription><mods:note type="thesis">Thesis (Ph. D.)--Brown University, 2018</mods:note><mods:genre authority="aat">theses</mods:genre><mods:abstract>Recent research has proposed a variety of cross-cutting tools to help monitor and troubleshoot end-to-end behaviors in distributed systems. However, most prior tools focus on data collection and aggregation, and treat analysis as a distinct step to be performed later, offline. This restricts the applicability of such tools to only doing post-facto analysis. However, this is not a fundamental limitation. Recent research has proposed tools that integrate analysis and decision-making at runtime, to directly enforce end-to-end behaviors and adapt to events.
In this thesis I present two new applications of cross-cutting tools to previously unexplored domains: resource management, and dynamic monitoring. Retro, a cross-cutting tool for resource management, provides end-to-end performance guarantees by propagating tenant identifiers with executions, and using them to attribute resource consumption and enforce throttling decisions. Pivot Tracing, a cross-cutting tool for dynamic monitoring, dynamically monitors metrics and contextualizes them based on properties deriving from arbitrary points in an end-to-end execution.
Retro and Pivot Tracing illustrate the potential breadth of cross-cutting tools in providing visibility and control over distributed system behaviors. From this, I identify and characterize the common challenges associated with developing and deploying cross-cutting tools. This motivates the design of baggage contexts, a general-purpose context that can be shared and reused by different cross-cutting tools. Baggage contexts abstract and encapsulate components that are otherwise duplicated by most cross-cutting tools, and decouples the design of tools into separate layers that can be addressed independently by different teams of developers.
The potential impact of a common architecture for cross-cutting tools is significant. It would enable more pervasive, more useful, and more diverse cross-cutting tools, and make it easier for developers to defer development-time decisions about which tools to deploy and support.</mods:abstract><mods:subject authority="fast" authorityURI="http://id.worldcat.org/fast" valueURI="http://id.worldcat.org/fast/01745899"><mods:topic>Cloud computing</mods:topic></mods:subject><mods:subject authority="fast" authorityURI="http://id.worldcat.org/fast" valueURI="http://id.worldcat.org/fast/00888884"><mods:topic>Debugging in computer science</mods:topic></mods:subject><mods:subject authority="fast" authorityURI="http://id.worldcat.org/fast" valueURI="http://id.worldcat.org/fast/00872297"><mods:topic>Computer networks</mods:topic></mods:subject><mods:language><mods:languageTerm authority="iso639-2b">English</mods:languageTerm></mods:language><mods:recordInfo><mods:recordContentSource authority="marcorg">RPB</mods:recordContentSource><mods:recordCreationDate encoding="iso8601">20180618</mods:recordCreationDate></mods:recordInfo><mods:identifier type="doi">10.26300/g1vw-v229</mods:identifier><mods:accessCondition type="rights statement" xlink:href="http://rightsstatements.org/vocab/InC/1.0/">In Copyright</mods:accessCondition><mods:accessCondition type="restriction on access">Collection is open for research.</mods:accessCondition><mods:typeOfResource authority="primo">dissertations</mods:typeOfResource></mods:mods>