Advances, Systems and Applications
From: Degrees of tenant isolation for cloud-hosted software services: a cross-case analysis
Aspect | Case study 1 | Case study 2 | Case study 3 |
---|---|---|---|
Research Aim | To evaluate the degrees of isolation of multitenancy patterns for cloud-hosted continuous integration system | To evaluate the degrees of isolation of multitenancy patterns for cloud-hosted version control system. | To evaluate the degrees of isolation of multitenancy patterns for cloud-hosted bug tracking system |
Target process | Continuous integration | Version control | Bug tracking |
GSD tool/plugin that can be used to simulate the process | Hudson | Subversion, FileSystem SCM Plugin (integrated in Hudson) | Bugzilla |
User-level Process investigated | Automated Build Verification/Testing | Check-in, Check-out, locking | Bug creation with file attachment |
Process simulated in JMeter | sending HTTP/HTTPS request to continuous integration server | sending an FTP download file and upload file request to a Version control repository | sending an JDBC Request(an SQL query) to a database, invoking external JMeter APIs and Java classes via BeanShell |
Developer community | Eclipse Foundation | Apache Software Foundation | Mozilla Foundation |
Implementation Language | Java | Python, Java | Perl, Java |
Mechanism for Customization and Extension | Hudson plug-in using Hudson HPI tool | Hook scripts or any program triggered by some repository event (e.g., pre-hooks which run in advance of a repository operation) | Bugzilla Extensions Hooks |
Storage/DBMS used (Back end) | MySQL | Postgree SQL, Berkley DB | MySQL, PostgreSQL |
Implementation of Tenant Isolation (based on COMITRE) | Easy to implement due to Java programming language familiarity | Fairly simple to implement but files permissions could be an issue | Difficult and challenging due to existing database restrictions/constraints |
Key implementation challenges | Insufficient system resources (e.g., memory) | File permission errors | Restrictions of database schema (e.g., file size, maximum open connections) |