iptables规则的查看、添加、删除和修改
摘要:http://ns.35.com/?p=211 1、查看 iptables -nvL –line-number -L 查看当前表的所有规则,默认查看的是filter表,如果要查看NAT表,可以加上-t NAT参数 -n 不对ip地址进行反查,加上这个参数显示速度会快很多 -v 输出详细信息,包含通过该规则的数据包数量,总字节数及相应的网络接口 –line-num...
阅读全文
posted @
2013-01-31 15:42
@且听风吟@
阅读(642)
推荐(0)
python 获取本地ip
摘要:python获取本地ip,查资料代码如下,细节稍后做下分析 1: import socket,fcntl,struct 2: 3: def GetIPAddress(ifname): 4: skt = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) 5: #prin...
阅读全文
posted @
2013-01-28 14:17
@且听风吟@
阅读(349)
推荐(0)
linux socket编程client获取使用的ip和port
摘要:今天为了测试机器绑定多ip时socket client使用的ip和port,因此查询资料看了下如何获取client的ip和port(系统自选而不是bind绑定)主要是对连接的描述符通过getsockname 函数获取client的地址信息,函数说明如下#include <sys/socket.h> int getsockname(int sockfd, struct sockaddr *localaddr, socklen_t *addrlen); int getpeername(int sockfd, struct sockaddr *peeraddr, socklen_t *a
阅读全文
posted @
2013-01-25 16:46
@且听风吟@
阅读(8193)
推荐(0)
ubuntu apt-get /usr/bin/dpkg returned an error code 的解决办法
摘要:终端输入 cd /var/lib/dpkg sudo mv info{,.bak} sudo mkdir info sudo dpkg --configure -a sudo apt-get install -f 然后执行sudo apt-get update 再进行相关的install 即可
阅读全文
posted @
2013-01-24 13:58
@且听风吟@
阅读(295)
推荐(0)
linux 性能分析工具整理
摘要:工作中常常需要对系统性能进行分析,整理常用的工具如下: Linux性能测试 top命令 Linux性能测试 top衍生命令 atop/htop/slaptop Linux性能测试 uptime命令 Linux性能测试 iostat命令 Linux性能测试 vmstat命令 Linux性能测试 sar命令 Linux性能测试 strace命令 Linux性能测试 mpstat命令 ...
阅读全文
posted @
2013-01-24 09:06
@且听风吟@
阅读(221)
推荐(0)
[转载]Linux性能测试 tcpdump命令
摘要:用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具。 tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。 实用命令实例 默认启动 tcpdump普通情况下,直接启...
阅读全文
posted @
2013-01-24 09:00
@且听风吟@
阅读(841)
推荐(0)
[转载]Linux性能测试 top命令
摘要:原文地址:http://www.cnblogs.com/txw1958/archive/2012/07/25/linux-top-command.htmltop命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。 top可以显示CPU占用率为前几位的进程,并提供CPU的实时活动情况 语法:top [-s time] [-d count] [-q] [-u] [-h] [-n number] [-f filename] -s time 设置屏幕刷新的延时,单位为秒,默认值5秒 -d count 设置屏幕刷新的次...
阅读全文
posted @
2013-01-24 08:58
@且听风吟@
阅读(683)
推荐(0)
[转载]Python高效编程技巧
摘要:我已经使用Python编程有多年了,即使今天我仍然惊奇于这种语言所能让代码表现出的整洁和对DRY编程原则的适用。这些年来的经历让我学到了很多的小技巧和知识,大多数是通过阅读很流行的开源软件,如Django, Flask, Requests中获得的。 下面我挑选出的这几个技巧常常会被人们忽略,但它们在日常编程中能真正的给我们带来不少帮助。1. 字典推导(Dictionary comprehensions)和集合推导(Set comprehensions) 大多数的Python程序员都知道且使用过列表推导(list comprehensions)。如果你对list comprehension...
阅读全文
posted @
2013-01-24 08:30
@且听风吟@
阅读(202)
推荐(0)
[转]Linux性能测试 pmap命令
摘要:名称: pmap - report memory map of a process(查看进程的内存映像信息) 用法 pmap [ -x | -d ] [ -q ] pids... pmap -V 选项含义 -x extended Show the extended format. 显示扩...
阅读全文
posted @
2013-01-24 08:26
@且听风吟@
阅读(258)
推荐(0)
单网卡多ip配置
摘要:单个网卡配置多个ip:使用服务器:Ubuntu 10.10 server版。首先需要获取一些空闲的可用ip,至少可以通过ping测试为不可达配置方式记录如下:修改/etc/network/interfaces 文件:增加记录:iface eth0:1 inet staticaddress x.x.x.xnetmask 255.255.255.0如果增加多个,则可以分别eth0:1 eth0:2 eth0:3 这样修改后,执行 ifup eth0:1(root用户) 则可以将eth0:1对应的生效可以通过其他机器ping 配置的ip,如果可以ping通则证明配置成功(不要再配置的机器ping测试
阅读全文
posted @
2013-01-23 16:38
@且听风吟@
阅读(280)
推荐(0)
[转载]Latency Numbers Every Programmer Should Know
摘要:http://yaronspace.cn/blog/archives/1528Latency Comparison Numbers--------------------------L1 cache reference 0.5 nsBranch mispredict 5 nsL2 ca...
阅读全文
posted @
2013-01-18 13:58
@且听风吟@
阅读(218)
推荐(0)
[转]C++的五种内存存储区
摘要:http://www.51weixue.com/thread-311-1-1.html 在C++中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。 栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。里面的变量通常是局部变量、函数参数等。 堆,就是那些由new分配的内存块,他们的释放编译器不去管,由我们的应用程序去控制,...
阅读全文
posted @
2013-01-17 09:18
@且听风吟@
阅读(186)
推荐(0)
几道有意思的智力面试题
摘要:http://blog.sina.com.cn/s/blog_64b9c6850100u9v7.html1、考虑一个双人游戏。游戏在一个圆桌上进行。每个游戏者都有足够多的硬币。他们需要在桌子上轮流放置硬币,每次必需且只能放置一枚硬币,要求硬币完全置于桌面内(不能有一部分悬在桌子外面),并且不能与原来放过的硬币重叠。谁没有地方放置新的硬币,谁就输了。游戏的先行者还是后行者有必胜策略?这种策略是什么? 答案:先行者在桌子中心放置一枚硬币,以后的硬币总是放在与后行者刚才放的地方相对称的位置。这样,只要后行者能放,先行者一定也有地方放。先行者必胜。2、一个矩形蛋糕,蛋糕内部有一块矩形的空洞。只用一刀,
阅读全文
posted @
2013-01-14 21:43
@且听风吟@
阅读(264)
推荐(0)
[转]Office visio 2007 打开后死机,提示关闭
摘要:Office visio 2007 关闭死机问题解决 问题事件名称: APPCRASH 应用程序名: VISIO.EXE 应用程序版本: 12.0.6211.1000 应用程序时间戳: 46d4ae1d 故障模块名称: ntdll.dll 故障模块版本: 6.0.6001.17052 故障模块时间戳: 474ffcae 异常代码: c015000f 异常偏移量: 0005b72b OS 版本: 6.0.6001.2.1.0.256.6 区域设置 ID: 2052 进入Office的安装目录找到visio运行文件以管理员身份运...
阅读全文
posted @
2013-01-10 12:09
@且听风吟@
阅读(399)
推荐(0)
dmesg 时间转换
摘要:dmesg 输出的格式不易查看,可以通过命令进行转换。 记录如下: 时间查看: date -d "1970-01-01 UTC `echo "$(date +%s)-$(cat /proc/uptime|cut -f 1 -d' ')+12288812.926194"|bc ` seconds"
阅读全文
posted @
2013-01-04 14:21
@且听风吟@
阅读(6018)
推荐(0)
[转载]如何在vi中保存更改过的只读文件
摘要:http://blog.sina.com.cn/s/blog_6a031c3701013gaj.html 是否会和我一样经常碰到这样的情景:在VIM中编辑了一个系统配置文件,当需要保存时才发现当前的用户对该文件没有写入的权限。 如果已经做了很多修改,放弃保存的确很懊恼,只好先保存在用户的主目录下,再用sudo mv移动到文件的原始位置,并按需要chown。 这样做实在太麻烦了,以下的这个技巧...
阅读全文
posted @
2013-01-04 14:19
@且听风吟@
阅读(197)
推荐(0)
五、建造(Builder)模式
摘要:建造模式是对象的创建模式。建造模式可以将一个产品的内部表象与产品的生成过程分割开来,从而可以使一个建造过程生成具有不同的内部表象的产品对象。 在有些情况下,一个对象的一些性质必须按照某个顺序赋值才有意义。在某个性质没有赋值之前,另一个性质则无法赋值。这样情况使得性质本身的建造涉及 到复杂的业务逻辑。建造者模式将产品的结构和产品的零件建造过程对客户端隐藏起来,把对建造过程进行指挥的责任和具体建造...
阅读全文
posted @
2013-01-03 18:39
@且听风吟@
阅读(173)
推荐(0)
四、单例(Singleton)模式
摘要:单例模式是对象的创建模式。其确保一个类只有一个实例。完成类的实例化,并向整个系统提供这个实例。 单例模式的要点有三个 只能有一个实例 自行创建这个实例 向整个系统提供这个实例 单例类实现上又包括饿汉式单例类和懒汉式单例类 饿汉式单例类 类初始化时进行实例化 懒汉式单例类 在第一次调用的时候实例化
阅读全文
posted @
2013-01-02 21:03
@且听风吟@
阅读(161)
推荐(0)
三、抽象工厂(Abstract Factory)模式
摘要:抽象工厂也是类的创建模式。抽象工厂面对的是多个产品等级结构的系统设计。而工厂方法模式针对的是一个产品等级结构。 该模式在增加新的产品族时:只需要在每个产品等级下面增加一个具体的产品角色即可。只需要对应的增加新的具体工厂类即可,是满足“开闭”原则的。 当模式在增加新的产品等级时:就需要修改工厂角色的接口,为其增加一个新的工厂方法。因此所有的工厂角色都需要修改,需要为每个工厂类都增加一个新的...
阅读全文
posted @
2013-01-02 11:46
@且听风吟@
阅读(143)
推荐(0)
二、工厂方法(Factory Method) 模式
摘要:工厂方法模式是类的创建模式,又叫虚拟构造子(Virtual Constructor)模式或者多态性工厂(Polymorphic Factory)模式。 该模式中,核心的工厂类不再是负责所有的产品创建,而是将具体创建的工作交给具体子类去做。 即提供一个抽象的接口工厂类。针对不同的产品从抽样的接口工厂类实现对应的产品工厂类。工厂类和产品类一一对应。 工厂方法模式添加新的产品,只需要对应的向系统中...
阅读全文
posted @
2013-01-02 11:36
@且听风吟@
阅读(234)
推荐(0)
一、简单工厂(Simple Factory)模式
摘要:简单工厂模式是类的创建模式,又叫做静态工厂方法模式(Static Factory Method)模式。由工厂对象决定创建出哪一种产品类的实例。 对简单工厂来说,增加一个新产品是一个痛苦的过程。工厂角色需要知道每一种产品,如何创建他们,以及何时向客户端提供他们。即增加新的产品 意味着需要修改这个工厂角色的源代码。 一个使用简单工厂的代码示例如下: 1: //...
阅读全文
posted @
2013-01-02 10:14
@且听风吟@
阅读(190)
推荐(0)
设计模式的原则
摘要:单一职责原则(Single Responsibility Principle,SRP)定义:There should never be more than one reason for a class to change.即有且只有一个原因引起类的变更。即类要提供的功能尽可能简单明确。其意义如下:降低类的复杂性,实现的职责具有清晰的定义提高可读性提高可维护性降低变更引起的风险,对系统扩展性和可维护性都有帮助。但是单一职责存在的一个问题是,“职责”没有一个明确的划分标准。如果分的太细,则会导致接口和实现类的数量的增加,反而提高了负责度,降低了可维护性。在具体应用时要适度把握。接口隔离原则(Int
阅读全文
posted @
2013-01-02 08:06
@且听风吟@
阅读(169)
推荐(0)