注册 登录
  • 欢迎访问"运维那点事",推荐使用Google浏览器访问,可以扫码关注本站的"微信公众号"。
  • 如果您觉得本站对你有帮助,那么可以扫码捐助以帮助本站更好地发展。

Python后台进程实现

Unix/Linux操作系统提供了一个fork()系统调用,它非常特殊。普通的函数调用,调用一次,返回一次,但是fork()调用一次,返回两次,因为操作系统自动把当前进程(称为父进程)复制了一份(称为子进程),然后,分别在父进程和子进程内返回。 子进程永远返回0,而父进程返回子进程的ID。这样做的理由是,一个父进程可以fork出很多子进程,所以,父进程要记下……继续阅读 »

彭东稳 1个月前 (07-18) 345浏览 0评论 0个赞

Python处理SQL语句(提供SQL查询平台使用)

在搞公司的SQL查询(MySQL)平台时,需要对用户查询SQL进行条数限制,默认是在配置文件中配置一个“limit = 1000”这样的参数。最自然想到的就是对用户通过web传入的SQL做处理,默认加上limit参数。这样一来就有这么几个问题需要处理: 1. 如果用户自己传入了limit 10这样的条件怎么办? 2. 如果用户自己传入了limit 10,2这……继续阅读 »

彭东稳 5个月前 (03-14) 1985浏览 0评论 0个赞

C语言拾遗:数组指针

一、数组介绍 在程序设计中,为了处理方便,把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称为数组。 在C语言中,数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。 对于数组(Array)数据结……继续阅读 »

彭东稳 8个月前 (12-15) 2360浏览 0评论 0个赞

Python把MySQL查询转为Insert语句

下面贴出利用Python把MySQL查询结果转换为Insert语句,当然你使用一些客户端工具更方便了。但是有些需求没法使用工具搞了,比如我要把查询结果立马插入到另一个数据库中,并且查询结果中有些信息需要变更处理,这种使用脚本就很快了。 #!/usr/bin/env python # encoding: utf-8 # ……继续阅读 »

彭东稳 8个月前 (12-13) 3249浏览 2评论 0个赞

Python字符串跟MySQL字符串比较

学习Python和MySQL之后,发现很多相似之处,结果相同,但实现方式都不太一样。学习一门语言,一个数据库,字符串的处理都是一个相对重要的部分,所以我决定对比一下两者的差别。 下面的演示会一边Python,一边MySQL,所以按照这个思路来看就不会感觉突兀了。 1. 转义字符 >>> print '\\' ……继续阅读 »

彭东稳 10个月前 (10-26) 2713浏览 0评论 0个赞

使用Python操作Zabbix Api

众所周知,zabbix是一款强大的分布式监控系统,集各家所长于一体,得到了广大SA的认可。其强大的管理界面也极其方便,但是美中不足的是,如果同时有大批量(50台+)的服务器需要添加监控时,这时,其图形界面反而显得有些臃肿了,好在zabbix提供了一套强大的API管理接口,我们可以使用它快速地添加或删除成千上万台服务器了。 下面的流程图代表了Zabbix AP……继续阅读 »

彭东稳 12个月前 (09-01) 11319浏览 0评论 5个赞

Python多版本及环境管理工具:pyenv和virtualenv

一、virtualenv Python的背后有着庞大的开源社区支持,但是有一个缺点就是每个包的质量都参差不齐,如果我们在工作服务器上去测试安装每个包,就会造成整个的服务器形成庞大复杂的第三方包依赖。virtualenv是一个Python环境配置和切换的工具,可以用它配置多个Python运行环境,和系统中的Python环境隔离,即所谓的沙盒。 沙盒的好处包括:……继续阅读 »

彭东稳 1年前 (2017-04-18) 5584浏览 1评论 1个赞

服务器巡检shell脚本,python生成excel文档并邮件发出

投稿:此篇文章由运维那点事用户@小番茄投稿! 背景及思路: 五一小长假之前,公司要求我做一次服务器巡检。 1、写了一个简单的脚本获取服务器的各种基础信息:cpu,内存,swap分区使用情况,磁盘,网卡信息种种,具体见脚本,将这些信息追加到一个文件中,然后在监控机上做一次汇总,汇总方式就不详谈,我用的是for循环ssh追加。 2、然后利用python的xlsx……继续阅读 »

彭东稳 2年前 (2017-02-09) 7483浏览 2评论 1个赞

Python一句命令启动一个Web服务器

在工作中经常需要两个主机之间传输文件,最常用的就是scp了,当然也有rsync,rz,sz之类的命令了。即时传输还是有点麻烦,scp随简单但是需要对方的用户和权限。Python有一句命令启动一个web服务器(在要传输文件的当前目录开启),然后再对方服务器就可以直接使用wget命令下载文件了,很方便,经常使用。 利用Python自带的包可以建立简单的web服务……继续阅读 »

彭东稳 2年前 (2016-12-16) 5987浏览 0评论 0个赞

三种web会话管理方式

三种会话管理方式介绍 http是无状态的,一次请求结束,连接断开,下次服务器再收到请求,它就不知道这个请求是哪个用户发过来的。当然它知道是哪个客户端地址发过来的,但是对于我们的应用来说,我们是靠用户来管理,而不是靠客户端。所以对我们的应用而言,它是需要有状态管理的,以便服务端能够准确的知道http请求是哪个用户发起的,从而判断他是否有权限继续这个请求。这个过……继续阅读 »

彭东稳 2年前 (2016-11-24) 5057浏览 0评论 0个赞

Python包管理工具:setuptools和pip使用

Python包管理工具简介 1. setuptools setuptools管理Python的第三方包,将包安装到site-package下,安装的包后缀一般为.egg,实际为ZIP格式。默认从 http://pypi.python.org/pypi 下载包,能够解决Python包的依赖关系;安装了setuptools之后即可用 easy_install 命……继续阅读 »

彭东稳 2年前 (2016-04-22) 6320浏览 0评论 0个赞