
Ada beberapa pilihan ketika Anda ingin memberikan layanan untuk aplikasi berbasiskan ruby on rails. Salah satunya adalah dengan menjalankan ruby on rails menggunakan thin. Di tulisan ini akan dibahas cara instalasi dan konfigurasi sederhana seputar thin.
Thin mirip seperti mongrel atau mongrel_cluster, yang menjalankan webserver untuk aplikasi ruby on rails untuk diproxy lagi dari webserver utama seperti nginx, lighttpd atau apache.
Sebelum kita lanjutkan, silakan Anda instal ruby on rails seperti yang sudah saya tuliskan caranya di artikel sebelumnya, Instalasi Ruby on Rail di Ubuntu Hardy.
Instalasi
Menginstal thin sangat mudah, kita akan menginstal menggunakan rubygems. Tapi sebelumnya pastikan paket build essential sudah terinstal.
sudo apt-get install build-essential sudo gem install thin
Periksa gem yang sudah terinstal,
sudo gem list
Kira-kira gem yang terinstall adalah seperti di bawah ini,
actionmailer (2.3.3) actionpack (2.3.3) activerecord (2.3.3) activeresource (2.3.3) activesupport (2.3.3) daemons (1.0.10) eventmachine (0.12.8) rack (1.0.0) rails (2.3.3) rake (0.8.7) thin (1.2.2)
Menjalankan dan Mematikan Thin
Untuk menjalankan thin, masuk ke direktori aplikasi rails lalu jalankan perintah berikut.
thin start -d
Opsi -d adalah untuk menjalankan thin di background. Tanpa opsi itu, thin akan mirip dengan webbrick, yang memerlukan terminal tetap terbuka agar aplikasi rails bisa terus dijalankan. Jika Anda menjalankan tanpa opsi -d, maka untuk menghentikannya tinggal tekan CTRL C.
Untuk mematikan, Anda harus berada di direktori instalasi aplikasi rails. Lalu jalankan perintah berikut,
thin stop
Memilih Environtment
Secara default, thin akan memilih environment development. Jika Anda ingin menjalankan untuk environment lain, misalnya production tinggal jalankan opsi tambahan, seperti pada contoh di bawah ini.
thin start -d -e production
Mode Cluster
Thin bisa dijalankan dalam mode cluster. Misal untuk menjalankan 3 buah cluster thin, Anda bisa menjalankan perintah berikut (seperti biasa, jalankan di direktori instalasi aplikasi rails).
thin start --servers 3
Dan untuk mematikannya
thin stop --servers 3
Skrip Init
Tadi kita sudah mengetahui cara menjalankan thin secara manual. Sekarang kita akan membuat skrip init, agar thin bisa dijalankan secara otomatis saat sistem di boot.
Buat skrip init:
sudo thin install
Kemudian aktifkan di runlevel defaults
sudo /usr/sbin/update-rc.d -f thin defaults
Selanjutnya, kita harus memilih aplikasi rails mana yang akan dijalankan.
Misal, aplikasi rails terinstal di /opt/testaplikasi/
sudo thin config -C /etc/thin/testaplikasi.yml -c /opt/testaplikasi/ --servers 3 -e production
Sekarang kita lihat konfigurasi yang baru saja dibuat,
cat /etc/thin/testaplikasi.yml
Isinya kira-kira seperti di bawah ini
pid: tmp/pids/thin.pid log: log/thin.log timeout: 30 max_conns: 1024 port: 3000 max_persistent_conns: 512 chdir: /opt/testaplikasi environment: production servers: 3 address: 0.0.0.0 daemonize: true
Dan jika Anda ingin mengubah beberapa parameter, Anda tinggal sunting berkas konfigurasi tadi. Dalam contoh di atas, saya mengaktifkan 3 buah server thin, yang akan dijalankan setiap sistem di boot.
Kesimpulan
Menginstal dan mengkonfigurasi thin sangatlah mudah. Apa yang tertulis di artikel ini adalah dasar untuk menjalankan aplikasi rails menggunakan thin. Dalam proses deployment sebenarnya, biasanya diperlukan webserver utama yang akan di set proxy ke aplikasi thin ini.
Proses proxy dari Nginx, Apache atau Lighttpd akan dibahas dalam artikel terpisah.
Ruby on Rails di Ubuntu Hardy
- Instalasi Ruby on Rails di Ubuntu Hardy
- Instalasi Thin untuk Ruby on Rails di Ubuntu Hardy
- Instalasi Passenger (mod_rails) di Ubuntu Hardy
- Instalasi Mongrel dan Mongrel Cluster di Ubuntu Hardy





