感性认识: 传统的socket IO中,需要为每个连接创建一个线程,当并发的连接数量非常巨大时,线程所占用的栈内存和CPU线程切换的开销将非常巨大。使用NIO,不再需要为每个线程创建单独的线程,可以用一个含有限数量线程的线程池,甚至一个线程来为任意数量的连接服务。由于线程数量小于连接数量,所以每个线程进行IO操作时就不能阻塞,如果阻塞的话,有些连接就得不到处理,NIO提供了这种非阻塞的能力。 小...
分类:
其他好文 时间:
2014-05-10 08:50:29
阅读次数:
365
7.1 MySQL 锁定机制简介
数据库锁定机制简单来说就是数据库为了保证数据的一致性而使各种共享资源在被并发访问访问变得有序所设计的一种规则。对于任何一种数据库来说都需要有相应的锁定机制,所以MySQL
自然也不能例外。MySQL 数据库由于其自身架构的特点,存在多种数据存储引擎,每种存储引擎所....
分类:
数据库 时间:
2014-05-09 19:10:01
阅读次数:
425
InnoDB是Mysq的表提供事务、回滚、崩溃修复能力和多版本并发控制的事务安全。
MyIsAm存储引擎是Mysql中常见的存储引擎。 Memory存储引擎所有的数据都存在内存中。速度快,但安全性不高。
default-character-set = utf8 character-set-serve...
分类:
数据库 时间:
2014-05-09 18:46:14
阅读次数:
308
转一篇站长大人的文章适用的IIS版本:IIS 7.0, IIS 7.5, IIS
8.0适用的Windows版本:Windows Server 2008, Windows Server 2008 R2, Windows Server
20121、应用程序池(Application Pool)的设置:...
分类:
Web程序 时间:
2014-05-09 18:31:05
阅读次数:
421
GCD (Grand Central Dispatch)
是Apple公司开发的一种技术,它旨在优化多核环境中的并发操作并取代传统多线程的编程模式。在Mac OS X 10.6和IOS
4.0之后开始支持GCD。使用GCD的一个理由就是方便。回想一下以前的多线程编程,我们会把异步调用的代码放到另外的...
分类:
其他好文 时间:
2014-05-09 11:05:26
阅读次数:
301
进程 OS并发的一个任务CPU分时间片交替执行 宏观并行
微观串行线程:在一个进程中并发的一个顺序执行流程线程的组成:1.数据 堆空间共享 栈空间独立 2.CPU3.代码Thread 线程对象 继承Thread类型
覆盖run方法 直接创建Thread对象实现Runnable接口...
分类:
编程语言 时间:
2014-05-08 22:10:57
阅读次数:
357
今天正好有80Gbps的万兆网络环境,写了一个压力测试工具,对比了一下各种流媒体服务器,在超级并发下的性能如何,原来听说intel的万兆网卡有问题,只能跑到不到的理论带宽,这点我测试过了,用intel最新的驱动,centos6,最次能跑到80%的理论带宽,最高能跑到95%以上,完全没有问题,需要.....
分类:
其他好文 时间:
2014-05-08 20:06:29
阅读次数:
560
一概念 二创建多线程方法 三线程常用方法不完整可以自己查阅JDK文档 四线程的生命周期与转换
五同步 六竞争者消费者 七线程池 八JDK 线程工具 线程基础: 1. 创建 2. 状态切换 3. sleep与wait的区别
前者使线程阻塞固定时间后进入Runnable状态,后者使用notify后可以处...
分类:
编程语言 时间:
2014-05-07 20:08:57
阅读次数:
495
今天下午神奇的“黑色30秒”再次降临,而这次“黑色30秒”期间没有出现Requests
Queued。现在我们猜测“黑色30秒”的触发条件是在高并发下线程突然卡住了。为什么线程会卡住?为什么会是30秒?应用程序的原因,Windows的原因,还是阿里云的原因?大家可以投投票。
分类:
其他好文 时间:
2014-05-07 18:28:46
阅读次数:
425
能够发现的C/C++缺陷(部分)C/C++安全性问题(部分)并发死锁错误使用的阻塞调用性能下降内存泄漏文件句柄泄漏定制的内存和网络资源泄漏数据库连接泄漏导致崩溃的缺陷空指针引用释放后引用多次释放不正确的内存分配不匹配的数组新建/删除不正确的程序行为逻辑错误导致的死代码未初始化变量负数的无效引用不正确...
分类:
其他好文 时间:
2014-05-06 11:09:21
阅读次数:
546