Setting up a Free Cloud-based Source Control Repository using GitLab

For many developers or small teams, it’s ideal to have a free cloud-based source control system for distributed development work. The benefits are obvious, most people enjoy working at home or creating something that may really excite themselves in after hours. This article introduces how to set up such an environment for your development work. Hope you enjoy it!

GitHub is hot but not free for private projects; Heroku is not free for any project with more than 1 contributor.

In this case, GitLab is a lot better. It offers free unlimited repositories for both public and private projects, 10GB disk space per project, unlimited collaborators and complete project management solutions. This is why GitLab.com is our chosen cloud repository platform.

Here’s the steps:

  1. Sign up to GitLab...
Read More

How to Improve Data Replication Performance Significantly

Recently we achieved a project regarding large data replication from Oracle database to PostgreSQL. We are facing the challenge that we have very limited window to complete the large volume data loading on daily basis.

Initially we tried PostgreSQL loading tool psql, it took 4.5 hours to complete transferring approx. 250,000 records. database-master-masterBut regular business operations require a lot shorter time to transfer more data, e.g. complete 1 million records replication in 30 minutes. Based on the performance of psql (which is very likely single thread basis), to complete 1 million records replication needs 18 hours (1,080 minutes)! – which is not feasible from business perspectives.

We built up an application based on Quartz Scheduler which does table to table asynchronous replication in nearly rea...

Read More

Building up High-availability Clustered Application

Many organizations need enterprise level clustered application to maintain high availability or perform non-stop jobs. Quartz Scheduler is an excellent option to assist on this.

Quartz Scheduler is a Java-based open source library which is freely available under Apache license 2.0. The latest version is 2.2.3. It requires two components for job scheduling, trigger and job.quartz

Trigger can be cron-expression based time. Job can be the Java implementation of Quartz job interface. Quartz Scheduler manages triggers and jobs through database tables. With the download pack, Quartz offers database schema scripts for 22 databases, from Oracle, SQL Server, MySQL to PostgreSQL, etc.

Quartz Scheduler has a bold feature: supporting clustered instances in master-master mode...

Read More