自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 线程池代替进程池

一.问题引入刚进入一家新公司,在公司的一些培训中得知,我们的服务端系统中,底层库的任务调度用的是进程池的实现,也就是创建许多子进程来进行执行业务处理,进程池技术是比较早的一种技术了,在现在众多高性能服务端程序中,包括开源著名的apache,nginx…,大多采用线程池来实现,下面说一下采用线程的一些好处。 二.线程的优点线程(thread)技术早在60年代就被提出,但真正应用多线程

2015-03-27 11:08:19 1363

转载 高并发服务器架构

设计一个稳定,高效的服务器,需要考虑很多的方面,不管是系统方面的,还是代码方面的。那么究竟有哪些?    一: 导致服务器低效的四个罪魁祸首:数据拷贝,(用户态/内核态切换)上下文切换,内存管理,锁竞争;    数据拷贝:         ---首先提下零拷贝。零拷贝( zero-copy ),某种程度上来说可以有效的改善数据传输的性能,在内核驱动程序(比如网络堆栈或者磁盘存储

2015-03-27 10:46:42 1395

转载 提高Linux上socket 性能

加速网络应用程序的 4 种方法使用 Sockets API,我们可以开发客户机和服务器应用程序,它们可以在本地网络上进行通信,也可以通过 Internet 在全球范围内进行通信。与其他 API 一样,您可以通过一些方法使用 Sockets API,从而提高 Socket 的性能,或者限制 Socket 的性能。本文探索了 4 种使用 Sockets API 来获取应用程序的最大性能并对

2015-03-27 10:41:54 592

转载 高并发Web服务的演变——节约系统内存和CPU

一、越来越多的并发连接数现在的Web系统面对的并发连接数在近几年呈现指数增长,高并发成为了一种常态,给Web系统带来不小的挑战。以最简单粗暴的方式解决,就是增加Web系统的机器和升级硬件配置。虽然现在的硬件越来越便宜,但是一味地通过增加机器来解决并发量的增长,成本是非常高昂的。结合技术优化方案,才是更有效的解决方法。并发连接数为什么呈指数增长?实际上,从这几年的用户基数上看,这个数量并没有

2015-03-24 09:24:39 537

转载 TCP协议疑难杂症全景解析

说明:1).本文以TCP的发展历程解析容易引起混淆,误会的方方面面2).本文不会贴大量的源码,大多数是以文字形式描述,我相信文字看起来是要比代码更轻松的3).针对对象:对TCP已经有了全面了解的人。因为本文不会解析TCP头里面的每一个字段或者3次握手的细节,也不会解释慢启动和快速重传的定义4).除了《TCP/IP详解》(卷一,卷二)以及《Unix网络编程》以及Linux源代码之外,

2015-03-20 09:48:05 664

转载 夏俊:深入网站服务端技术(一)——网站并发的问题

一、 引子《关于大型网站技术演进的思考》已经连载完了两个系列,它们分别是《存储的瓶颈》和《网站静态化的处理》,这两个系列对应到网站里的组件就是存储端和浏览器端,网站除了这两端外,还有一端那就是服务端了,服务端上接浏览器端,下承存储端,所以当我们想让网站的浏览器端或存储端性能更加优秀的时候,就不得不去考虑服务端的问题,因为服务端和它们永远都是剪不断理还乱的关联性。现在我要开启《关于大型网

2015-03-17 10:57:14 632

转载 多线程和多进程的区别(小结)

很想写点关于多进程和多线程的东西,我确实很爱他们。但是每每想动手写点关于他们的东西,却总是求全心理作祟,始终动不了手。今天终于下了决心,写点东西,以后可以再修修补补也无妨。 一.为何需要多进程(或者多线程),为何需要并发?这个问题或许本身都不是个问题。但是对于没有接触过多进程编程的朋友来说,他们确实无法感受到并发的魅力以及必要性。我想,只要你不是整天都写那种int main()

2015-03-11 10:54:54 390

转载 为什么我们使用Nginx而不是Apache?

Apache是非常强大的Web服务器,模块化结构,也是Web服务端的鼻祖。世界上大多数网站仍运行着Apache系统。但是,Apache并不是完美的,并且不再适合大规模系统。为什么?因为他的进程模式虽然简单而灵活,但并不适合大规模尤其是当要处理像PHP这种需要占用大量内存应用程序代码时。我们大多数的客户在他们的服务器上使用Apache作为Web服务器,尤其是部署在一个基于PHP系统的前端

2015-03-10 10:54:13 374

转载 select, iocp, epoll,kqueue及各种I/O复用机制

首先,介绍几种常见的I/O模型及其区别,如下:blocking I/Ononblocking I/OI/O multiplexing (select and poll)signal driven I/O (SIGIO)asynchronous I/O (the POSIX aio_functions)blocking I/O 这个不用多解

2015-03-10 10:25:35 486

转载 Apache ab 压力测试及分析

压力测试是一种基本的质量保证行为,它是每个重要软件测试工作的一部分。压力测试的基本思路很简单:不是在常规条件下运行手动或自动测试,而是在计 算机数量较少或系统资源匮乏的条件下运行测试。通常要进行压力测试的资源包括内部内存、CPU 可用性、磁盘空间和网络带宽等。一般用并发来做压力测试。1.apache安装下载:从Apache官方网站http://httpd.apache.org/down

2015-03-03 13:50:14 589

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除