安装Memcached以提高数据库性能

时间:2020-01-09 10:44:03  来源:igfitidea点击:

说明

SQL数据库非常擅长存储和检索数据,并且可以快速完成。但是,在高流量期间,数据库服务器都会成为一个瓶颈。通过使用像Memcache这样的技术,我们可以将常用数据库查询的结果保存在RAM中存储的缓存中。使用缓存的结果会大大减少检索数据和在我们的应用程序中显示数据的时间和精力。

Memcache是所谓的内存中键值存储。密钥是唯一的标识符,用于快速搜索缓存的字符串或者对象。该值是已缓存的数据。为了存储数据库查询结果,关键字通常是针对数据库使用的查询。

键值对

键值对必不可少的数据数组。如果我们有编程经验,那么我们将对如何在Memcache中存储数据有很好的了解。如果要以易于阅读的形式显示数据库查询的键值,则该键值看起来类似于以下示例。

搜索长文本字符串不是很有效,因此存储密钥是一个坏主意。上面的示例仅用于说明如何将数据存储在缓存中。在典型的环境中,例如,在存储或者从Memcache检索数据之前,需要将键(SQL查询)转换为MD5哈希值。

硬件要求

Memcache服务器的硬件要求很低。所涉及的CPU处理很少,除操作系统外几乎不需要磁盘存储。我们唯一需要的资源是RAM。多少将取决于要缓存的内容和缓存的持续时间。

安装Memcached

Memcached可以安装在基础架构中的任何位置。对于小型环境,我们可以将其安装在Web应用程序服务器本身上。但是,建议我们为Memcached创建一个单独的服务器实例。这使Web应用程序服务器可以专注于仅作为应用程序服务器。

Ubuntu

Memcached在默认存储库中可用。要安装它,我们可以运行以下命令。

sudo apt-get install memcached

CentOS

Memcached在默认存储库中可用。要安装它,我们可以运行以下命令。

yum install memcached

配置Memcached

默认配置应该可以正常测试。但是,我们可能需要对其进行微调,以使其更适合生产中的服务器硬件。

Ubuntu

  • 在文本编辑器中打开配置文件。
sudo nano /etc/memcached.conf
  • 要增加内存容量,请查找以下行。默认值为64MB。
-m 64
  • 更改Memcached将侦听的IP地址。该地址应可供应用程序服务器访问。
-l 192.168.1.40
  • 限制服务器将接受的并发连接数。默认值为1024. 限制连接对于确保服务器不会被请求淹没很重要。
-c 1024
  • 保存更改并退出文本编辑器。
  • 将配置重新加载到Memcached中使更改生效。
sudo service memcached reload

CentOS

  • 在文本编辑器中打开配置文件。
vi /etc/memcached.conf
  • 修改MAXCONN值以增加或者减少服务器可以处理的最大连接数。这将基于硬件。为了确定适当的值,我们将需要对服务器进行压力测试。
MAXCONN="1024"
  • 修改CACHESIZE值以增加或者减少内存上限。该值将取决于服务器中可用的RAM数量。
CACHESIZE="64"
  • 退出文本编辑器。
  • 重新加载配置使更改生效。
service memcached reload