Pada Postingan kali ini, saya akan membagikan cara meng-optimize File PHP anda. Emangnya cuma HTML, CSS, dan JavaScript yang bisa hehehe.
Sebagai web programmer tentu saja anda ingin membuat web site yang cepat di load dan tidak membebani kinerja server.
Berikut adalah tips untuk mengoptimalkan kode-kode php anda sehingga kode php anda dapat lebih cepat di load dan di eksekusi oleh server dan tidak membebani atau menggunakan terlalu banyak resource yang disediakan oleh server.
1. Penggunaan Variable
1.1 Penggunaan Variable :
– Mengoperasikan variable yang sudah di set lebih cepat 376% dibandingkan menggunakan variable yang belum di set.
– Menggunakan constant lebih lambat 146% di banding menggunakan variable.
– Menggunakan lokal variable 9.9% lebih cepat di banding menggunakan global variable.
1.2. Fungsi String
– Menggunakan ‘string’ lebih cepat 0.26% di banding menggunakan “string”
– Menggunakan “string” lebih cepat 4% di banding menggunakan sintak HEREDOC
– Menggunakan “string\n” lebih cepat 108% di banding menggunakan ‘string’.”\n”
– Menggunakan ‘string’.$var lebih cepat 28% di banding menggunakan “string$var”
– Menggunakan ‘string ‘.$var.’ string’ lebih cepat 55% di banding menggunakan sprintf(‘string %s string’, $var)
– Menggunakan “\n” lebih cepat 70% di banding menggunakan chr(10)
– Menggunakan strnatcmp() lebih cepat 4.95% di banding menggunakan strcmp()
– Menggunakan strcasecmp() lebih cepat 45% di banding menggunakan preg_match()
– Menggunakan strcasecmp() lebih cepat 6.6% di banding menggunakan strtoupper($string) == “STRING”
– Menggunakan strcasecmp() lebih cepat 13% di banding menggunakan strnatcasecmp()
– Menggunakan strtr($string, $string1, $string2) lebih cepat 10% di banding menggunakan str_replace()
– Menggunakan str_replace() lebih cepat 161% di banding menggunakan strtr($string, $array)
– Menggunakan stristr() lebih cepat 10% di banding menggunakan stripos()
– Menggunakan strpos() lebih cepat 9.7% di banding menggunakan strstr()
– Menggunakan isset($str{5}) lebih cepat 176% di banding menggunakan strlen($str) > 5
– Menggunakan str_replace($str, $str, $str) 2x lebih cepat 17% di banding menggunakan str_replace(array, array, string)
– Menggunakan list() = explode() lebih cepat 13% di banding menggunakan substr($str, strpos($str))
1.3. Fungsi Numeric
– Menggunakan ++$int lebih cepat 10% di banding menggunakan $int++
– Menggunakan (float) lebih cepat 48% di banding menggunakan settype($var, ‘float’)
1.4. Fungsi Array
– Menggunakan list() = $array; lebih cepat 3.4% di banding menggunakan assigning each variable
– Menggunakan in_array() lebih cepat 6% di banding menggunakan array_search
– Menggunakan isset($array[$key]) lebih cepat 230% di banding menggunakan array_key_exists()
– Menggunakan !empty($array) lebih cepat 66% di banding menggunakan count($array)
1.5. Fungsi Output
– Menggunakan echo lebih cepat 5% di banding menggunakan print()
– Menggunakan echo ‘ ‘.’ ‘ lebih cepat 0.44% di banding menggunakan echo ‘ ‘,’ ‘
2. Function dan Method
2.1. Function dan Calling Method
– Menggunakan call_user_func() lebih lambat 54% di banding langsung memanggil function tersebut
– Menggunakan call_user_func() lebih lambat 59% di banding langsung memanggil sebuah static method
– Menggunakan call_user_func() lebih lambat 65% di banding langsung memanggil sebuah object method
– Menggunakan function() lebih cepat 119% di banding menggunakan static::method()
– Menggunakan $this->method() lebih cepat 116% di banding menggunakan static::method()
– Menggunakan declared static::method() lebih cepat 93% di banding menggunakan static::method()
2.2 Fungsi Umum
– Menggunakan Pass by reference lebih cepat 3% di banding menggunakan Return by reference
– Menggunakan No reference lebih cepat 1.7% di banding menggunakan Return by reference
3. Storage (Penyimpanan)
3.1 File System
– Menggunakan Scandir() lebih cepat 4% di banding menggunakan opendir(), readdir(), closedir()
– Menggunakan file_get_contents() lebih cepat 52% di banding menggunakan fopen(), fread(), fclose()
– Menggunakan file_get_contents() lebih cepat 39% di banding menggunakan implode(“\n”, file())
3.2 Fungsi Cache
– Menggunakan xcache_set() lebih cepat 1,645% di banding menggunakan file_put_contents()
– Menggunakan xcache_set() lebih cepat 646% di banding menggunakan memcache->set()
– Menggunakan xcache_get() lebih cepat 1,312% di banding menggunakan memcache->get()
4. Fungsi-Fungsi Lainnya
4.1. Fungsi Umum (General)
– Menggunakan if elseif else lebih cepat 0.78 % di banding menggunakan switch
– Menggunakan @Error supression lebih lambat 235% di banding tidak menggunakannya
– Menggunakan $_SERVER[‘REQUEST_TIME’] lebih cepat 59% di banding menggunakan time()
– Menggunakan min(array) lebih cepat 16% di banding menggunakan min(int, int)
– Menggunakan require_once() lebih cepat 24% di banding menggunakan include()
– Menggunakan require_once() sama cepat dengan menggunakan perintah include_once()
– Menggunakan include(relative path) lebih cepat 37% di banding menggunakan include(full path)
4.2. Regular Expressions
– Menggunakan str_replace() lebih cepat 40% di banding menggunakan preg_replace()
– Menggunakan ereg(‘regex’) lebih cepat 17% di banding menggunakan preg_match(‘/regex/’)
– Menggunakan preg_match(‘/regex/i’) lebih cepat 68% di banding menggunakan eregi(‘regex’)
=====================================================
MySQL Tips – Optimize How To
Source : romisatriawahono.net & supersoft.web.id
Untuk mengoptimalisasi server trafic tinggi, paling tidak ada 3 titik. Apache, MySQL, PHP. Sebenarnya ada banyak titik yang harus di optimalisasi, tapi sudah cukup signifikan membuat laju komputer server di trafic tinggi.
1. OPTIMISASI MySQL
Untuk server yg melaju di trafic tinggi sering yang down duluan selalu MySQL dan bukan Apachenya, jadi dari sini kita gerak. Optimalisasi MySQL biasanya hanya terpusat di file /etc/my.cnf. Yang cukup penting adalah setting variable max_connections, key_buffer dan table_cache. Setting variable lain selengkapnya seperti di bawah, beberapa nyontek dari tulisan yang ada di list referensi.
max_connections = 500
key_buffer = 256M
max_allowed_packet = 1M
table_cache = 512
sort_buffer_size = 2M
read_buffer_size = 2M
myisam_sort_buffer_size = 64M
thread_cache = 8
query_cache_size = 512M
Sedangkan optimisasi table-table databasenya sendiri bisa menggunakan PhpMyadmin, khususnya fitur Optimize Table.
2. OPTIMISASI APACHE
Optimisasi lengkap ada di httpd.apache.org/docs/1.3/misc/perf-tuning.html.
3. Optimalisasi PHP
Optimalisasi PHP bisa juga tergantung dari script yg di develop. Dengan script yang simple bisa membuat kerja server cepat prosessnya.
=====================================================
Tambahan dari saya :
Untuk Optimisasi MySQL, saya menggunakan AppServ 2.5.9 (MySQL Database Version 5.0.45) di localhost dan nama filenya adalah my.ini yg terletak di AppServ\MySQL\my.ini.
Untuk Optimisasi PHP, jika kita melakukan query dengan data yang sudah mencapai jutaan, biasanya kita menemui masalah dengan executing time. Maksimum waktu eksekusi ini di PHP defaultnya adalah 30 detik ( max_execution_time = 30). Untuk mengatasi masalah ini dapat diganti max_execution_time = 60 (contoh maksimum waktu untuk eksekusi adalah 60 detik) di php.ini, tetapi untuk masalah executing_time ini, saya lebih suka kita menambahkan script sbb :
<?php
set_time_limit(60);//set limit untuk melakukan query = 60 seconds
?>
Semoga bermanfaat..
Sumber: farizdev.xyz/blog/index.php/2015/09/09/optimizing-php-mysql-files/