Abstract
For distributed applications to take full advantage of cloud computing systems, we need middleware systems that allow developers to build elasticity management components right into the applications.
This paper describes the design and implementation of ElasticRMI, a middleware system that (1) enables application developers to dynamically change the number of (server) objects available to handle remote method invocations with respect to the application’s workload, without requiring major changes to clients (invokers) of remote methods, (2) enables flexible elastic scaling by allowing developers to use a combination of resource utilization metrics and fine-grained application-specific information like the properties of internal data structures to drive scaling decisions, (3) provides a high-level programming framework that handles elasticity at the level of classes and objects, masking low-level platform specific tasks (like provisioning VM images) from the developer, and (4) increases the portability of ElasticRMI applications across different private data centers/IaaS clouds through Apache Mesos [5].
Chapter PDF
Similar content being viewed by others
References
Amazon Web Services (AWS) Inc. Amazon CloudWatch (2012), http://aws.amazon.com/cloudwatch/
Apache Pig (2013), http://pig.apache.org
Apache Thrift (2012), http://thrift.apache.org/
AWS Inc. Amazon Auto Scaling (2012), http://aws.amazon.com/autoscaling/
Hindman, B., Konwinski, A., Zaharia, M., Ghodsi, A., Joseph, A., Katz, R., Shenker, S., Stoica, I.: Mesos: A Platform for Fine-grained Resource Sharing in the Data Center. In: NSDI 2011 (2011), http://incubator.apache.org/mesos/
BBN Technologies. Quality Objects (QuO) (2006), http://quo.bbn.com/
Burrows, M.: The Chubby Lock Service for Loosely-coupled Distributed Systems. In: OSDI 2006 (2006)
Tilevich, E., Smaragdakis, Y.: J-Orchestra: Automatic Java Application Partitioning. In: Magnusson, B. (ed.) ECOOP 2002. LNCS, vol. 2374, pp. 178–204. Springer, Heidelberg (2002)
Tilevich, E., Smaragdakis, Y.: Portable and Efficient Distributed Threads for Java. In: Jacobsen, H.-A. (ed.) Middleware 2004. LNCS, vol. 3231, pp. 478–492. Springer, Heidelberg (2004)
Elastic Map Reduce (2013), http://aws.amazon.com/elasticmapreduce/
Miller, G., Kuznets, T., Agostino, R.: Marketcetera Automated Trading Platform (2012), http://www.marketcetera.com/site/
Giraph (2013), http://incubator.apache.org/giraph/
Hadoop (2013), http://hadoop.apache.org
Hedwig (2013), https://cwiki.apache.org/ZOOKEEPER/hedwig.html
Kirsch, J., Amir, Y.: Paxos for Systems Builders (2008), http://www.cnds.jhu.edu/pub/papers/cnds-2008-2.pdf
Ousterhout, J., et al.: The Case for RAMCloud. In: CACM (2011)
Ostrowski, K., Sakoda, C., Birman, K.: Self-replicating Objects for Multicore Platforms. In: D’Hondt, T. (ed.) ECOOP 2010. LNCS, vol. 6183, pp. 452–477. Springer, Heidelberg (2010)
Ostrowski, K., Birman, K., Dolev, D.: Quicksilver Scalable Multicast (QSM). In: NCA 2008 (2008)
Ostrowski, K., Birman, K., Dolev, D., Ahnn, J.H.: Programming with Live Distributed Objects. In: Vitek, J. (ed.) ECOOP 2008. LNCS, vol. 5142, pp. 463–489. Springer, Heidelberg (2008)
Jayaram, K.R.: Elastic Remote Methods. Technical Report (2013), http://www.jayaramkr.com/elasticrmi
LibPaxos (2013), http://libpaxos.sourceforge.net/
Memcached (2013), http://www.memcached.org
Escriva, R., Wong, B., Sirer, E.: HyperDex: a Distributed, Searchable Key-Value Store. In: SIGCOMM 2012 (2012)
SPEC Open Systems Group (OSG). Report on Cloud Computing to the OSG Steering Committee (2012), http://www.spec.org/osgcloud/docs/osgcloudwgreport20120410.pdf
Zookeeper (2013), http://zookeeper.apache.org/
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 IFIP International Federation for Information Processing
About this paper
Cite this paper
Jayaram, K.R. (2013). Elastic Remote Methods. In: Eyers, D., Schwan, K. (eds) Middleware 2013. Middleware 2013. Lecture Notes in Computer Science, vol 8275. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-45065-5_8
Download citation
DOI: https://doi.org/10.1007/978-3-642-45065-5_8
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-45064-8
Online ISBN: 978-3-642-45065-5
eBook Packages: Computer ScienceComputer Science (R0)