201505-12 Linux 内核的软中断深入解析 软中断介绍把可以延迟的处理从硬中断处理程序独立出来,这样这个处理可以在开中断的情况下运行,这个处理就是软中断。可见,软中断的这种脱离可以大大缩短硬中断的响应时间,对于很多实时应用来说及其重要。我们本文只谈软中断,至于tasklet、workqueue等我们以后再谈。我们在讲述软中断流程(参考linuxkernel4.0)时会尝试深入理解其中的各个细节之处,分享我们自己的理解(如果不正,还望指出,谢谢)。(题图来自:techva... 继续阅读 >
201505-11 每个程序员1小时内必须解决的5个编程问题 每次我发布软件工程师的岗位工作要求,各种求职申请就会纷至沓来,接踵而至。但每每让我困惑的是,似乎总有那么几位应聘者完全不明白所谓“编程”的意思。当然,他们另有想法。而我认为,如果你应聘的是“Web前端开发”岗位,那么你只懂jQuery也可以胜任,那么,“软件工程师”是不是就意味着会HTML、JavaScript和CSS这些必备技能就行了呢?(我觉得那些聊起XML、JSON、XSLT、SOAP、HTTP、REST、SSL和200多个首字母缩写词来头... 继续阅读 >
201505-11 Web开发者不可不知的15条编码原则 HTML已经走过了近20的发展历程。从HTML4到XHTML,再到最近十分火热的HTML5,它几乎见证了整个互联网的发展。但是,即便到现在,有很多基础的概念和原则依然需要开发者高度注意。下面,向大家介绍这些应该遵循的开发原则。1、善用DIV来布局当开发一个Web页面时,要考虑第一件事就是区分页面重点。将这些内容用DIV标签包含起来,页面的代码会呈现出整洁、缩进良好的风格。<divid="header"></div><divid="body-container">... 继续阅读 >
201505-09 Linux 常用系统性能监控命令 监控CPU使用率使用下面的命令:[root@localhost~]#gnome-system-monitor将会出现图形化工具GNOMESystemMonitor,如下图所示:监控CPU调度程序运行队列linux可以使用vmstat命令vmstat是VirtualMeomoryStatistics(虚拟内存统计)的缩写,是实时系统监控工具。该命令通过使用knlist子程序和/dev/kmen伪设备驱动器访问这些数据,输出信息直接打印在屏幕。vmstat反馈的与CPU相关的信息包括:(1)多少任务在运行(2)... 继续阅读 >
201505-08 大型网站的 HTTPS 实践(三):基于协议和配置的优化 1前言上文讲到HTTPS对用户访问速度的影响。本文就为大家介绍HTTPS在访问速度,计算性能,安全等方面基于协议和配置的优化。2HTTPS访问速度优化2.1TcpfastopenHTTPS和HTTP使用TCP协议进行传输,也就意味着必须通过三次握手建立TCP连接,但一个RTT的时间内只传输一个syn包是不是太浪费?能不能在syn包发出的同时捎上应用层的数据?其实是可以的,这也是tcpfastopen的思路,简称TFO。具体原理可以... 继续阅读 >
201505-07 大型网站的 HTTPS 实践(二):HTTPS 对性能的影响 1前言HTTPS在保护用户隐私,防止流量劫持方面发挥着非常关键的作用,但与此同时,HTTPS也会降低用户访问速度,增加网站服务器的计算资源消耗。本文主要介绍https对用户体验的影响。2HTTPS对访问速度的影响在介绍速度优化策略之前,先来看下HTTPS对速度有什么影响。影响主要来自两方面:协议交互所增加的网络RTT(roundtriptime)。加解密相关的计算耗时。下面分别介绍一下。2.1网络耗时增加由于HTTP和HT... 继续阅读 >
201505-07 大型网站的 HTTPS 实践(一): HTTPS 协议和原理 1前言百度已经于近日上线了全站HTTPS的安全搜索,默认会将HTTP请求跳转成HTTPS。本文重点介绍HTTPS协议,并简单介绍部署全站HTTPS的意义。2HTTPS协议概述HTTPS可以认为是HTTP+TLS。HTTP协议大家耳熟能详了,目前大部分WEB应用和网站都是使用HTTP协议传输的。TLS是传输层加密协议,它的前身是SSL协议,最早由netscape公司于1995年发布,1999年经过IETF讨论和规范后,改名为TLS。如果没有特别... 继续阅读 >
201505-07 百度全面开放HTTPS的几个重要问题 你注意到了吗?百度已经全站实现https了! 百度从14年开始对外开放了https的访问,并于3月初正式对全网用户进行了https跳转。你也许会问,切换就切换呗,和我有啥关系?我平常用百度还不是照常顺顺当当的,没感觉到什么切换。话说,平常我们呼吸空气也顺顺溜溜的,没有什么感觉,但要是没有了空气,那就没法愉快的生活了。https对于互联网安全的重要性,正如空气对于我们人类的重要性一样。百度全站切换到ht... 继续阅读 >
201505-06 Linux 中 sort 命令的14个有用的范例(一) Sort是用于对单个或多个文本文件内容进行排序的Linux程序。Sort命令以空格作为字段分隔符,将一行分割为多个关键字对文件进行排序。需要注意的是除非你将输出重定向到文件中,否则Sort命令并不对文件内容进行实际的排序(即文件内容没有修改),只是将文件内容按有序输出。本文的目标是通过14个实际的范例让你更深刻的理解如何在Linux中使用sort命令。1、首先我们将会创建一个用于执行‘sort’命令的文本文件(tecmint.txt)。工... 继续阅读 >
201505-06 Linux 的”sort”命令的七个有趣实例 在上一篇文章里,我们已经探讨了关于sort命令的多个例子,如果你错过了这篇文章,可以点击下面的链接进行阅读。今天的这篇文章作为上一篇文章的继续,将讨论关于sort命令的剩余用法,与上一篇一起作为Linux‘sort’命令的完整指南。Linux的‘sort’命令的14个有用的范例(一)在我们继续深入之前,先创建一个文本文档‘month.txt’,并且将上一次给出的数据填进去。$echo-e"mar/ndec/noct/nsep/nfeb/naug">month.tx... 继续阅读 >
201505-06 在 Linux 中用 nmcli 命令绑定多块网卡 今天,我们来学习一下在CentOS7.x中如何用nmcli(NetworkManagerCommandLineInterface:网络管理命令行接口)进行网卡绑定。网卡(接口)绑定是将多块网卡逻辑地连接到一起从而允许故障转移或者提高吞吐率的方法。提高服务器网络可用性的一个方式是使用多个网卡。Linux绑定驱动程序提供了一种将多个网卡聚合到一个逻辑的绑定接口的方法。这是个新的实现绑定的方法,并不影响linux内核中旧绑定驱动。网卡绑定为我们... 继续阅读 >
201505-01 Java最大的优势真的在于跨平台吗? 以下讨论只针对PC端和移动端。Java最大的优势真的在于跨平台吗?以前是,但现在已经不是了。有跨平台需求的仅仅是客户端应用,而不是服务端。例如桌面应用,你的客户可能是Windows用户,也可能是Linux用户,这时候如果不想多投入成本对各个平台进行适配,那么Java所谓的”Writeonce,runeverywhere”就显得异常光彩。然而今天,整个软件世界都在向B/S应用倾倒(嵌入式除外),即使要做客户端跨平台,QT等第三方框架远远比Swing... 继续阅读 >
201504-29 15 个 Linux ls 命令的面试问题(一) Unix或类Unix系统中的“文件列表”命令“ls”是最基础并且使用的最广泛的命令行中工具之一。它是一个POSIX兼容工具,在GNU基本工具集以及BSD各种变体上都可以使用。“ls”命令可以结合大量的选项来达到想要的结果。这篇文章的目的在于通过相关的样例来深入讨论文件列表命令。15个“ls”命令问题。1.如何列出目录中的文件?答:linux文件列表命令“ls”就是干这个的。#ls列出文件同时,我们也可以使用“echo(回显)”命令... 继续阅读 >
201504-29 安装完最小化 RHEL/CentOS 7 后需要做的 30 件事情(一) CentOS是一个工业标准的Linux发行版,是红帽企业版Linux的衍生版本。你安装完后马上就可以使用,但是为了更好地使用你的系统,你需要进行一些升级、安装新的软件包、配置特定服务和应用程序等操作。这篇文章介绍了“安装完RHEL/CentOS7后需要做的30件事情”。阅读帖子的时候请先完成RHEL/CentOS最小化安装,这是首选的企业和生产环境。如果还没有,你可以按照下面的指南,它会告诉你两者的最小化安装方法。最小化... 继续阅读 >
201504-29 C语言杂谈:指针与数组(下) 思维导图介绍前接上文C杂谈之指针与数组(一),接续往下谈指针和数组。指针与数组——承接上文进行扩展你知道X=Y,在编译运行过程中,是什么样吗?字符指针与函数1>字符串是一个以”结尾的字符数组。看一个例子:printf接受的是一个指向字符数组第一个字符的指针。这个例子与下面两个代码是一个道理.2>几个常用字符函数的编写。1>>>strcat(s,t)函数,把t指向的字符复制到s指向的字符后面?——注意”#include... 继续阅读 >
201504-29 C语言杂谈:指针与数组(下) 思维导图介绍前接上文C杂谈之指针与数组(一),接续往下谈指针和数组。指针与数组——承接上文进行扩展你知道X=Y,在编译运行过程中,是什么样吗?字符指针与函数1>字符串是一个以”结尾的字符数组。看一个例子:printf接受的是一个指向字符数组第一个字符的指针。这个例子与下面两个代码是一个道理.2>几个常用字符函数的编写。1>>>strcat(s,t)函数,把t指向的字符复制到s指向的字符后面?——注意”#include... 继续阅读 >