lamp架构提高服务器并发要注意哪些问题 lamp 中Apache要怎么设置并发最多占用5G内存

作者&投稿:台娥 (若有异议请与网页底部的电邮联系)
 对于大流量、大并发量的网站系统架构来说,除了硬件上使用高性能的服务器、负载均衡、CDN等之外,在软件架构上需要重点关注下面几个环节:使用高性能的操作系统(OS)、高性能的网页服务器(Web Server)、高性能的数据库(Databse)、高效率的编程语言等。下面我将从这几点对其一一讨论。
  操作系统
  Linux操作系统有很多个不同的发行版,如Red Hat Enterprise Linux、SUSE Linux Enterprice、Debian、Ubuntu、CentOS等,每一个发行版都有自己的特色,比如RHEL的稳定,Ubuntu的易用,基于稳定性和性能的考虑,操作系统选择CentOS(Community ENTerprise Operating System)是一个理想的方案。
  CentOS(Community ENTerprise Operating System)是Linux发行版之一,是RHEL/Red Hat Enterprise Linux的精简免费版,和RHEL为同样的源代码,不过,RHEL和SUSE LE等企业版,提供的升级服务均是收费升级,无法免费在线升级,因此要求免费的高度稳定性的服务器可以用CentOS替代Red Hat Enterprise Linux使用。

  LAMP网站架构图
  Web服务器、缓存和PHP加速
  Apache是LAMP架构最核心的Web Server,开源、稳定、模块丰富是Apache的优势。但Apache的缺点是有些臃肿,内存和CPU开销大,性能上有损耗,不如一些轻量级的Web服务器(例如nginx)高效,轻量级的Web服务器对于静态文件的响应能力来说远高于Apache服务器。
  Apache做为Web Server是负载PHP的最佳选择,如果流量很大的话,可以采用nginx来负载非PHP的Web请求。nginx是一个高性能的HTTP和反向代理服务器,Nginx以它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。Nginx不支持PHP和CGI等动态语言,但支持负载均衡和容错,可和Apache配合使用,是轻量级的HTTP服务器的首选。
  Web服务器的缓存也有多种方案,Apache提供了自己的缓存模块,也可以使用外加的Squid模块进行缓存,这两种方式均可以有效的提高Apache的访问响应能力。Squid Cache是一个Web缓存服务器,支持高效的缓存,可以作为网页服务器的前置cache服务器缓存相关请求来提高Web服务器的速度,把Squid放在Apache的前端来缓存Web服务器生成的动态内容,而Web应用程序只需要适当地设置页面实效时间即可。如访问量巨大则可考虑使用memcache作为分布式缓存。
  PHP的加速使用eAccelerator加速器,eAccelerator是一个自由开放源码PHP加速器,优化和动态内容缓存,提高了性能PHP脚本的缓存性能,使得PHP脚本在编译的状态下,对服务器的开销几乎完全消除。它还有对脚本起优化作用,以加快其执行效率。使PHP程序代码执效率能提高1-10倍。
  具体的解决方案有以下几种:
  1、squid + Apache + PHP + eAccelerator
  使用Apache负载PHP,使用squid进行缓存,html或图片的请求可以直接由squid返回给用户。很多大型网站都采用这种架构。
  2、nginx/Apache + PHP(fastcgi) + eAccelerator
  使用nginx或Apache负载PHP,PHP使用fastcgi方式运行,效率较高。
  3、nginx + Apache + PHP + eAccelerator
  此方案综合了nginx和Apache的优点,使用Apache负载PHP,nginx负责解析其他Web请求,使用nginx的rewrite模块,Apache端口不对外开放。
  数据库
  开源的数据库中,MySQL在性能、稳定性和功能上是首选,可以达到百万级别的数据存储,网站初期可以将MySQL和Web服务器放在一起,但是当访问量达到一定规模后,应该将MySQL数据库从Web Server上独立出来,在单独的服务器上运行,同时保持Web Server和MySQL服务器的稳定连接。
  当数据库访问量达到更大的级别,可以考虑使用MySQL Cluster等数据库集群或者库表散列等解决方案。
  总的来说,LAMP架构的网站性能会远远优于Windows IIS + ASP + Access(例如月光博客)这样的网站,可以负载的访问量也非常大,国内的大量个人网站如果想要支撑大访问量,采用LAMP架构是一个不错的方案。
  综上所述,基于LAMP架构设计具有成本低廉、部署灵活、快速开发、安全稳定等特点,是Web网络应用和环境的优秀组合。

Mysql服务器负载很高,性能问题排查思路是怎样的~

对于包括 mysql 在内的大多数数据库系统而言
性能问题的排查主要有以下方向:

1. 需求的不合理造成的性能问题

比方说,不需要实时更新的内容,被要求做成实时更新

2. 架构的不合理造成的性能问题
比方说,不适合数据库保存的数据,被存放在数据库中
或者,频繁访问但是很少变更的数据,没有做缓存

3. 查询语句的不合理造成的性能问题
比方说,重复执行相同的 SQL 会造成资源浪费
或者,大量复杂的 join 语句会导致查询效率低下

4. 数据库设计的不合理造成的性能问题
比方说,盲目追求三范式、四范式,有时候并没有必要

5. 硬件配置的不合理造成的性能问题
比方说,数据库服务器的 io 性能、CPU 、网络状况,都会影响性能

以上这些都是性能问题定位和调优的方向

对于大流量、大并发量的网站系统架构来说,除了硬件上使用高性能的服务器、负载均衡、CDN等之外,在软件架构上需要重点关注下面几个环节:使用高性能的操作系统(OS)、高性能的网页服务器(Web Server)、高性能的数据库(Databse)

云计算的关键技术是什么?
答:虚拟机技术 虚拟机,即服务器虚拟化是云计算底层架构的重要基石。在服务器虚拟化中,虚拟化软件需要实现对硬件的抽象,资源的分配、调度和管理,虚拟机与宿主操作系统及多个虚拟机间的隔离等功能,目前典型的实现(基本成为事实标准)有Citrix Xen、VMware ESX Server 和Microsoft Hype-V等。数据存储技术 ...

在DOS中的所有命令。
答:doskey 要锁定的命令=字符 doskey 要解锁命令= 为DOS提供的锁定命令(编辑命令行,重新调用win2k命令,并创建宏)。如:锁定dir命令:doskey dir=entsky (不能用doskey dir=dir);解锁:doskey dir= taskmgr 调出任务管理器 chkdsk /F D: 检查磁盘D并显示状态报告;加参数/f并修复磁盘上的错误 tlntadmn telnt服务a...

南北桥是怎么通信的
答:从其架构图可以看到,Multi-Threaded I/O Link负责了8个设备的数据传输,它们是:PCI总线(其上的所有设备对Multi-Threaded I/O Link来说就是一个设备)、第一IDE通道、第二IDE通道、第一USB通道、第二USB通道、AC’97音频、V.90软Modem、媒介访问控制器(MAC,Media Access Controller,主要为以太网数据传输服务)。

请前辈讲解一下TCP/IP的知识?
答:为了获取Web页,它通过向套接口向套接口写入HTTPGET命令来向Web 服务器发出该指令。接下来套接口软件使用TCP协议向 Web服务器发出包含GET命令的字节流和位流,TCP将数据分段并将各独立段传到IP模块,该模块将数据段转换成数据报并发送给Web服务器。如果浏览器和服务器运--在不同物理网络的计算机上(一般情况如此),数据...

ERP是什么 ?
答:3.支持能动的监控能力,提高业务绩效 包括在整个企业内采用控制和工程方法;模拟功能;决策支持和用于生产及分析的图形能力。 4.支持开放的客户机/服务器计算环境 包括客户机/服务器体系结构;图形用户界面(GUI);计算机辅助设计工程(CASE),面向对象技术;使用SQL对关系数据库查询;内部集成的工程系统、商业系统、数据采集和...

java的架构有哪些?
答:因为业务层是三层次架构中最有决定意义的,所以让我们回到业务层细致地分析一下,在复杂的业务我们常常需要以下基础服务的一种或几种:事务一致性服务acid(tool:jta/jts)、并发加锁服务concurrent&&lock、池化管理服务cache、访问控制服务(tool:jaas)、流程控制服务workflow、动态实现服务IOC,串行化消息服务(tool:jms)、...

java循环越跑越慢为什么?高手进
答:注意填充因子要适当(最好是使用默认值0)。索引应该尽量小,使用字节数小的列建索引好(参照索引的创建),不要对有限的几个值的字段建单一索引如性别字段 5、提高网速; 6、扩大服务器的内存,Windows 2000和SQL server 2000能支持4-8G的内存。配置虚拟内存:虚拟内存大小应基于计算机上并发运行的服务进行配置。运行 ...

请问中小企业应该选择单路还是双路服务器?为什么?
答:1、储存系统 企业究竟要买1U还是2U服务器?这个主要赖于企业对于服务器扩充性的需求,尤其储存系统的规划甚为重要。因此,仅有3至4台硬盘的空间的1U服务器会越来越面临存储的瓶颈,但在2U服务器上提供8至9台硬盘已是很平常了。如果企业已经采用NAS或SAN,或着是已经构建多层服务器架构,服务器毋需安装...

什么是CDN???
答:网站加速(CDN)的基本运作原理是:在各地的部署CDN节点和大量的边缘服务器构成CDN网络,然后将加速网站内容缓存或镜像到这些节点边缘服务器上,当终端用户访问这些加速网站时,通过DNS技术将用户访问解析到离终端用户最近的最可靠的边缘服务器上,实现就近访问,从而加速访问速度,提升用户的访问体验。CDN网络...

局域网技术
答:局域网一般由服务器,用户工作站,传输介质四部分组成。 1.服务器: 运行网络0S,提供硬盘、文件数据及打印机共享等服务功能,是网络控制的核心。 从应用来说较高配置的普通486以上的兼容机都可以用于文件服务器,但从提高网络的整体性能,尤其是从网络的系统稳定性来说,还是选用专用服务器为宜。 目前常见的NOS主要有...