0%

  Redis 和 Memcached 是非关系型数据库也称为 NoSQL 数据库, MySQL、 Mariadb、 SQLServer、 PostgreSQL、 Oracle 数据库属于关系型数据(RDBMS, Relational Database Management System)。
  Redis(Remote Dictionary Server)在 2009 年发布, 开发者 Salvatore Sanfilippo 是意大利开发者, 他本想为自己的公司开发一个用于替换 MySQL 的产品 Redis, 但是没有想到他把 Redis 开源后大受欢迎,短短几年, Redis 就有了很大的用户群体,目前国内外使用的公司有知乎>网、新浪微博、 GitHub 等。
  redis 是一个开源的、 遵循 BSD 协议的、 基于内存的而且目前比较流行的键值数据库(key-value database),是一个非关系型数据库,redis 提供将内存通过网络远程共享的一种服务,提供类似功能的还有 memcache,但相比 memcache, redis 还提供了易扩展、高性能、 具备数据持久性等功能。
  Redis 在高并发、低延迟环境要求比较高的环境使用量非常广泛, 目前 redis 在 DBEngine 月排行榜 https://db-engines.com/en/ranking 中一直比较靠前,而且一直是键值型存储类的首位。

阅读全文 »

  之前配置了一个web集群(其实就3个服务器),想实现数据共享和动静分离,感觉配置分布式存储比较复杂,也没必要,就打算在搭建一个NFS服务器,共享几个目录,挂载在几个web服务器上。
  搭建NFS服务过程很顺利,手动挂载也没问题,然后打算将挂载信息写进/etc/fstab配置文件,实现开机自动挂载。

阅读全文 »

  HAProxy是法国开发者 威利塔罗(Willy Tarreau) 在2000年使用C语言开发的一个开源软件,是一款具备高并发(一万以上)、高性能的TCP>和HTTP负载均衡器,支持基于cookie的持久性,自动故障切换,支持正则表达式及web状态统计。
  HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理。HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接。并且它的运行模式使得它可以很简单安全的整合进您当前的架构中, 同时可以保护你的web服务器不被暴露到网络上。
  包括 GitHub、Bitbucket、Stack Overflow、Reddit、Tumblr、Twitter和 Tuenti[7]在内的知名网站,及亚马逊网络服务系统都使用了HAProxy。

阅读全文 »

  博主在CentOS8上dnf安装PHP的依赖包libmcrypt-devel的时候,死活装不上,一直报错。看了下说是依赖项libmcrypt装不上,报错原因说的是是秘钥校验时缺少主机名。这很奇怪,因为用的是阿里的epel源,之前安装各种软件包都没问题,这次突然就秘钥验证不过了。

阅读全文 »

  防盗链的必要性,我这里就不再赘述了,这是网站设计的最基本要求。而在nginx中,一般比较容易实现的防盗链手段就是通过ungx_http_referer_module模块(查看官方文档) 检查访问请求的referer信息是否有效来实现防盗链功能。
  所谓referer检查,举个例子来说,在正常情况下当用户在浏览http://example.com/abc.html时点击一个链接去到http://example.com/123.mp3文件时,浏览器在发出请求123.mp3 资源时还会附带当刻浏览器所处的页面地址(即http://example.com/abc.html),所以当你的网站程序接收到下载 jacky.mp3 资源请求的时候,先判断http的referer字段的值,如果是从 自己的域名(example.com)过来的,则可以认为是合法的连接请求,否则就返回一个错误的提示信息。

阅读全文 »

  所谓LVS,是Linux Virtual Server的缩写,直译就是linux虚拟服务器。LVS说是虚拟服务器,并不是说这个服务器本身不存在,而是指一般用户访问企业web网站时,访问的都是LVS,而LVS本身上面没有任何web界面资源,真实的界面以及服务都在后端web服务器上,LVS服务器起到的是一个指引分流的作用,所以相对来说,后端的web服务器是real server,而LVS就被称为是virtual server(虚拟服务器)了。
  既然这个服务器上没有页面资源,又无法提供服务,那为什么还有必要部署它来多此一举呢?因为通常来说,我们访问的web服务,都不是由单一服务器主机来支撑的,背后都有好几台、甚至成百上千台web服务器集群共同提供,一台单一主机是无法支撑大的访问并发的,需要很多台服务器来共同分担压力,这时就需要一个专门的服务器来进行调度,将大量访问请求分配到不同的web服务器上,减小每台服务器的压力,实现负载均衡。
  本文将详细介绍LVS调度器的工作模式及配置实例。

阅读全文 »

  PowerDNS 是一个跨平台的开源DNS服务组件,它是高性能的域名服务器,除了支持普通的BIND配置文件,PowerDNS还可以从MySQL,Oracle,PostgreSQL等的数据库读取数据。PowerDNS安装了Poweradmin(基于php实现),能实现Web管理DNS记录,非常方便。

阅读全文 »