Python 进行DNS解析监控

分类:Python

  1. #!/bin/env python
  2. #domain_check.py
  3. #coding=utf-8
  4.  
  5. import time,DNS
  6.  
  7. Domain=["linuxany.com"]
  8. DNS_Server=['8.8.8.8']
  9. Current_time=time.asctime()
  10.  
  11. DNS.defaults['server']=DNS_Server
  12. DNS.DiscoverNameServers()
  13.  
  14. for domain_name in Domain:
  15.      request=DNS.Request()
  16.      try:
  17.               result=request.req(name=domain_name,qtype="A")
  18.       except DNS.Base.DNSError:
  19.               message=domain_name+"  解析超时!\n"
  20.       else:
  21.               if not len(result.answers):
  22.                       message=domain_name+" 无解析记录!\n"
  23.               else:
  24.                       message=domain_name+ "解析正常!\n"
  25.        print Current_time+" "+message

Python 时间戳转换

分类:Python

#!/bin/env python
import time
print time.time()

1255334367.7758279

print time.ctime(1255334367.7758279)

Mon Oct 12 15:59:27 2009

#date +%s

  1255332871

#date -d '1970-01-01 1255332871 seconds' +"%Y-%m-%d %T"

  2009-10-12 07:34:31

Python 邮件模块小应用

分类:Python

  1. #------方案1---------------------
  2. #!/bin/env python
  3. import email.MIMEText
  4. email_body=""" hello,this is a python mail test!""" #定义邮件内容
  5. msg=email.MIMEText.MIMEText(email_body)
  6. msg['To']="blog@linuxany.com" #定义邮件发送目标地址
  7. msg['FROM']="webmaster@linuxany.com" #定义邮件发送源地址
  8. msg['Subject']="this is a python mail test" #定义邮件主题
  9. print msg.as_string()

继续阅读 »

Nginx 性能优化(突破十万并发)

nginx配置文件常用优化:

worker_processes 8;

nginx进程数,建议按照cpu数目来指定,一般为它的倍数。
worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000;
为每个进程分配cpu,上例中将8个进程分配到8个cpu,当然可以写多个,或者将一个进程分配到多个cpu。

worker_rlimit_nofile 102400;

这个指令是指当一个nginx进程打开的最多文件描述符数目,理论值应该是最多打开文件数(ulimit -n)与nginx进程数相除,但是nginx分配请求并不是那么均匀,所以最好与ulimit -n的值保持一致。

继续阅读 »

世界海底光缆分布图

全图预览[点击下图可查看高清图片]
世界海底光缆图(出自linuxany.com)

继续阅读 »

Python表单和常用数据验证

分类:Python

  1. #! /usr/bin/env python
  2. #coding=utf-8
  3. import types
  4. import re
  5.  
  6. """
  7. 验证所有表单提交的数据
  8. """
  9.  
  10. #判断是否为整数 15
  11. def IsNumber(varObj):
  12.  
  13.     return type(varObj) is types.IntType
  14.  
  15. #判断是否为字符串 string
  16. def IsString(varObj):
  17.  
  18.     return type(varObj) is types.StringType

继续阅读 »


返回顶部