A great summary.
Thursday, December 9, 2010
Wednesday, December 1, 2010
Commonly used patterns for designing Scalable System
Designing a scalable system can be a tricky thing, before you jump into action check out a great post by Ricky Ho where he describes the eight common design patterns:
- Load Balancer
- Scatter and Gather
- Result Cache
- Share Space
- Pipe and Filter
- Map Reduce
- Bulk Synchronous parallel
- Execution Orchestrator
I think Rick done a wonderful job. Thanks ! Can you think of anything else?
Wednesday, August 11, 2010
Adventures with ØMQ and Java : Installation
ZeroMQ - "fastest. Messaging. Ever." - well we'll see about that :)
That's it - Happy messaging!
Anyway, first thing first...we need to install ZeroMQ and ZeroMQ Java bindings in my case.
I am using Ubuntu 10.4:
First. install ZeroMQ ( follow the instruction from the webiste http://www.zeromq.org/area:download#toc1)
First. install ZeroMQ ( follow the instruction from the webiste http://www.zeromq.org/area:download#toc1)
Next, install Java Bindings (read this http://www.zeromq.org/bindings:java) -
Important, make sure your JAVA_HOME is set to JDK location before you run autogen.sh script run ldconfig -v at the end if you get:
"...cannot open shared object file: No such file or directory"when you trying to run your application (thanks to this post)
Don't forget to include :
java -Djava.library.path=/usr/local/lib
That's it - Happy messaging!
Thursday, August 5, 2010
Tip: Akka 0.9.1 release (Scala 2.8) with Netbeans 6.9 (scala plugin)
I love Scala, for many different reasons - Scala actors is one of them.
However, it seems that Scala does not have a built in support for alternative serialisation (e.g., Google Protocol Buffers)
So I've decide to try Akka:
Personally, I think SBT is awesome, really do but it doesn't help me when I want to work with Netbeans IDE, not by much anyway (in my opinion).
Anyway, so back to the tip part: If you want to include Akka jars to your Netbeans project you need to follow the list of Akka's core jar files:
This didn't work for me until I've also included akka-jta-X.jar and akka-core-X.jar.
Hope it helps and saves you some valuable coding time :)
If you had better luck or other experiences compiling Akka based project on Netbeans 6.9, please do comment.
However, it seems that Scala does not have a built in support for alternative serialisation (e.g., Google Protocol Buffers)
So I've decide to try Akka:
Akka supports using Google Protocol Buffers to serialize your objects. Protobuf is a very efficient network serialization protocol which is also used internally by Akka. The remote actors understand Protobuf messages so if you just send them as they are they will be correctly serialized and unserialized. - from Akka websiteSounded good to me, so I've tried to compile some Akka sample code with Netbeans 6.9 IDE (did I mention that I also love Netbeans? well I do). Akka website gives you instructions how to set-up your developing environment. Basically you have several options:
- MVN option (maybe next post)
- Simple Build Tool (SBT)
- Add Akka jars to classpath
Personally, I think SBT is awesome, really do but it doesn't help me when I want to work with Netbeans IDE, not by much anyway (in my opinion).
Anyway, so back to the tip part: If you want to include Akka jars to your Netbeans project you need to follow the list of Akka's core jar files:
These are used in the core of Akka, so you need these.
- configgy-X.jar
- netty-X.jar
- protobuf-java-X.jar
- multiverse-alpha-X.jar
- jsr166x-1.0.jar
- geronimo-jta_1.1_spec-1.1.1.jar
- jgroups-2.9.0.GA.jar
This didn't work for me until I've also included akka-jta-X.jar and akka-core-X.jar.
Hope it helps and saves you some valuable coding time :)
If you had better luck or other experiences compiling Akka based project on Netbeans 6.9, please do comment.
Monday, July 19, 2010
myregexpr - regular expression just got easier
I am working on parsing a large set of linked data. It is tricky as you end up trying to find the right regex pattern to fit them all - sounds impossible!? Well, we'll see about that :)
Anyway, I would like to point you to a great tool that comes as a Java applet and as an Eclipse plug-in
http://myregexp.com/eclipsePlugin.html
It allows you to specify a regex pattern and enter a sample text that highlights the matched sections - cool!
Well, back to parsing now...
Anyway, I would like to point you to a great tool that comes as a Java applet and as an Eclipse plug-in
http://myregexp.com/eclipsePlugin.html
It allows you to specify a regex pattern and enter a sample text that highlights the matched sections - cool!
Well, back to parsing now...
Sunday, March 28, 2010
Surfing the Google Wave
Last Tuesday, I've attended on of Google's Tech talks on the new GO language and Google Wave. As to GO language, well I wasn't that impressed, but I'll probably need to dedicate a separate post for that.
Google Wave talk was ok, I mean it was short, but it was enough to get a general idea on the topic. I believe Google Wave as communication tool has a lot of potential, but even more as a collaboration one. Inspired by the talk I am now looking at implementing my first Google Wave robot and extension the API is still very limited, but the new version is much better than the previous one....
Google Wave talk was ok, I mean it was short, but it was enough to get a general idea on the topic. I believe Google Wave as communication tool has a lot of potential, but even more as a collaboration one. Inspired by the talk I am now looking at implementing my first Google Wave robot and extension the API is still very limited, but the new version is much better than the previous one....
Tuesday, March 9, 2010
Okular - Ubuntu pdf viewing just got better
How often you find yourself reading a paper and having the sudden urge to highlight something, to make a comment or just draw a circle around the text.
Well, today I've discovered Okular that has all of the above features and more:
- from Okular website
ENJOY! :)
Well, today I've discovered Okular that has all of the above features and more:
"Okular is a universal document viewer based on KPDF for KDE 4.
Its development began as part of Google's Summer of Code program. The description of the project is located at KDE Developer's Corner. Okular combines the excellent functionalities of KPDF with the versatility of supporting different kind of documents, like PDF, Postscript, DjVu, CHM, and others.
The document format handlers page has a chart describing in more detail the supported formats and the features supported in each of them."
- from Okular website
ENJOY! :)
Sunday, January 31, 2010
Kademlia implementation
Up until now, I have used opedChord as my DHT middleware. It is written in Java and Scala, as previously posted has a good compatibility with it, however, it limits Scala functionalities. I have decided to try an implement my own DHT (Kademlia).
It is not a common practice to implement something yourself, if there is a perfectly good open source project available. However, I believe I can learn a lot from the experience both about DHTs, in particular Kademlia and Scala of cause.
It is not a common practice to implement something yourself, if there is a perfectly good open source project available. However, I believe I can learn a lot from the experience both about DHTs, in particular Kademlia and Scala of cause.
Subscribe to:
Posts (Atom)