My Super WordPress Site

Posted on Updated on

Waktu itu gue disuruh buat website yang bisa ngindex berita dari berbagai sumber, nah terus gue bingung kan mau bikin dari scratch atau pake cms apa gitu. Lalu kepikiran deh pake wordpress karena udah banyak plugin2 dan core engine yang berguna untuk posting dengan multiple category dan tagging. Nah setelah gue putusin untuk make wordpress, terus mulai deh gue bikin ArsipBerita.com menggunakan wordpress.

ArsipBerita.com adalah sebuah website yang tugasnya meng-arsip berita dari berbagai sumber dengan waktu yang hampir real time. Website ini sudah berumur sekitar 1 tahun dan ketika post ini ditulis saat ini arsip berita sudah meng-index ratusan ribu berita dan mempunyai sekitar 25000 s/d 30000 Pages View / hari.

Kok bisa sih wordpress dipake untuk ngindex berita, gimana cara nya tuh?

gue buat crawler untuk jalan2 ke sumber2 berita dan langsung di arsip ke website Arsip Berita.

Gimana sih topologi server-nya Arsip Berita sampe bisa nahan banyak pengunjung gitu?

1 Server Web – running Apache (untuk serving php) dan Nginx (untuk serving static file images, css, js).

2 Server MySQL – Master dan Slave untuk load balancing.

1 Server SphinxSearch – untuk indexing post nya arsip berita dikarenakan banyak pengunjung yg menggunakan fitur search untuk mencari berita.

Optimisasi apa aja yang sudah dilakukan untuk Arsip Berita?

  1. Menggunakan Wp-Super-Cache untuk static page caching.
  2. Menggunakan Percona/MariaDB build untuk MySQL-nya dan engine data xtraDB.
  3. Menggunakan custom auto Tag plugin berdasaarkan most relevant keyword yang ada di dalam konten berita-nya untuk membantu pengelompokan berita.
  4. Menggunakan Wp-Minify untuk menghemat bandwidth dengan cara menghilangkan extra white-space di dalam html yg ditampilkan ke user.
  5. Menggunakan FreeBSD dan Linux untuk OS Server 🙂
  6. Tweaking macem2 config dan system file berdasarkan trial-n-error sampe dapet hasil yang maksimal.
  7. Tweaking dan modifikasi wordpress core supaya lebih responsif ketika sudah mempunyai post yang besar.

Apache Benchmark Result:

debian:~# ab -n 10000 -c 10 http://arsipberita.com/
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking arsipberita.com (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
Completed 6000 requests
Completed 7000 requests
Completed 8000 requests
Completed 9000 requests
Completed 10000 requests
Finished 10000 requests

Server Software:        Apache/2.2.11
Server Hostname:        arsipberita.com
Server Port:            80

Document Path:          /
Document Length:        50291 bytes

Concurrency Level:      10
Time taken for tests:   4.727 seconds
Complete requests:      10000
Failed requests:        0
Write errors:           0
Total transferred:      506790000 bytes
HTML transferred:       502910000 bytes
Requests per second:    2115.41 [#/sec] (mean)
Time per request:       4.727 [ms] (mean)
Time per request:       0.473 [ms] (mean, across all concurrent requests)
Transfer rate:          104694.34 [Kbytes/sec] received

Connection Times (ms)
min  mean[+/-sd] median   max
Connect:        0    0   0.1      0       3
Processing:     2    4   1.1      4      20
Waiting:        1    2   0.9      2      18
Total:          2    5   1.1      4      21

Percentage of the requests served within a certain time (ms)
50%      4
66%      5
75%      5
80%      5
90%      6
95%      6
98%      8
99%      9
100%     21 (longest request)

Ya udah segini aja dulu ceritanya, kalau mau coba performa Arsip Berita, langsung aja ke ArsipBerita.com.

PS: Server Arsip Berita ada di Indonesia, bottle-neck nya cuman bandwidth international nya aja yg terbatas jadi kurang wuus2 kalo di akses dari luar negeri 😦

UPDATE 11/10/2013
Project-nya udah mati karena gue udah kerja di tempat lain.

Advertisements

14 thoughts on “My Super WordPress Site

    exzant said:
    December 15, 2010 at 6:20 am

    Mantab om teknik nya..
    btw, kok ga ada live link ke source ya ? apakah yg spt itu aman ?

    moshimon responded:
    December 15, 2010 at 6:54 am

    memang tidak ada live link, tapi ada tulisan di bawah artikel-nya

    source: sumbernya

    geblek said:
    December 15, 2010 at 7:47 am

    keren gan, coba kalau di share tips membuatnya lebih keren nih 🙂

      moshimon responded:
      December 17, 2010 at 3:53 pm

      mungkin nanti ya kapan2 di bahas 🙂

    Brian James said:
    December 15, 2010 at 12:21 pm

    waduh…kelas berat ah si bos ini:), main2 di servernya itu lo, ilmunya ngga sampe saya segetu:). Boleh dong bagi2 confignya utk optimalisasi, hehe, terutama database dan apache. btw kok pk 2 server bro? apache ma nginx?

      moshimon responded:
      December 17, 2010 at 3:54 pm

      sementara webservernya masih 1, tapi running 2 daemon, yaitu apache dan nginx.

      apache bertugas untuk handle php.

      nginx untuk serving file images, css, js.

      karena nginx sangat hemat resource untuk serving file static bro.

    Sebuah Tips said:
    December 16, 2010 at 4:49 pm

    wah, kelas super ini nih, ane kagak ngerti :hammers

    aladiw said:
    December 18, 2010 at 2:46 pm

    saya menyukai optimalisasi wordpress..bs bagi2 tipsnya gan.. 🙂

    prilude.com said:
    December 18, 2010 at 3:15 pm

    keren gan..jadi pingin buat… 🙂

    AZ said:
    December 20, 2010 at 1:57 pm

    sumber beritanya tidak dicamtumkan dari website mana. hanya nama penulis saja. contoh di otomotif yang hampir semua berita ambil dari http://www.otomotifnet.com. awas bos, kena somasi!!!

      moshimon responded:
      December 21, 2010 at 10:28 am

      untuk setiap berita yang diambil kita tulis source nya, kebetulan untuk berita yg diambil dari otomotifnet kita kasih tag

      source: otonews

      dan sekarang sudah dirubah menjadi

      source: OtomotifNet

      thx.

    Zoelis said:
    December 27, 2010 at 10:13 am

    Apakah cukup dgn mencantumkan source-nya maka diperbolehkan? Apa tidak sebaiknya, di bagian source dikasih link menuju website pemilik artikel. minimal si pemilik konten tdk 100% dirugikan

      moshimon responded:
      December 27, 2010 at 12:48 pm

      arsipberita.com memang sifatnya untuk mengindex berita, kita punya fitur advanced search yg tidak dipunyai situs lain nya, dan sudah terbukti banyak user yg memakai fitur search yg gue bikin.

      gue rasa dengan memberikan informasi berupa kata2 atau text tentang sumber nya dengan nama media nya, itu sudah cukup memberikan informasi bahwa artikel bersumber dari mana, seperti yahoo pun ngga memberikan text link atau situs besar lain nya.

      mungkin nanti kalo kita udah punya design website yg bagus akan kita kasih icon link seperti di yahoo news. tapi ini design aja masih berantakan, karena hanya difokuskan untuk ‘searching dan indexing’ only.

      thx.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s