gpt4 book ai didi

php - 优化 PHP 连接

转载 作者:行者123 更新时间:2023-11-29 03:43:50 25 4
gpt4 key购买 nike

我最近一直在检修我为我工作的公司建立的网站。因为我在一年多前开始这个项目,所以我的编码技能提高了很多,我想使网站跟上速度。我对该项目的主要关注点是安全性和速度。我一直在做的一件事是更改我所有的 PHP 连接以确保它们安全且快速。这是我从数据库中提取内容时通常遵循的格式:

<?php

//Connect to MySQL
require_once('includes/config.php');

$link = mysql_connect($host, $user, $pass);
if(!$link) {
die('Server connection failed. Please refresh the window. If this problem persits, please send an e-mail to <me>');
}
$db = mysql_select_db($database);
if(!$db) {
die("Unable to select database");
}

$qry="SELECT * FROM <table> WHERE Category='<parameter>' ORDER BY substr(`P/N`,1,4) ASC";
$result=mysql_query($qry);

while($row = mysql_fetch_array($result))
{
echo "
//Output code
";
}
?>

首先,存储连接变量(如 MySQL 用户名/密码)的最佳方式是什么?在上面的代码中,我使用了一个 require_once('includes/config.php'),它包含了我所有的服务器变量。这是一种安全的方法吗?或者有更好的方法吗?

其次,我应该更好地管理内存吗?我正在阅读本网站上关于 mysql_close() 的 PHP 文档和问题,我得出的结论是我并不真的需要它。但是,最近我遇到了很多失败的连接。

Warning: mysql_connect() [function.mysql-connect]: Can't connect to MySQL server

这个错误有没有可能是我的编码技术不好造成的?还是更可能选择我们的托管公司?

最佳答案

您可以将您的登录名和密码存储在 Web 根目录之外,并将它们包含在 require_once() 中。

您可以使用 mysql_pconnect() 来使用持久连接,这样以后的查询将只使用打开的连接,而不是尝试重新连接。理想情况下,您希望使用缓存层尽可能多地消除这些连接,这样用户只会访问缓存,而您的缓存编写器只会访问数据库。然后,您设置一个 cron 或事件驱动系统,以合理的时间间隔更新缓存,以根据应用程序的需要控制负载。

关于php - 优化 PHP 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9521207/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com