Aleksandar Seovic

Software Developer and Author

Aleksandar Seović is founder and managing director at S4HC, Inc., where he leads professional services practice. He works with customers throughout the world to help them implement innovative solutions to complex business and technical problems.

Aleksandar lead the implementation of Oracle Coherence for .NET, a client library that allows applications written in any .NET language to access data and services provided by Oracle Coherence data grid. He was also one of the key people involved in the design and implementation of Portable Object Format (POF), a platform-independent object serialization format that allows seamless interoperability of Coherence-based Java, .NET and C++ applications.

Aleksandar is the author of Oracle Coherence 3.5 (Packt Publishing, 2010) and Oracle ACE Director for Fusion Middleware. He frequently speaks about and evangelizes Coherence at conferences, Java and .NET user group events, and Coherence SIGs.

Presentations

Performance matters. If your web site or application is unresponsive, users will either go to competitor’s site or hate the application they are forced to use.

In this session we will discuss various performance optimization techniques you can use to improve performance of your web applications and ensure that your users are happy. We will cover the whole architecture stack by discussing not only how to optimize server-side code and persistence layer, but how to optimize the front end as well.

While many developers still think of in-memory data grids as clustered caches, in reality they are much more and provide a solid foundation for the next generation of scalable web and enterprise applications.

In this session we will briefly discuss standard caching features of in-memory data grids and quickly move on to some of the truly amazing and revolutionary features such as grid queries and aggregations, parallel and in-place processing, and real-time events.

You might think that your application scales well, but what will happen if you deploy it in production and it crashes and burns as the number of users increases. Whether it crashes completely or “just” becomes extremely slow, the end result is the same – it is essentially unavailable to the users.

To avoid that, you need to stress the application before the deployment and measure how well it performs under load and how well it scales.

In this session we will discuss load testing in general and talk about what you need to measure, how you need to measure it, and what conclusions you can draw from the results.

Building scalable, highly-available applications that perform well is not an easy task. These features cannot be simply “bolted” onto an existing application – they have to be architected into it. Unfortunately, the things we need to do to achieve them are often in conflict with each other, and finding the right balance is crucial.

In this session we will discuss why scaling web applications is difficult and will look at some of solutions we have come up with in the past to deal with the issues involved. We will then look at how in-memory data grids can make our jobs easier by providing a solid architectural foundation to build our applications on top of.

If you are new to in-memory data grids, you are guaranteed to leave the presentation eager to learn more. However, even if you are already using one you will likely walk out with a few ideas on how to improve performance and scalability of your applications.

Books

Oracle Coherence 3.5

by Aleksandar Seovic, Mark Falco, and Patrick Peralta

  • This title covers Coherence features progressively, from simple to more advanced topics, and provides best-practice guidance on when and how to use each. Numerous examples are provided throughout the book that will help you become familiar with Coherence APIs. You will also be able to reuse many of the sample classes or mini-frameworks encapsulating Coherence best practice and providing missing features directly within your own applications. This should significantly increase your productivity when developing Coherence applications. Finally, a sample application that you can download from the companion web site will show you how to use Coherence as part of the broader infrastructure stack, including Spring Framework and Hibernate, as well as how to access Coherence from a WPF-based .NET desktop application. This book is written for architects and developers responsible for the design and development of Internet or Enterprise applications (web-based or otherwise) that need to scale to support a large number of simultaneous users, while at the same time providing fast response times and high availability. The book assumes a solid knowledge of Java, and a familiarity with Domain Driven Design (DDD) is helpful.