Advertisement

TMBean: Optimistic Concurrency in Application Servers Using Transactional Memory

  • Lucas Charles
  • Pascal Felber
  • Christophe Gête
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5870)

Abstract

In this experience report, we present an evaluation of different techniques to manage concurrency in the context of application servers. Traditionally, using entity beans is considered as the only way to synchronize concurrent access to data in Jave EE and using mechanism such as synchronized blocks within EJBs is strongly not recommended. In our evaluation we consider the use of software transactional memory to enable concurrent accesses to shared data across different session beans. We are also comparing our approach with using (1) entity beans and (2) session beans synchronized by a global lock.

Keywords

Application Server Java EE EJB Software Transactional Memory 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Adl-Tabatabai, A.-R., Kozyrakis, C., Saha, B.: Unlocking concurrency. Queue 4(10), 24–33 (2007)CrossRefGoogle Scholar
  2. 2.
    Cachopo, J., Rito-Silva, A.: Versioned boxes as the basis for memory transactions. In: Proceedings of SCOOL (2005)Google Scholar
  3. 3.
    Dice, D., Shalev, O., Shavit, N.: Transactional Locking II. In: Proceedings of DISC (September 2006)Google Scholar
  4. 4.
    Felber, P., Riegel, T., Fetzer, C.: Dynamic performance tuning of word-based software transactional memory. In: Proceedings of PPoPP (February 2008)Google Scholar
  5. 5.
    Guerraoui, R., Herlihy, M., Pochon, S.: Toward a theory of transactional contention managers. In: Proceedings of PODC (July 2005)Google Scholar
  6. 6.
    Harris, T., Fraser, K.: Language support for lightweight transactions. In: Proceedings of OOPSLA (October 2003)Google Scholar
  7. 7.
    Harris, T., Herlihy, M., Marlow, S., Peyton-Jones, S.: Composable memory transactions. In: Proceedings of PPoPP (June 2005)Google Scholar
  8. 8.
    Herlihy, M., Luchangco, V., Moir, M., Scherer III, W.N.: Software transactional memory for dynamic-sized data structures. In: Proceedings of PODC (July 2003)Google Scholar
  9. 9.
    Herlihy, M., Moss, J.E.B.: Transactional memory: Architectural support for lock-free data structures. In: Proceedings of ISCA (1993)Google Scholar
  10. 10.
    Scherer III, W.N., Scott, M.L.: Advanced contention management for dynamic software transactional memory. In: Proceedings of PODC (July 2005)Google Scholar
  11. 11.
    Larus, J., Kozyrakis, C.: Transactional memory. Communication of the ACM 51(7), 80–88 (2008)CrossRefGoogle Scholar
  12. 12.
    Marathe, V.J., Scherer III, W.N., Scott, M.L.: Adaptive software transactional memory. In: Proceedings of DISC (2005)Google Scholar
  13. 13.
    Riegel, T., Felber, P., Fetzer, C.: A lazy snapshot algorithm with eager validation. In: Proceedings of DISC (September 2006)Google Scholar
  14. 14.
    Riegel, T., Fetzer, C., Felber, P.: Time-based transactional memory with scalable time bases. In: Proceedings of SPAA (June 2007)Google Scholar
  15. 15.
    Saha, B., Adl-Tabatabai, A.-R., Hudson, R.L., Minh, C.C., Hertzberg, B.: McRT-STM: a high performance software transactional memory system for a multi-core runtime. In: Proceedings of PPoPP (2006)Google Scholar
  16. 16.
    Shavit, N., Touitou, D.: Software transactional memory. Distributed Computing 10(2), 99–116 (1997)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Lucas Charles
    • 1
  • Pascal Felber
    • 1
  • Christophe Gête
    • 1
  1. 1.Computer Science DepartmentUniversity of NeuchâtelNeuchâtelSwitzerland

Personalised recommendations