`
冰糖葫芦
  • 浏览: 297820 次
社区版块
存档分类
最新评论
文章列表
5.经验学习 当Igor Sysoev开始编写 nginx的时候,构建互联网的大多数软件已经存在,这些软件的体系结构通常 遵循 旧式服务器的定义、网络硬件、操作系统以及老互联网架构。然而,这并没有阻止 Igor 思考他或许能够在 web服务器领域做一些改善性的工作。因此,第一课似乎很明显:改进的空间总会是有的。 自从头脑中有了更好的web软件的想法,
3.nginx配置 nginx配置系统受益于Igor Sysoev(nginx创始人)在Apache(阿帕奇软件基金会)的经历。Igor Sysoev洞察出可扩展的配置系统对于一个web服务器来说是必不可少的。当维持众多虚拟服务器、目录库、地址信息和数据集的大规模结构复杂的配置时,扩展中的主要问题便不期而遇。如果在应用端和系统工程师设计方面处理的不恰当,对于配置一个相对大的web服务器来说将会是一个噩梦。
  3. nginx配置 nginx配置系统受益于Igor Sysoev(nginx创始人)在Apache(阿帕奇软件基金会)的经历。Igor Sysoev洞察出可扩展的配置系统对于一个web服务器来说是必不可少的。当维持众多虚拟服务器、目录库、地址信息和数据集的大规模结构复杂的配置时,扩展中的主要问题便不期而遇。如果在应用端和系统工程师设计方面处理的不恰当,对于配置一个相对大的web服务器来说将会是一个噩梦。 因此,nginx配置旨在简化日常的操作和为进一步扩展web服务器配置提供一个简单的方法。
2. nginx架构总览 传统的基于进程或者基于线程的模型处理并发的方式都是为每个连接单独创建一个处理进程或线程,会在网络传输或者I/O操作上阻塞。而这对应用来说,在内存和 CPU的使用上效率都是非常低的。而且生成一个 ...
  Nginx(发音为“engine x”)是一款由俄罗斯软件工程师Igor Sysoev写的开源的web服务器。自从2004年发布以来nginx一直关注于高性能、高并发、低内存的使用,另外还有一些特色的Web服务器功能,如负载均衡、缓存、访问和带宽控制以及能够有效的与各种应用集成这些特点使得nginx成为现代网站架构中一个不错的选择。目前,nginx在互联网最受欢迎web
 在第一部分中,我们讲述了在单个服务下扩展一个单线程应用的请求处理数量所面临的问题。 在这篇文章中,我们将关注CPU使用率最大化的一个可选择的解决方案。 以下来自文章一的图,表明了应用需要通过请求来使用CPU ...
 这篇文章将涉及一个在部署Web应用产品和Web系统性能测试中都会出现的问题:如何决定Web应用的线程池大小? 线程池(Thread Pool) 在Web应用中线程池的大小决定了在任何一个时间点应用可以处理请求的并发数。如果一个系统收到的请求数超过了线程池的大小,那么超出的请求要么进入等待队列要么被拒绝。 请注意,并发和并行是不同的。并发请求是指在任何一个时间点,所有被处理的请求中只有只有很少一部分占用CPU(译者注:轮流使用CPU)。并行是指在任何一个时间点,所有被处理的请求同时在CPU上运行。 在非阻塞式(NO-Blocking)应用中(如NodeJs),一个单独的线程或进程可以并 ...
 这里我假设一个简单的情景,比如一个运行在单cpu机器上的单线程ruby应用。实际上,操作系统把CPU时间切分为多个片段并做规律性的上下文切换。 在单线程应用例如运行在ruby on rails的应用,所有请求都通过一个单独的线程来处理。当这个单独的线程做IO相关处理如数据库查询或者网络调用,那么即使这个应用/线程可以处理其他请求相关的工作也还是会被这些IO操作所阻塞。 一个避免以上问题出现的方法就是为在同一个服务下运行多个应用程序。所以,当一个应用程序的线程被阻塞时,其他应用的线程可以继续使用CPU来处理其他请求。下图中有两个应用在竞争CPU的使用时间,其中第二个应用的CPU消耗时间 ...
 在这篇文章中我将谈到关于大规模网站架构扩展和性能方面的一些问题。 首先让我们先来了解一些术语。稍后我将对Web应用扩展过程中所遇到的不同问题进行讲解,例如:  架构瓶颈  数据库扩展  CPU消耗型应用  IO消耗型应用 性能 Web系统的性能受多方面因素的影响,但大多数开发人员主要关心的是响应时间和可扩展性这两方面。 响应时间 响应时间是指Web应用从收到请求到返回响应结果所花费的时间。而应用系统应该在可接受的时间范围内返回响应结果,否则就不能算是一个性能良好的应用系统。 可扩展性 如果Web应用通过增加更多硬件可以使处理的请求数呈线性增长,那么该应用是可扩 ...
这是用GridView对android下图片上传并且显示缩略图的功能的简单模拟,主要实现: 1.小缩略图的增加 2.缩略图的顺序删除 3.缩略图的随机删除 4.上传张数限制(demo中最多9张) 5.上传按钮隐藏与显示的控制(未达到最大张数时显示上传按钮,达到最大张数上传按钮自动消失) Demo中点击“+”号上传,点击小图删除当前图片,效果如下: 初始效果 添加图片效果 上传图片张数达到限制(9张)
HttpClient3请求报CircularRedirectException错误。 解决办法: httpClient.getParams().setParameter(httpClient.getParams().ALLOW_CIRCULAR_REDIRECTS, false);
1.项目引入xssProtect-0.1.jar、antlr-3.0.1.jar、antlr-runtime-3.0.1.jar包 2.封装request   public class XssHttpServletRequestWrapper extends HttpServletRequestWrapper { HttpServletRequest orgRequest = null; public XssHttpServletRequestWrapper(HttpServletRequest request) { super(requ ...
  近期给公司做了一个小项目,其中一个页面要求要上传8到10个附件,也就是说一个页面要有至少8个文件上传控件(不能使用多文件上传控件因为其中一部分附件要求用户上传文件的同时还要填写上传的为何种附件)。   初步做法为:写多个input[file]控件放到form提交,发现在nginx环境下会超出最大限制,会报413 entity too large错误;   之后考虑针对单个文件上传采用异步方式,这样就可以化解一次性提交多个文件的问题,我们采用了jQuery的ajaxfileupload插件;但是,接着,为了增强用户体验需要上传成功后将上传后的地址回填至file控件,这样该方案又不适合了,因为浏 ...
由于项目要求,需要对eclipse中的项目进行打包,似的可以在客户机上不装eclipse的情况下正常运行。 一.环境说明:    eclipse---3.5    jdk-------1.6.0.22    os--------xp,win7 二.解决方案详情:    1.项目不引用外部jar包,仅仅依赖于jdk相 ...
操作系统:windows7 mysql版本:5.5.22 在使用命令mysqld --install servicename --defaults-file='file_name'创建mysql服务时,系统已提示创建服务成功,但是net start命令提示启动失败,并在services.msc中提示1053错误 解决办法:     在网上有人说是服务的“登录”选项卡里要设置成administrator;     也有人说是需要先把服务删除,在重新创建(可以先考虑这两方面);     但是试过以后发现不起作用,经过检查才发现原来还是由mysqld --install命令引起的,主要原因在于-- ...
Global site tag (gtag.js) - Google Analytics