网站性能是客观的指标,可以具体体现到响应时间、吞吐量、并发数、性能计数器等技术指标。...
分类:
Web程序 时间:
2014-06-05 07:10:13
阅读次数:
281
一、在任务与执行策略之间的隐性解耦
有些类型的任务需要明确地指定执行策略,包括:
. 依赖性任务。依赖关系对执行策略造成约束,需要注意活跃性问题。要求线程池足够大,确保任务都能放入。
. 使用线程封闭机制的任务。需要串行执行。
. 对响应时间敏感的任务。
. 使用ThreadLocal的任务。
1. 线程饥饿死锁
线程池中如果所有正在执行任务的线程都由于等待其他仍处于工作...
分类:
编程语言 时间:
2014-06-05 06:15:57
阅读次数:
355
这个例子是想从数据库查询出几个结果集,一般的做法是,一个接一个的发送查询,然后汇总结果进行输出。
下面我们利用Gearman的gearman_client_run_tasks实现并发的查询,gearman_client_run_tasks接口可以一次性的提交多个任务,然后在callback函数中异步的处理结果。...
分类:
其他好文 时间:
2014-06-05 01:08:26
阅读次数:
321
由于默认的Linux内核参数考虑的是最通用的场景,这明显不符合用于支持高并发访问的Web服务器的定义,所以需要修改Linux内核参数,使得Nginx可以拥有更高的性能。
在优化内核时,可以做的事件很多,不过,我们通常会根据业务特点来进行调整,当Nginx作为静态Web内容服务器、反向代理服务器或是提供图片缩略功能(实时压缩图片)的服务器时,其内核参数的调整都是不同的。这里只针对最通用的、使Ngi...
分类:
系统相关 时间:
2014-06-04 23:18:19
阅读次数:
383
一个集中的日志系统,第三方应用每次写日志,都需要发送一个远程的rpc或者http请求,造成写日志的延时比较大。改进的做法是:提供一个写日志调用包,第三方应用写日志时,先把日志缓存到一个线程安全的容器里,然后后台线程实时消费容器内的日志,如果有持久化的需求,就可以实时的把日志flush到文件中,然后再...
分类:
其他好文 时间:
2014-05-31 13:13:20
阅读次数:
290
在数据库中,并发控制有乐观锁和悲观锁之间,什么时候用乐观锁比较好什么时候用悲观锁比较好?
实际生产环境里边,如果并发量不大,完全可以使用悲观锁定的方法,这种方法使用起来非常方便和简单。但是如果系统的并发非常大的话,悲观锁定会带来非常大的性能问题,所以就要选择乐观锁定的方法。
悲观锁假定其他用户企图访...
分类:
数据库 时间:
2014-05-31 12:44:38
阅读次数:
252
前言 在并发,多线程环境下,同步是一个很重要的环节。同步即是指进程/线程之间的执行顺序约定。
本文将介绍如何通过共享内存机制实现块内多线程之间的同步。 至于块之间的同步,需要使用到 global
memory,代价较为高昂,目前使用的情况也不多,就先不介绍了。块内同步函数:__syncthre...
分类:
其他好文 时间:
2014-05-31 11:25:25
阅读次数:
257
在操作系统中,进程实体是指PCB+程序段+相关的数据段这里主要总结一下进程控制块作用:
使一个在多带程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能与其他进程并发执行的进程
或者,OS是根据PCB来对并发执行的进程进行控制的。 PCB常被OS访问,因此其应常驻内存中; 描...
分类:
其他好文 时间:
2014-05-31 01:24:29
阅读次数:
291
其实国内许多大型网站为了应对日益复杂的业务场景,通过使用分而治之的手段将整个网站业务分成不同的产品线,比如说国内那些大型购物交易网站它们都将自己的网站首页、商铺、订单、买家、卖家等拆分不同的产品线,分归不同的业务团队负责;
集体到技术,也会根据产品线划分,将一个网站拆分成许多不同的应...
分类:
Web程序 时间:
2014-05-30 17:01:21
阅读次数:
410
Java 线程面试问题
在任何Java面试当中多线程和并发方面的问题都是必不可少的一部分。如果你想获得任何股票投资银行的前台资讯职位,那么你应该准备很多关于多线程的问题。在投资银行业务中多线程和并发是一个非常受欢迎的话题,特别是电子交易发展方面相关的。他们会问面试者很多令人混淆的Java线程问题。....
分类:
编程语言 时间:
2014-05-30 14:28:29
阅读次数:
247