After a lot of re-designing, re-architecting, re-writing, re-re-writing we have come with an alpha of the all new BAM 2. Although, this is still an alpha, it will provide a good taste of things to come in the major BAM release. Here’s the (not so) official release note: WSO2 Business Activity Monitor (BAM) 2.0.0-Alpha is now available for download at [1]. ...
Recently, I read this post about Richard Stallman’s (RMS) visit to India. And read more about RMS’s visit impacted India. I read this very, very interesting thing that happened in Kerala. An excerpt from wikipedia: In August 2006 at his meetings with the government of the Indian State of Kerala, he persuaded officials to discard proprietary software, such as Microsoft’s, at state-run schools. ...
My talk on Business Activity Monitoring in your SOA deployment which I did at WSO2Con 2011 is available at https://www.youtube.com/watch?v=zZKeKGheVHc Summary: What is BAM? The 3 main sections of BAM. The revamp of WSO2 BAM concentrating on performance, scalability and customization.
This post discusses best practices when programming with the WSO2 Carbon platform, which is the base for all WSO2 products. Here are the main points discussed in this post: Do not hardcode compile time, run time dependencies and re-use properties in the root pom. Use OSGI Declarative Services Do not copy paste code, re-use code through OSGI, Util methods, ...
This should be straight forward, but it was not. So, I believe this blog will help others who just couldn’t modify that plist file. You can do a ‘chmod 777 Info.plist’ but still if you edit the file and try to save it, Mac OS doesn’t allow you to do it. So, the work around is to open the file, ...
When you think that you need to know what’s happening in your business or what’s happening your servers, you enter the monitoring problem. The monitoring problem starts with people just wanting to get a report of how many people are accessing my website. Then it usually evolves into how can I make more people come to my website. Google analytics, ...
Vim’s ability to execute commands from vim itself adds a great deal of productivity. Although, it’s debatable that it’s the best editor for Java, I made an attempt to work with maven3 inside vim and integrate it with vim’s quick fix list. Disclaimer: I’m not a vim expert, just an enthusiast. Please drop a comment as this tip is in ...
Producing middle ware that is both lean and enterprise worthy is a difficult job. It’s either non-existent or requires innovative thinking (a lot of it) and a lot of going back and forth with your implementations. Very risky business, but if you get it right, it puts you far ahead of anyone else. It’s why we thought of re-writing WSO2 ...
My team at WSO2 was able to release a 2nd alpha of our upcoming BAM 2.0. Do give it a spin. The release note is below: The WSO2 team is pleased to announce the release of version 2.0.0 – ALPHA 2 of WSO2 Business Activity Monitor. WSO2 Business Activity Monitor (WSO2 BAM) is a comprehensive framework designed to solve the ...
Apache Hadoop is a great framework for scalable computing This blog lists out the steps to build Hadoop source from a checkout from the trunk. I'm working on Mac OS X, so most the steps would apply to *nix users as well, with minor differences.Check out the source You can checkout the source using the following command:svn checkout http://svn.apache.org/repos/asf/hadoop/common/trunk/ hadoop-trunk Use Maven ...
Building a cache is standard practice in most programs to reduce the overhead of re-creating expensive objects. Using a concurrent Hash Map to build a thread safe cache is a widely user practice. Even though each method call of concurrent Hash Map is thread safe, it is cumbersome to re-do the necessary operations. Let me list these down: Compound operations ...
Google has come up with a fantastic service to analyze large amounts of data. It’s called BigQuery and it allows you to run analysis on big data on the cloud. As expected, the tool has a superb, intuitive web UI. The data analysis language uses SQL like queries. (Hive, anyone ). Have a look at the Big Query Tutorial, it ...
Federated analytics is a term I coined up to identify a specific capability offered by a data analytics platform. Federated analytics is the capability of joining various, distributed data sources and performing analytics as if they were a single data source. If you consider a case where you have http access logs, a customer details spreadsheet and a live ...
It was not until after a few years of being a dev that I understood why you need good unit tests. Unit tests are usually a pain, or so I thought. Why do you need to test the code, that you have already verified as working?? The problem comes when it’s maintenance time. And all code goes through maintenance either ...
Hadoop is a great piece of software. It is not original but that certainly does not take away its glory. It builds on parallel processing, a concept that’s been around for decades. Although conceptually unoriginal, Hadoop shows the power of being free and open (as in beer!) and most of all shows about what usability is all about. It ...
These are a few commands that I find very useful when faced with OSGI issues. 1. ss / ss <string> (abbr. for short status) Lists down the state of all installed bundles or if followed by a string, does a wildcard match of that string. Useful for initial investigation of checking whether a bundle is active, installed or not present ...
I wish I found a post similar to this, listing the practical problems of designing a data model using Cassandra (or other NoSQL DB) and with corresponding answers to overcome them. Don’t misinterpret what I’m saying, there are tons of good material out there, giving good introductory tutorials (WTF is a super column – An intro to the Cassandra data ...
If you are writing a web service using Java and deploying it in Axis2, you need to follow the steps below to propagate the exception properly to the client side. Let’s say you have an exception you want to throw with a respective error message. Your method would look something like; public String foo throws MyException { if (true) { ...