Search This Blog
Popular Posts
-
Elegant Themes has been developing WordPress themes for a long time. It has developed lots of popular themes including Divi, Nexus, Fa...
-
Engagement, engagement, engagement. My brother Lee and I are web developers and entrepreneurs. We try to capitalize on every opportunity a...
-
League Table Premium WordPress Plugin makes it able to add in a successful manner customizable, and responsive tables to your Word...
-
Hello there! My blog post 'Spikes' was published on Sept. 22nd; however, the post before it called 'Flow' was published on...
-
Quick question: Do you know what IFC, The New York Post, The Walt Disney Company, and WNBA have in common? Ponder the answer for a momen...
-
WordPress has evolved to be much more than just a blogging platform, from online stores to full-on business platforms, there is ve...
-
Hi, I am new to wordpress, and still figuring things out. I have been experimenting with different themes, and have been changing settings...
-
Amelia is a Premium WordPress Theme is Perfect for any Blog or Magazine.Theme has a unique design with a lot of options, that can help...
-
The best Black Friday / Cyber Monday WordPress Deals in 2016 all in one place. If you missed the huge deals last year, be sure to get in...
-
So you want to sell a product online. We think that's awesome! Now all that's left is to decide how. Lucky for you WordPress makes...
Blog Archive
- December (18)
- November (29)
- October (27)
- September (29)
- August (31)
- July (30)
- June (29)
- May (29)
- April (30)
- March (31)
- February (28)
- January (31)
- December (31)
- November (30)
- October (31)
- September (30)
- August (43)
- July (42)
- June (33)
- May (43)
- April (36)
- March (37)
- February (31)
- January (4)
- December (1)
- November (1)
- October (24)
- September (24)
- August (25)
- July (28)
- June (18)
- September (1)
Total Pageviews
Blogroll
Use MySQL persistent database connection for WordPress on Azure App
1. MySQL persistent database connection is recommended for improving performance, it is preferred when you use a remote database server.
For more information, https://azure.microsoft.com/en-us/blog/how-to-run-wordpress-site-on-azure-websites/
2. Persistent database connection has "timeout" implemented, when you try to use the existing connection after long idle time, you may get
PHP warning "MySQL server has gone away" because it timed out. To prevent this error, use mysql_ping (or mysqli_ping).
"mysql_ping" checks whether or not the connection to MySQL server is active and working, if the connection is down, it attempts to reconnect.
3. By default, WordPress use regular (non-persistent) connection. To use persistent database connection, you can modify the code in wp-includes/wp-db.php.
Find original code:
if ( WP_DEBUG ) { $this->dbh = mysql_connect( $this->dbhost, $this->dbuser, $this->dbpassword, $new_link, $client_flags ); } else { $this->dbh = @mysql_connect( $this->dbhost, $this->dbuser, $this->dbpassword, $new_link, $client_flags ); }
...
Modify it to:
if ( WP_DEBUG ) { if ( !mysql_ping($this->dbh) ) { $this->dbh = mysql_pconnect( $this->dbhost, $this->dbuser, $this->dbpassword, $client_flags ); } } else { if ( !mysql_ping($this->dbh) ) { $this->dbh = @mysql_pconnect( $this->dbhost, $this->dbuser, $this->dbpassword, $client_flags ); } }
For mysqli, find original code:
if ( WP_DEBUG ) { mysqli_real_connect( $this->dbh, $host, $this->dbuser, $this->dbpassword, null, $port, $socket, $client_flags ); } else { @mysqli_real_connect( $this->dbh, $host, $this->dbuser, $this->dbpassword, null, $port, $socket, $client_flags ); }
...
Modify it to:
if ( WP_DEBUG ) { if ( !mysqli_ping($this->dbh) ) { mysqli_real_connect( $this->dbh, "p:".$host, $this->dbuser, $this->dbpassword, null, $port, $socket, $client_flags ); } } else { if ( !mysqli_ping($this->dbh) ) { @mysqli_real_connect( $this->dbh, "p:".$host, $this->dbuser, $this->dbpassword, null, $port, $socket, $client_flags ); } }
Note: The code is base on the current version WordPress 4.3.1
{{html Body}}Source: Use MySQL persistent database connection for WordPress on Azure App
0 comments:
Post a Comment