2014-10-19 06:21
⁄ 工业·编程
⁄ 共 1383字
参考官方文档(http://www.kernel.org/doc/Documentation/networking/ip-sysctl.txt),解释如下:
tcp_max_tw_buckets - INTEGER
Maximal number of timewait sockets held by system simultaneously.If this number is exceeded time-wait socket is immediately destroyed and warning is printed.
官方文档没有说明默认值,通过几个系统的简单验证,初步确定默认值是180000。
通过源码查看发现,这个选项比较简单,其实现...
网络编程阅读全文
2014-10-19 06:02
⁄ 工业·编程
⁄ 共 2052字
在C语言中,结构是一种复合数据类型,其构成元素既可以是基本数据类型(如int、long、float等)的变量,也可以是一些复合数据类型(如数组、结构、联合等)的数据单元。在结构中,编译器为结构的每个成员按其自然对界(alignment)条件分配空间。各个成员按照它们被声明的顺序在内存中顺序存储,第一个成员的地址和整个结构的地址相同。
例如,下面的结构各成员空间分配情况: struct test { ...
c++, pragma, 预处理阅读全文
2014-10-18 06:46
⁄ 工业·编程
⁄ 共 1174字
读文件
QString fileName = "D:\Lib\1.txt";QString str;QFile file(fileName);
if(!file.open(QIODevice::ReadOnly | QIODevice::Text))
{
QMessageBox::warning(this,"Warnning","can't open",QMessageBox::Yes);
}
QTextStream in(&file);str...
Qt, 文件阅读全文
2014-10-18 06:18
⁄ 工业·编程
⁄ 共 1424字
tcp_tw_reuse选项的含义如下(http://www.kernel.org/doc/Documentation/networking/ip-sysctl.txt):
tcp_tw_reuse - BOOLEAN
Allow to reuse TIME-WAIT sockets for new connections when it is safe from protocol viewpoint. Default value is 0.
这里的关键在于“协议什么情况下认为是安全的”,由于环境限制,没有办法进行验证,通过看源码简单分析了一下。
=====linux-2.6.37 net/ipv4/tcp_ipv4.c 114=====
int tcp_twsk_...
网络编程阅读全文
2014-10-17 10:10
⁄ 工业·编程
⁄ 共 5817字
本文介绍了在Qt中如何开发Web本地混合应用,以及如何让js与c++双向调用。附带几个简单实例。
接触Qt也就两个星期多吧,所以文章中难免有幼稚和错误的地方,请各位不吝赐教。个人认为标记语言描述的界面是界面开发的一个发展趋势。WPF、Java FX,当然也少不了Html。
基于Html的界面在开发效率,可移植性上都十分有优势,所以也被很多程序采用,只是我们平时没注意到而已。比如:
Chrome的网页调试工具本身就是一个网页,不信你...
Qt, web开发阅读全文
2014-10-17 06:15
⁄ 工业·编程
⁄ 共 2890字
tcp_tw_recycle选项作用为:Enable fast recycling TIME-WAIT sockets. Default value is 0.
tcp_timestamps选项作用为:Enable timestamps as defined in RFC1323. Default value is 1.
这两个选项是linux内核提供的控制选项,和具体的应用程序没有关系,而且网上也能够查询到大量的相关资料,但信息都不够完整,最主要的几个问题如下;
1)快速回收到底有多快?
2)有的资料说只要打开tcp_tw_recycle即可,有的又说要tcp_time...
网络编程阅读全文
2014-10-16 10:11
⁄ 工业·编程
⁄ 共 7033字
在《Web应用的组件化开发:基本思路》中我们提到了组件化的大致思路,这一篇主要讲述在这么做之后,我们需要哪些外围手段去管控整个开发过程。从各种角度看,面对较大规模前端开发团队,都有必要建立这么一个开发阶段的协作平台。
在这个平台上,我们要做哪些事情呢?
1. HTML片段
我们为什么要管理HTML片段?因为有界面要用它们,当这些片段多了之后,需要有个地方来管理起来,可以检索、预览它们,还能看到大致描述。
这应该...
web开发, 架构师阅读全文
2014-10-16 06:09
⁄ 工业·编程
⁄ 共 1687字
SO_LINGER是一个socket选项,通过setsockopt API进行设置,使用起来比较简单,但其实现机制比较复杂,且字面意思上比较难理解。
解释最清楚的当属《Unix网络编程卷1》中的说明(7.5章节),这里简单摘录:
SO_LINGER的值用如下数据结构表示:
struct linger {
int l_onoff; /* 0 = off, nozero = on */
int l_linger; /* linger time */
};
其取值和处理如下:
1、设置 l_on...
网络编程阅读全文
2014-10-15 09:58
⁄ 工业·编程
⁄ 共 4666字
1. 为什么要做组件化?
无论前端也好,后端也好,都是整个软件体系的一部分。软件产品也是产品,它的研发过程也必然是有其目的。绝大多数软件产品是追逐利润的,在产品目标确定的情况下,成本有两个途径来优化:减少部署成本,提高开发效率。
减少部署成本的方面,业界研究得非常多,比如近几年很流行的“去IOE”,就是很典型的,从一些费用较高的高性能产品迁移到开源的易替换的产品集群,又比如使用Linux + Mono来部署.net应用...
web开发, 架构师阅读全文
2014-10-15 06:01
⁄ 工业·编程
⁄ 共 1191字
tcp连接是网络编程中最基础的概念,基于不同的使用场景,我们一般区分为“长连接”和“短连接”,长短连接的优点和缺点这里就不详细展开了,有心的同学直接去google查询,本文主要关注如何解决tcp短连接的TIME_WAIT问题。
短连接最大的优点是方便,特别是脚本语言,由于执行完毕后脚本语言的进程就结束了,基本上都是用短连接。但短连接最大的缺点是将占用大量的系统资源,例如:本地端口、socket句柄。
导致这个问题的原因其实很简...
网络编程阅读全文