感性认识: 传统的socket IO中,需要为每个连接创建一个线程,当并发的连接数量非常巨大时,线程所占用的栈内存和CPU线程切换的开销将非常巨大。使用NIO,不再需要为每个线程创建单独的线程,可以用一个含有限数量线程的线程池,甚至一个线程来为任意数量的连接服务。由于线程数量小于连接数量,所以每个线程进行IO操作时就不能阻塞,如果阻塞的话,有些连接就得不到处理,NIO提供了这种非阻塞的能力。 小...
分类:
其他好文 时间:
2014-05-10 08:50:29
阅读次数:
365
题意:
给你ABCD四个集合,集合中数的个数都为N(N
当然你可以尝试枚举所有的组合,绝对可以计算出结果,大概有N^4种吧,如果你有足够的时间还是可以算出来的,哈哈。
当然我不是用上面一种方法计算的,那样算肯定超时。 我的做法是求出所有a+b 到ab数组中, 和所有 c+d到cd数组中,然后排序,枚举每个ab,用二分在cd中查找有没有可能组成0。 有个问题就...
分类:
其他好文 时间:
2014-05-10 08:40:14
阅读次数:
278
本文的主要目的是阐述如何进行高并发、高性能通信系统的设计,以及这样的系统需要用到的常用技术。本篇只起抛砖引玉的之效,如有更好的设计方案和思路,望你不舍赐教!...
分类:
其他好文 时间:
2014-05-10 08:39:49
阅读次数:
326
1.同步容器,同步容器包括Vector和HashTable,是早期jdk的一部分。另一部分是同步包装类,以Collections.synchronizedxxx的工厂方法创建。
2.同步容器虽然是线程安全的,但是对于复合操作,有时你可能需要加上额外的客户端加锁进行保护,即对于使用这些容器的客户端代码,如果存在复合操作,还是可能存在风险。
3.例如check-and-act操作、循环中的元素操作...
分类:
编程语言 时间:
2014-05-07 08:33:56
阅读次数:
423
使用.net dataexcel通信搭建一个简单的文件服务器。
通信简单介绍
1,通信使用TCP协议。
2,采用session机制,控制简单通信安全与连接限制防攻击。
3,采用开放协议包格。(32字节数据包)
4,采用网络断开,自动连接机制保证连接。
5,采用压缩机械压缩大数据(比如.net 里面datatable,dataset的传输)。
6,采用事件机制,更容易,更符合.net开发习惯。
7,采用异步传输,较大的连接与并发。
8,采用数据包头,解决粘包。
9,采用命令方式,更容易扩展。
10,采用允许...
分类:
Web程序 时间:
2014-05-07 08:11:20
阅读次数:
494
今天又个兄弟求助,数据库里一个表有数据如下:
no name
1 a
2 b
3 c
4 d
如何用一个sql显示如下结果:
ab
ac
ad
bc
bd
cd
对于这种构造数据,是分析函数的强项,下面来做个试验:
create table t (no number,name varchar(2));
insert into t va...
分类:
其他好文 时间:
2014-05-07 08:03:17
阅读次数:
447
首先看一下什么是懒加载:
所谓懒加载(lazy)就是延时加载,延迟加载。
什么时候用懒加载呢,我只能回答要用懒加载的时候就用懒加载。
至于为什么要用懒加载呢,就是当我们要访问的数据量过大时,明显用缓存不太合适,
因为内存容量有限 ,为了减少并发量,减少系统资源的消耗,
我们让数据在需要的时候才进行加载,这时我们就用到了懒加载。
比如部门ENTITY和员工EN...
分类:
其他好文 时间:
2014-05-07 05:39:35
阅读次数:
556
数学知识太差,一点点积累,高手勿喷。
1. 先求出AB向量
a = ( x2-x1, y2-y1 )
2. 求AB向量的单位方向向量
b = √((x2-x1)^2 + (y2-y1)^2))
a1 = ( (x2-x1)/b, (y2-y1)/b )
3.求出CA的法向向量(或CB的法向向量)
c = ( y0-y1, -(x0-x1) )
4. 距离 = AC法向向量与BC向量...
分类:
其他好文 时间:
2014-05-07 05:37:05
阅读次数:
275
大家都知道,一个域名对应一个IP地址,而一个WebSite则对应一个IP地址上对应端口服务的应用程序(或位置)。而大型网站的并发访问量非常大,这些网站是如何在一台Web服务器上实现负载均衡的呢?
相信很多人会有与我同样的疑惑,但实际上成熟的解决方案已经大规模投入使用。而常用的则是反向代理方法。
反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将...
分类:
其他好文 时间:
2014-05-07 05:36:29
阅读次数:
322
能够发现的C/C++缺陷(部分)C/C++安全性问题(部分)并发死锁错误使用的阻塞调用性能下降内存泄漏文件句柄泄漏定制的内存和网络资源泄漏数据库连接泄漏导致崩溃的缺陷空指针引用释放后引用多次释放不正确的内存分配不匹配的数组新建/删除不正确的程序行为逻辑错误导致的死代码未初始化变量负数的无效引用不正确...
分类:
其他好文 时间:
2014-05-06 11:09:21
阅读次数:
546