Showing posts with label distributed computing. Show all posts
Showing posts with label distributed computing. Show all posts

Monday, March 14, 2011

System Performance Optimization Basics on the Resource Level

Before moving on to optimizing your application, take a look first at infrastructure or resource level whether the problem lies in there. There are four areas that directly attribute to your system performance at the resource level. You should derived your optimizations based on them.

CPU (Central Processing Unit)

Processor speed dictates how many instructions per second can you execute per second which is measured as cycles/second or hertz (i.e 2.3 Ghz). The bigger the number the better the performance. But 1 processor can be used 1 at a time only. There is no such this as percent usage. The CPU utilization percentage you usually see only indicate how long a process was seen at a given time period. Now, parallel processing is common and multi-core CPUs are available. The number of processor cores gives you the number of processes that can be run at the same time. This can be fully utilized if your system uses multi-processing and multi-threading paradigms.

Thursday, May 20, 2010

Yum Install MongoDb (RPM package) on CentOS/RHEL and Fedora

To all users of MongoDb out there, you're life has been made easier. Mongodb is now distributed as a RPM package and it comes together with a yum repo. Cool huh?

Okay, so before we discuss how it's done, let's add the details to your yum configuration first. If you're using RHEL / CentOS, the repo configurations are usually located at /etc/yum.repos.d.

Tuesday, April 27, 2010

Introduction to Service-Oriented Architecture

Service-Oriented Architecture have been a discussion even as early as late 90s. This system architecture is meant to expose macro-level services that can be consumed by business directly instead of the micro-level software components like classes. It also encompasses abilities of being able to distribute and aggregate services from different topographical locations through the internet. Imagine a system similar to previous software architectures and technologies like modular programming, component-based design, object-oriented programming etc, except that it can be distributed across different technologies, platforms, network and location given that they should have common interfaces promoting interoperability.