`

高并发简单介绍

阅读更多
下面是一个牛人所做的总结
高并发时,性能瓶颈及当前常用的应对措施

1.数据库瓶颈。Mysql并发链接100

2.apache 并发链接1500

3.程序执行效率


1.有数据库瓶颈时 ,当前处理方案无外乎 主从,集群。增加cache(memcached).

如:手机之家新系统介绍及架构分享(http://www.slideshare.net/Fenng/ss-1218991?from=ss_embed)

就是在cache层做优化

又拍网架构(http://www.bopor.com/?p=652)

是以增加数据库,分表分库的方法解决。

Sina增加了mq(消息队列)来分发数据。

还有风站用了key-value的数据库。其实这可以理解成一个持久化的缓存。


2.apache瓶颈

增加服务器。负载均衡。如sina的F5

由于进程数的限制。会把一些基本不变的代码挪出来放到单独的服务器。如css/js/图片。

国内成功的案例是tom的cdn

又如nginx的横空出世和squid的反向代理都是基于这个原因出来的。


3.php的执行效率。原因有多个。

1).本身的效率低。

解决的成功案例是Zend Optimizer 和 facebooke的hiphop

Taobao是把php代码编译成模块解决效率问题。

2). 数据库查询效率问题。如可能有order by ,group by 等Sql数据问题。

这个其实应该归结到数据库设计问题。

解决的办法是建立正确的索引。增加memcache.。

对like表 用专用的sphinx.和lucence 等搜索服务。

程序员都应该会用explain对sql语句作分析。

Nginx代理图片、css等静态文件

varnish反向代理,缓存shtml(可缓存动态文件)

resin处理不必缓存的动态文件

MVC和Hibernate中增加缓存

并发量大的时候加集群
http://www.blogjava.net/zhouxing/archive/2007/12/12/167282.html
分享到:
评论

相关推荐

    Java高并发实战_java高并发_高并发_

    第7章主要介绍了高并发框架Akka的基本使用方法,并使用Ak:ka框架实现了 个简单的粒子群算法, 模拟超高并发的场景。第8章介绍了使用Eclipse进行多线程调试的方法, 并演示了通过Eclipse进行多线程调试重现ArrayList...

    汪文君高并发编程实战视频资源下载.txt

    │ 高并发编程第一阶段02讲、简单介绍什么是线程.wmv │ 高并发编程第一阶段03讲、创建并启动线程.mp4 │ 高并发编程第一阶段04讲、线程生命周期以及start方法源码剖析.mp4 │ 高并发编程第一阶段05讲、采用多...

    汪文君高并发编程实战视频资源全集

    │ 高并发编程第一阶段02讲、简单介绍什么是线程.wmv │ 高并发编程第一阶段03讲、创建并启动线程.mp4 │ 高并发编程第一阶段04讲、线程生命周期以及start方法源码剖析.mp4 │ 高并发编程第一阶段05讲、采用多...

    NIO框架Netty实现高性能高并发

    Java异步NIO框架Netty实现高性能高并发无标题笔记 1. 背景 1.1. 惊人的性能数据 最近一个圈内朋友通过私信告诉我,通过使用Netty4 + Thrift压缩二进制编解码技术,他们实现了10W TPS(1K的复杂POJO对象)的跨 节点...

    开涛高可用高并发-亿级流量核心技术

    1.1 高并发原则 3 1.1.1 无状态 3 1.1.2 拆分 3 1.1.3 服务化 4 1.1.4 消息队列 4 1.1.5 数据异构 6 1.1.6 缓存银弹 7 1.1.7 并发化 9 1.2 高可用原则 10 1.2.1 降级 10 1.2.2 限流 11 1.2.3 切流量 12 1.2.4 可回滚...

    高并发高流量网站架构

    本文围绕高并发高流量的网站架构设计问题,主要研究讨论了以下内容:  首先在整个网络的高度讨论了使用镜像网站,CDN内容分发网络等技术对负载均衡带来的便利及各自的优缺点比较。然后在局域网层次对第四层交换技术...

    .NET超级绝杀 最新融合技术 从高级技术到高并发+Net-NoSQL+Net Core+Linux+前沿项目

    ├─03 .NETCore-1-04 - VSCode介绍,简单使用,通过命令行手动创建.NETCore解决方案.mp4 ├─03 .NETCore-2-01 - 运行解决方案,命令行建三层项目.mp4 ├─03 .NETCore-2-02 - 编写一个自动创建项目的脚本,window

    springboot-:记录实现高并发的解决方案

    记录实现高并发的解决方案 day01 1.springboot整合druid多数据源和log4j2 (1)实现数据源,主数据库(写),从数据库(读),读写分离的方案之一 (2)mysql主从复制,保持数据一致性 (3)使用druid的监控功能 (4...

    基于Python实现的一个简单的分布式高并发RPC框架+源代码+文档说明

    ## 用Python构建分布式高并发的RPC框架 ------ ### 一、为什么要写一个RPC框架? > + 不是想要造轮子,Dubbo、gRPC、Thift这些轮子已经非常好用了 > + RPC在微服务、分布式系统、Web服务器方面应用太广泛了,...

    Java高并发高性能分布式框架从无到有微服务架构设计(1).doc

    微服务架构优势 首先简单介绍了微服务〔Microservices〕的内涵与优势,微服务架构的本质,是用一些功 能比较明确、业务比较精练的服务去解决更大、更实际的问题.微服务架构将服务拆分, 分别采用相对独立的服务对各方面...

    Java高并发高性能分布式框架从无到有微服务架构设计.doc

    微服务架构优势 首先简单介绍了微服务(Microservices)的内涵及优势,微服务架构的本质,是用一些 功能比较明确、业务比较精练的服务去解决更大、更实际的问题。微服务架构将服务拆 分,分别采用相对独立的服务对各...

    chat:C\C++语言利用epoll实现高并发聊天室Demo

    项目介绍 本项目是实现一个简单的聊天室,聊天室分为服务端和客户端。采用C/S模型,使用TCP连接。 相关技术点: 支持多个用户接入,实现聊天室的基本功能 使用epoll机制实现并发,增加效率。 使用fork创建两个进程,...

    针对高并发,可扩展的互联网架构,搭建消息队列

    想开发高并发可扩展的互联网架构,消息队列是不可缺少的,目前主流的消息队列,有windows自带的MSMQ,还有跨平台的强大的ZeroMQ,这里我们就选用ZeroMQ. ZeroMQ介绍:(也拼写作?MQ、0MQ或ZMQ)是个非常轻量级的开源...

    高性能高并发服务的瓶颈及突破思路

    本文来自于csdn,本篇文章详细阐述了如何提升服务的性能及并发的方式,希望文章的介绍可以让大家有个新的认识。通常来说程序的定义是算法+数据结构+数据,算法简单的理解就是一种计算方式,数据结构顾名思义是一种...

    【并发编程】自定义简单线程池.pdf

    基本概念:介绍并发编程的基本概念,如进程、线程、并行与并发的区别等。 同步机制:讲解如何使用锁、信号量、原子操作等同步机制来避免竞态条件和死锁。 并发模型:介绍不同的并发模型,如生产者-消费者模型、管道...

    【并发编程】简单化理解AQS和ReentrantLock.pdf

    基本概念:介绍并发编程的基本概念,如进程、线程、并行与并发的区别等。 同步机制:讲解如何使用锁、信号量、原子操作等同步机制来避免竞态条件和死锁。 并发模型:介绍不同的并发模型,如生产者-消费者模型、管道...

    Redis处理高并发机制原理及实例解析

    3.Redis使用多路复用技术,可以处理并发的连接。非阻塞IO 内部实现采用epoll,采用了epoll+自己实现的简单的事件框架。epoll中的读、写、关闭、连接都转化成了事件,然后利用epoll的多路复用特性,绝不在io上浪费...

    SpringBoot3+Vue3 开发高并发秒杀抢购系统完结17章

    从架构视角来看,秒杀系统本质是一个高性能、高一致、高可用的三高系统。而打造并维护一个超大流量的秒杀系统需要进行哪些关注。本文主要介绍有关于秒杀系统的设计和底层实现原理。 一、通过对需求分析,我们提炼出...

    如何利用Golang写出高并发代码详解

    今天领导问起为什么用Golang,同事...那高并发到底如何实现,下面这篇文章主要给大家介绍了关于如何利用Golang写出高并发代码的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。

Global site tag (gtag.js) - Google Analytics