Java

Why Unowned Relationships Make More Sense With App Engine Datastore

Reading Time: 4 minutes A month back we started migrating an enterprise time keeping and invoicing system to GAE. Initially, the application was deployed at the enterprise on tomcat. The opportunity was to port the application to GAE and utilize the public cloud space. The choice about GAE was based on the expected ease of migration and then not having to worry about any infrastructure maintenance. As you would Continue Reading

Intelligent Monitoring With Premon

Reading Time: 2 minutes In our last post, we discussed how intelligence can be built into the monitoring systems. This helps in decreasing the burden of system monitoring and allows administrators and stakeholders to focus on relevant information. In this post we would introduce Premon and look at some of the features that it provides to make monitoring easy and efficient. Premon complements, it does not compete: Premon does Continue Reading

Building Intelligence Into Monitoring

Reading Time: 3 minutes In our last post, we discussed the pitfalls of the traditional monitoring solutions. We also touched upon a possible solution to take care of the issues. Let us try to analyse that solution in some more detail now. Intelligent Monitoring (IM) should be able to decrease the burden of system monitoring in multiple ways. An IM system should be able to listen to multiple data Continue Reading

Unit Testing Maven Based JPA Application on GAE

Reading Time: 3 minutes Recently, we started porting a complex enterprise timesheet and invoicing application to Google App Engine. We would talk about the strategy that we are following as a part of separate post but in this post let us look at how we can unit test JPA code effectively in our local environment. By the way, the application that we are porting does not use JPA but Continue Reading

Remote Debugging Google App Engine Application on Eclipse

Reading Time: 2 minutes Sometimes it is handy to debug our application source code even when it is executing outside our IDE. This blog will explain how can we remotely debug a web application project developed in Google App Engine on eclipse IDE. The linux command to start web application on Google App engine development application server is [sourcecode language=”bash”] dev_appserver.sh <exploded WAR directory path> [/sourcecode] The command runs Continue Reading

Achilles Heels’ of Traditional Monitoring Software

Reading Time: 3 minutes In the last post on the state of monitoring software we looked at how monitoring was done in the past, how it is being done now and where does it need to go. In this post let us try to look at the concrete weakness areas of the current Monitoring software solutions. Administrators have long relied upon monitoring software to analyze the current state of Continue Reading

Open Closed Principle in Action

Reading Time: 4 minutes Ivar Jacobson stated that all software entities change during their life cycle and this must be borne in mind when developing systems which are expected to last longer than the first version. A design principle which helps you with long lasting software is OCP (Open Closed Principle). Open Closed Principle was coined by Bertrand Meyer. It states that “Software entities should be open for extension Continue Reading

Unit Testing Esper Statements

Reading Time: 2 minutes Esper Statements would allow the flow of events to pass through them. Usually what would you like to unit test for a basic scenario? The valid events are being passed to the listener The invalid events are filtered out and are not passed to the listener The batching time, if defined for the statement, is being adhered to. Let us quickly look at what a Continue Reading

Combining CEP with Grid Computing

Reading Time: 4 minutes In the last few posts, we have talked about Complex Event Processing (CEP), have gone through a simple case of CEP and have also looked at Grid Computing with GridGain. In this post, we are going to see how you can integrate both the paradigms together. There are 2 ways to look the combination of CEP and Grid. 1) CEP does its job and passes Continue Reading

CEP with Esper

Reading Time: 5 minutes In the last post we looked at the basics of Complex Event Processing (CEP). In this post we are going to give that a try using the community edition of Esper which is an open source event stream processing (ESP) and event correlation engine (CEP). Let us assume a simple scenario. Say you want to go from Foster City to Redwood city on US 101. Continue Reading

Complex Event Processing

Reading Time: 3 minutes In the last post, we saw the difference between a Rule Engine, Event Stream and Complex Event Processing. In this post, we would try to dig a bit deeper into what is CEP. There are a lot of events happening in the enterprise. If these events are routed through an intelligent system that can find the correlation between the events and then take proactive action Continue Reading

Let Us Grid Compute

Reading Time: 3 minutes Since early times oxen were used for heavy pulling. Sometimes the logs were huge and an oxen could not pull it. The smart people from the earlier times did not build a bigger ox. Instead they used two or three together. Simple, isn’t it? It is the same concept which has gone behind the use of multiple commodity hardware linked together to provide super processing Continue Reading