自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 资源 (2)
  • 收藏
  • 关注

转载 Slow performance occurs when you copy data to a TCP server by using a Windows Sockets API program

Slow performance occurs when you copy data to a TCP server by using a Windows Sockets API programArticle ID: 823764 - View products that this article applies to.System TipThis article applie

2012-08-31 15:34:05 1032

转载 Which I/O Strategy Should I Use?

by Warren YoungThere are several different conventions for communicating with Winsock, and each method has distinct advantages. The question of the hour is, what are these advantages, and how does

2012-08-31 15:02:44 1602

转载 TCP RST: Calling close() on a socket with data in the receive queue

TCP RST:  Calling close() on a socket with data in the receive queue Consider two peers, A and B, communicating via TCP.  If B closes a socket and there is any data in B’s receive queue, B sends a

2012-08-31 10:47:03 911

转载 Socket编程中的强制关闭与优雅关闭及相关socket选项

以下描述主要是针对windows平台下的TCP socket而言。首先需要区分一下关闭socket和关闭TCP连接的区别,关闭TCP连接是指TCP协议层的东西,就是两个TCP端之间交换了一些协议包(FIN,RST等),具体的交换过程可以看TCP协议,这里不详细描述了。而关闭socket是指关闭用户应用程序中的socket句柄,释放相关资源。但是当用户关闭socket句柄时会隐含的触发TCP

2012-08-31 10:40:10 1158

转载 SOCKET编程中,select()函数的作用

select()在SOCKET编程中还是比较重要的,可是对于初学SOCKET的人来说都不太爱用select()写程序,他们只是习惯写诸如 conncet()、accept()、recv()或recvfrom这样的阻塞程序(所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时必须等待某个事件发生,如果事件没有发生,进程或线程就被阻塞,函数不能立即返回)。可是使用select()就可以完

2012-08-31 09:34:34 7822

转载 INADDR_ANY 的意义及TCP/UDP在此处的不同

socket INADDR_ANY 监听0.0.0.0地址 socket只绑定端口让路由表决定传到哪个ip其中INADDR_ANY就是指定地址为0.0.0.0的地址,这个地址事实上表示不确定地址,或“所有地址”、“任意地址”。一般情况下,如果你要建立网络服务器,则你要通知服务器操作系统:请在某地址 xxx.xxx.xxx.xxx上的某端口 yyyy上进行侦听,并且把侦听到的数据包发

2012-08-30 20:14:39 3611

原创 msdn:when to use udp

when sending smaller amounts of noncritical or repeatable data, use UDP as opposed to TCP to reduce the overhead associated with connection establishment and maintenance. If the same data must be sent

2012-08-30 20:01:05 570

转载 WSAEWOULDBLOCK错误

搜索了一下论坛里关于send时产生WSAEWOULDBLOCK时的处理办法,得出如下结论:       1.产生这个错误只是说明out   buffer已经满了,不代表出错.       2.可以等待FD_WRITE消息,此时将没有发送完成的数据再次发送出去.       但还是有疑问,我的问题如下:       1.我上面的两条结论正确吗?       2.关于在FD_W

2012-08-30 19:27:32 2123

转载 HTTP General header:Trailer

Trailer常用头域值指明了在以块(chunked)传输编码消息里的尾部(trailer)里用到的头域。                  Trailer = "Trailer" ":" 1#field-name一个http/1.1消息会包含一个Trailer头域,如果它利用了块(chunked)传输编码并且编码里的尾部(trailer)不为空。这样做是为了使接收端知道块(c

2012-08-30 18:17:13 5352

转载 HTTP协议详解

HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of HTTP)的建议已经提出。HTTP协议的主要特点可概括如下:1.支持客户/服务器模式。

2012-08-30 17:37:16 1089

原创 vector:push_back时的对象构造

class CT{public:CT(){std::cout }~CT(){std::cout }CT(const CT &t){std::cout }};void main(){std::vector vec;CT t;vec.push_back(t);}两次CT(CT &

2012-08-30 14:05:48 2395

转载 HTTP/1.1 Range和Content-Range

假设你要开发一个多线程下载工具,你会自然的想到把文件分割成多个部分,比如4个部分,然后创建4个线程,每个线程负责下载一个部分,如果文件大小为403个byte,那么你的分割方式可以为:0-99 (前100个字节),100-199(第二个100字节),200-299(第三个100字节),300-402(最后103个字节)。      分割完成,每个线程都明白自己的任务,比如线程3的任务是负责下

2012-08-30 13:43:59 9809

转载 A Reusable Windows Socket Server Class With C++

A Reusable Windows Socket Server Class With C++ Contributed by Len Holgate 摘自:http://www.devarticles.com Ever thought of writing your own Windows socket server class? In this article Len shows y

2012-08-29 20:35:44 1006

转载 The C10K problem

如今的web服务器需要同时处理一万个以上的客户端了,难道不是吗?毕竟如今的网络是个big place了。 现在的计算机也很强大了,你只需要花大概$1200就可以买一个1000MHz的处理器,2G的内存, 1000Mbit/sec的网卡的机器。让我们来看看--20000个客户,每个为50KHz,100Kbyes和 50Kbit/sec,那么没有什么比为这两万个客户端的每个每秒从硬盘读取4千字节然

2012-08-29 20:28:57 1439

转载 再探Linux下的TCP延迟确认机制

前面有一文简单写了一下Linux下的延迟确认机制,但当时不求甚解,后来陆陆续续做又了一些分析,于是就有了这篇文章。案例一:某同事随手写个压力测试程序,其实现逻辑为:每秒钟先连续发N个132字节的包,然后连续收N个由后台服务回显回来的132字节包。其代码大致如下: 1: char sndBuf[132]; 2: char rcvBuf[132]; 3: whil

2012-08-29 18:12:56 1636

转载 设置SOCKET的发送与接收缓冲区 .

2011-01-18 10:55 2555人阅读 评论(1)收藏举报主  题: 浅析:setsockopt()改善程序的健壮性 作  者: gdy119 (夜风微凉) 不断的收到coolmei25 (梅生)的答谢,我都不好意思了(我都没帮到他),下面写出我在网络编程中的一点心得体会,希望对他(^_^也对大家)有帮助:1. 如果在已经处于 ESTABL

2012-08-29 15:20:01 3521

转载 Windows SOCKET 缓存/缓冲区 相关了解

对于开发大响应规模的Winsock应用程序而言,对Windows NT和Windows 2000的套接字架构有基本的了解是很有帮助的。与其他操作系统不同的是,WinNT和Win2000的传输协议层并不直接给应用程序提供socket风格的接口,不接受应用程序的直接访问。而是实现了更多的通用API,称为传输驱动接口(Transport Driver Interface,TDI).这些API把Win

2012-08-29 15:16:07 4374

转载 Negal算法

TCP_NODELAY 选项设置该选项: public void setTcpNoDelay(boolean on) throws SocketException 读取该选项: public boolean getTcpNoDelay() throws SocketException      默认情况下, 发送数据采用Negale 算法. Negale 算法是指发送方发送的数据不会立

2012-08-29 14:53:54 3421

转载 Delayed ACK

delayed ack algorithm也就是中所谓的"经受时延的确认"(翻译得真饶舌 = =||)。在RFC1122中提到delayed ack 的概念:         " A host that is receiving a stream of TCP data segments can          increase efficiency in both the Intern

2012-08-29 13:51:16 3048

转载 TCP/IP慢启动

为了防止网络的拥塞现象,TCP提出了一系列的拥塞控制机制。最初由V. Jacobson在1988年的论文中提出的TCP的拥塞控制由“慢启动(Slow start)”和“拥塞避免(Congestion avoidance)”组成,后来TCP Reno版本中又针对性的加入了“快速重传(Fast retransmit)”、“快速恢复(Fast Recovery)”算法,再后来在TCP NewReno中又

2012-08-29 13:39:05 1750

转载 汇编优化

Assembly Optimization Tips汇编优化提示【作者】:Mark Larson【翻译】:Dhuta暑假瞄了一些汇编优化的文章,感觉这篇有点意思。尽管英文水平不咋地,还是倔起牛劲翻译了下。肯定有不好的地方,大家海涵~英文原文附件给出~如果有什么错误还望批评指正~另外,如果admin感觉可以加精的话就麻烦下了~一段时间过去了,增加一点内容。《怎样优化Penti

2012-08-27 18:38:39 3101

转载 由12306.cn谈谈网站性能技术

酷壳网陈皓:由12306.cn谈谈网站性能技术发表于2012-01-17 09:51| 6459次阅读| 来源酷壳网| 42 条评论| 作者陈皓性能优化网站性能电子商务分布式存储web服务摘要:批量处理的技术,是把一堆基本相同的请求批量处理。比如,大家同时购买同一个商品,没有必要你买一个我就写一次数据库,完全可以收集到一定数量的请求,一次操作。这个技术可以用作很

2012-08-24 17:25:17 1758

转载 性能调优攻略

性能调优攻略发表于2012-06-21 10:23| 3936次阅读| 来源CollShell| 1 条评论| 作者陈皓性能优化web开发http服务器优化性能摘要:关于性能优化这是一个比较大的话题,在《由12306.cn谈谈网站性能技术》中我从业务和设计上说过一些可用的技术以及那些技术的优缺点,今天,想从一些技术细节上谈谈性能优化,主要是一些代码级别的技术和方

2012-08-24 17:05:21 1189

转载 CBW、CWDE、CDQ、CWD: 扩展指令

CBW、CWDE、CDQ、CWD: 扩展指令;CBW(Convert Byte to Word):      将 AL 扩展为 AX;CWDE(Convert Word to Extended Double): 将 AX 扩展为 EAX;CDQ(Convert Doubleword to Quadword): 将 EAX 扩展为 64 位数 EDX:EAX;CWD

2012-08-24 15:39:20 20674

原创 除法优化的类型

①除数为2的幂                                                                                    |--- magic num > 0x7fffffff                                    |--- imul ---|

2012-08-17 11:15:47 499

转载 汇编语言中PTR的含义及作用

mov ax,bx ;是把BX寄存器“里”的值赋予AX,由于二者都是word型,所以没有必要加“WORD”   mov ax,word ptr [bx];是把内存地址等于“BX寄存器的值”的地方所存放的数据,赋予ax。由于只是给出一个内存地址,不知道希望赋予ax的,是byte还是word,所以需要用word明确指出!所以,当两个操作数的宽度不一样时,就要用到ptr。也就是说

2012-08-14 10:29:40 1562

原创 C++与汇编

1.指针 任何指针对汇编而言都是一样的,只不过在操作的时候才有区别 mov         byte ptr [eax],2    mov         dword ptr [ecx],4019999Ah  2.指针和引用汇编层是一样的004012FB   lea         ecx,[ebp-4]  004012FE   push

2012-08-13 18:12:05 628

转载 CMP指令详解

刚刚看到了cmp指令,一开始有点晕。后来上网找了些资料,终于看明白了,为了方便初学者,我就简单写下我的思路吧。高手绕过,谢谢!cmp(compare)指令进行比较两个操作数的大小例:cmp oprd1,oprd2为第一个操作减去第二个操作数,但不影响第两个操作数的值它影响flag的CF,ZF,OF,AF,PF我们怎么判断大小呢?若执行指令后

2012-08-11 17:50:40 26842 1

Windows核心编程第5版英文版.chm

Windows核心编程第5版英文版.chm

2012-03-31

c++高手箴言(有关WINDOWS编程)

c++高手箴言,经验总结!CHM 有关WINDOWS编程)

2008-11-24

空空如也

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

TA关注的人

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