Skip to main content

2017 | OriginalPaper | Buchkapitel

Middleware for Dynamic Upgrade Activation and Compensations in Multi-tenant SaaS

verfasst von : Dimitri Van Landuyt, Fatih Gey, Eddy Truyen, Wouter Joosen

Erschienen in: Service-Oriented Computing

Verlag: Springer International Publishing

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Multi-tenant Software as a Service (SaaS) is the cloud computing delivery model that maximizes resource sharing up to the level of a single application instance, servicing many customer organizations (tenants) at once. Due to this scale of delivery, a SaaS offering, once successful, becomes difficult to upgrade and evolve without affecting service continuity, and this in turn limits its capabilities to respond to the reality of changing customer requirements.
However, not all tenants are equal, and to some organizations such disruptions are more costly than to others. Supporting different quality trade-offs for different tenants is often a manual, error-prone task and far from trivial.
This short paper outlines our middleware design for fine-grained, gradual and continuous evolution of multi-tenant SaaS applications, providing automated and systematic support for (i) tenant-aware upgrade enactment, and (ii) compensations that allow recovering from negative side-effects of the upgrade enactment.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Fußnoten
1
This involves consulting the Service Registry, which is omitted here for simplicity.
 
2
Note: these two may differ when TokenVer is used.
 
Literatur
1.
Zurück zum Zitat Ajmani, S., Liskov, B., Shrira, L.: Modular Software Upgrades for Distributed Systems. In: Thomas, D. (ed.) ECOOP 2006. LNCS, vol. 4067, pp. 452–476. Springer, Heidelberg (2006). doi:10.1007/11785477_26 CrossRef Ajmani, S., Liskov, B., Shrira, L.: Modular Software Upgrades for Distributed Systems. In: Thomas, D. (ed.) ECOOP 2006. LNCS, vol. 4067, pp. 452–476. Springer, Heidelberg (2006). doi:10.​1007/​11785477_​26 CrossRef
2.
Zurück zum Zitat Armbrust, M., Fox, A., Griffith, R., Joseph, A.D., Katz, R., Konwinski, A., Lee, G., Patterson, D., Rabkin, A., Stoica, I., et al.: A view of cloud computing. Commun. ACM 53(4), 50–58 (2010)CrossRef Armbrust, M., Fox, A., Griffith, R., Joseph, A.D., Katz, R., Konwinski, A., Lee, G., Patterson, D., Rabkin, A., Stoica, I., et al.: A view of cloud computing. Commun. ACM 53(4), 50–58 (2010)CrossRef
3.
Zurück zum Zitat Bloom, T., Day, M.: Reconfiguration and module replacement in argus: theory and practice. Softw. Eng. J. 8(2), 102–108 (1993)CrossRef Bloom, T., Day, M.: Reconfiguration and module replacement in argus: theory and practice. Softw. Eng. J. 8(2), 102–108 (1993)CrossRef
4.
Zurück zum Zitat Brewer, E.: Lessons from giant-scale services. IEEE Internet Comput. 5(4), 46–55 (2001)CrossRef Brewer, E.: Lessons from giant-scale services. IEEE Internet Comput. 5(4), 46–55 (2001)CrossRef
5.
Zurück zum Zitat Carzaniga, A., Gorla, A., Perino, N., Pezzè, M.: Automatic workarounds for web applications. In: FSE 2010, pp. 237–246. ACM, New York (2010) Carzaniga, A., Gorla, A., Perino, N., Pezzè, M.: Automatic workarounds for web applications. In: FSE 2010, pp. 237–246. ACM, New York (2010)
6.
Zurück zum Zitat Carzaniga, A., Gorla, A., Pezzè, M.: Self-healing by means of automatic workarounds. In: SEAMS 2008, pp. 17–24. ACM, New York (2008) Carzaniga, A., Gorla, A., Pezzè, M.: Self-healing by means of automatic workarounds. In: SEAMS 2008, pp. 17–24. ACM, New York (2008)
8.
Zurück zum Zitat Colombo, C., Pace, G.J.: Recovery within long-running transactions. ACM Comput. Surv. 45(3), 28:1–28:35 (2013)CrossRefMATH Colombo, C., Pace, G.J.: Recovery within long-running transactions. ACM Comput. Surv. 45(3), 28:1–28:35 (2013)CrossRefMATH
9.
Zurück zum Zitat Davies Jr., C.T.: Recovery semantics for a db/dc system. In: Proceedings of the ACM Annual Conference, pp. 136–141. ACM, New York (1973) Davies Jr., C.T.: Recovery semantics for a db/dc system. In: Proceedings of the ACM Annual Conference, pp. 136–141. ACM, New York (1973)
10.
Zurück zum Zitat de Lemos, R., et al.: Software Engineering for Self-Adaptive Systems: A Second Research Roadmap. In: de Lemos, R., Giese, H., Müller, H.A., Shaw, M. (eds.) Software Engineering for Self-Adaptive Systems II. LNCS, vol. 7475, pp. 1–32. Springer, Heidelberg (2013). doi:10.1007/978-3-642-35813-5_1 CrossRef de Lemos, R., et al.: Software Engineering for Self-Adaptive Systems: A Second Research Roadmap. In: de Lemos, R., Giese, H., Müller, H.A., Shaw, M. (eds.) Software Engineering for Self-Adaptive Systems II. LNCS, vol. 7475, pp. 1–32. Springer, Heidelberg (2013). doi:10.​1007/​978-3-642-35813-5_​1 CrossRef
11.
Zurück zum Zitat Dumitraş, T., Narasimhan, P.: Why Do Upgrades Fail and What Can We Do about It? In: Bacon, J.M., Cooper, B.F. (eds.) Middleware 2009. LNCS, vol. 5896, pp. 349–372. Springer, Heidelberg (2009). doi:10.1007/978-3-642-10445-9_18 CrossRef Dumitraş, T., Narasimhan, P.: Why Do Upgrades Fail and What Can We Do about It? In: Bacon, J.M., Cooper, B.F. (eds.) Middleware 2009. LNCS, vol. 5896, pp. 349–372. Springer, Heidelberg (2009). doi:10.​1007/​978-3-642-10445-9_​18 CrossRef
12.
Zurück zum Zitat Ertel, S., Felber, P.: A framework for the dynamic evolution of highly-available dataflow programs. In: Middleware (2014) Ertel, S., Felber, P.: A framework for the dynamic evolution of highly-available dataflow programs. In: Middleware (2014)
13.
Zurück zum Zitat García-Galán, J., Pasquale, L., Trinidad, P., Ruiz-Cortés, A.: User-centric adaptation of multi-tenant services: Preference-based analysis for service reconfiguration. In: SEAMS (2014) García-Galán, J., Pasquale, L., Trinidad, P., Ruiz-Cortés, A.: User-centric adaptation of multi-tenant services: Preference-based analysis for service reconfiguration. In: SEAMS (2014)
14.
Zurück zum Zitat Gey, F., Van Landuyt, D., Joosen, W., Jonckers, V.: Continuous evolution of multi-tenant saas applications: a customizable dynamic adaptation approach. In: PESOS, May 2015 Gey, F., Van Landuyt, D., Joosen, W., Jonckers, V.: Continuous evolution of multi-tenant saas applications: a customizable dynamic adaptation approach. In: PESOS, May 2015
15.
Zurück zum Zitat Gupta, D., Jalote, P., Barua, G.: A formal framework for on-line software version change. Softw. Eng. 22(2), 120–131 (1996)CrossRef Gupta, D., Jalote, P., Barua, G.: A formal framework for on-line software version change. Softw. Eng. 22(2), 120–131 (1996)CrossRef
16.
Zurück zum Zitat Hayden, C.M., Magill, S., Hicks, M., Foster, N., Foster, J.S.: Specifying and verifying the correctness of dynamic software updates. In: Verified Software (2012) Hayden, C.M., Magill, S., Hicks, M., Foster, N., Foster, J.S.: Specifying and verifying the correctness of dynamic software updates. In: Verified Software (2012)
17.
Zurück zum Zitat Hillman, J., Warren, I.: An open framework for dynamic reconfiguration. In: Proceedings of the 26th International Conference on Software Engineering, ICSE 2004, pp. 594–603. IEEE Computer Society, Washington (2004) Hillman, J., Warren, I.: An open framework for dynamic reconfiguration. In: Proceedings of the 26th International Conference on Software Engineering, ICSE 2004, pp. 594–603. IEEE Computer Society, Washington (2004)
18.
Zurück zum Zitat Jørgensen, B.N., Truyen, E.: Evolution of Collective Object Behavior in Presence of Simultaneous Client-Specific Views. In: Konstantas, D., Léonard, M., Pigneur, Y., Patel, S. (eds.) OOIS 2003. LNCS, vol. 2817, pp. 18–32. Springer, Heidelberg (2003). doi:10.1007/978-3-540-45242-3_4 CrossRef Jørgensen, B.N., Truyen, E.: Evolution of Collective Object Behavior in Presence of Simultaneous Client-Specific Views. In: Konstantas, D., Léonard, M., Pigneur, Y., Patel, S. (eds.) OOIS 2003. LNCS, vol. 2817, pp. 18–32. Springer, Heidelberg (2003). doi:10.​1007/​978-3-540-45242-3_​4 CrossRef
19.
Zurück zum Zitat Kramer, J., Magee, J.: The evolving philosophers problem: dynamic change management. Softw. Eng. 16(11), 1293–1306 (1990)CrossRef Kramer, J., Magee, J.: The evolving philosophers problem: dynamic change management. Softw. Eng. 16(11), 1293–1306 (1990)CrossRef
20.
Zurück zum Zitat Kumara, I., Han, J., Colman, A., Kapuruge, M.: Runtime Evolution of Service-Based Multi-tenant SaaS Applications. In: Basu, S., Pautasso, C., Zhang, L., Fu, X. (eds.) ICSOC 2013. LNCS, vol. 8274, pp. 192–206. Springer, Heidelberg (2013). doi:10.1007/978-3-642-45005-1_14 CrossRef Kumara, I., Han, J., Colman, A., Kapuruge, M.: Runtime Evolution of Service-Based Multi-tenant SaaS Applications. In: Basu, S., Pautasso, C., Zhang, L., Fu, X. (eds.) ICSOC 2013. LNCS, vol. 8274, pp. 192–206. Springer, Heidelberg (2013). doi:10.​1007/​978-3-642-45005-1_​14 CrossRef
21.
Zurück zum Zitat Lehtonen, T., Suonsyrjä, S., Kilamo, T., Mikkonen, T.: Defining metrics for continuous delivery and deployment pipeline. In: Symposium on Programming Languages and Software Tools (2015) Lehtonen, T., Suonsyrjä, S., Kilamo, T., Mikkonen, T.: Defining metrics for continuous delivery and deployment pipeline. In: Symposium on Programming Languages and Software Tools (2015)
23.
Zurück zum Zitat Ma, X., Baresi, L., Ghezzi, C., Panzica La Manna, V., Lu, J.: Version-consistent dynamic reconfiguration of component-based distributed systems. In: FOSE (2011) Ma, X., Baresi, L., Ghezzi, C., Panzica La Manna, V., Lu, J.: Version-consistent dynamic reconfiguration of component-based distributed systems. In: FOSE (2011)
24.
Zurück zum Zitat Neely, S., Stolt, S.: Continuous delivery? easy! just change everything (well, maybe it is not that easy). In: Agile Conference (AGILE), 2013, pp. 121–128 (2013) Neely, S., Stolt, S.: Continuous delivery? easy! just change everything (well, maybe it is not that easy). In: Agile Conference (AGILE), 2013, pp. 121–128 (2013)
25.
Zurück zum Zitat Sun, W., Zhang, X., Guo, C.J., Sun, P., Su, H.: Software as a service: Configuration and customization perspectives. In: Services (2008) Sun, W., Zhang, X., Guo, C.J., Sun, P., Su, H.: Software as a service: Configuration and customization perspectives. In: Services (2008)
26.
Zurück zum Zitat Truyen, E., Vanhaute, B., Joosen, W., Verbaeten, P., Jorgensen, B.: A dynamic customization model for distributed component-based systems. In: Distributed Computing Systems Workshop, pp. 147–152, April 2001 Truyen, E., Vanhaute, B., Joosen, W., Verbaeten, P., Jorgensen, B.: A dynamic customization model for distributed component-based systems. In: Distributed Computing Systems Workshop, pp. 147–152, April 2001
27.
Zurück zum Zitat Truyen, E., Janssens, N., Sanen, F., Joosen, W.: Support for distributed adaptations in aspect-oriented middleware. In: AOSD (2008) Truyen, E., Janssens, N., Sanen, F., Joosen, W.: Support for distributed adaptations in aspect-oriented middleware. In: AOSD (2008)
28.
Zurück zum Zitat Vandewoude, Y., Ebraert, P., Berbers, Y., D’Hondt, T.: Tranquility: A low disruptive alternative to quiescence for ensuring safe dynamic updates. Softw. Eng. 33(12), 856–868 (2007)CrossRef Vandewoude, Y., Ebraert, P., Berbers, Y., D’Hondt, T.: Tranquility: A low disruptive alternative to quiescence for ensuring safe dynamic updates. Softw. Eng. 33(12), 856–868 (2007)CrossRef
29.
Zurück zum Zitat Walraven, S., Truyen, E., Joosen, W.: A Middleware Layer for Flexible and Cost-Efficient Multi-tenant Applications. In: Kon, F., Kermarrec, A.-M. (eds.) Middleware 2011. LNCS, vol. 7049, pp. 370–389. Springer, Heidelberg (2011). doi:10.1007/978-3-642-25821-3_19 CrossRef Walraven, S., Truyen, E., Joosen, W.: A Middleware Layer for Flexible and Cost-Efficient Multi-tenant Applications. In: Kon, F., Kermarrec, A.-M. (eds.) Middleware 2011. LNCS, vol. 7049, pp. 370–389. Springer, Heidelberg (2011). doi:10.​1007/​978-3-642-25821-3_​19 CrossRef
Metadaten
Titel
Middleware for Dynamic Upgrade Activation and Compensations in Multi-tenant SaaS
verfasst von
Dimitri Van Landuyt
Fatih Gey
Eddy Truyen
Wouter Joosen
Copyright-Jahr
2017
DOI
https://doi.org/10.1007/978-3-319-69035-3_24