自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 资源 (15)
  • 收藏
  • 关注

原创 X-Pack的machine learning

如何使用X-Pack的machine learning 最近在使用X-Pack中的机器学习功能,主要的就是利用非监督的时间序列模型,用来检测流量的变化,关于X-Pack这块的文章好像可以参考的比较少,所以我在这篇文章中大致的把X-Pack的机器学习功能做一个简单的介绍。1. X-Pack的安装我们本身是要搭建一个ELK平台,X-Pack只是其中的一部分,ELK平台的搭建网上有

2018-01-31 23:32:34 2643

原创 pyspark的pickle.PicklingError

今天在用pyspark的时候在一个类中调用rdd的map的时候报错,代码如下:rdd = df.filter(size(df.emission) > 50).\ rdd.map(lambda row:hmm_learn(row, self._id))rdd.collect()运行的时候报错: pickle.PicklingError: Cannot pickle files

2017-08-21 18:08:27 4442 1

原创 一行代码引发的"血案"

昨天在使用pykafka的时候又遇到了之前我遇到过的PartitionOwnedError、ConsumerStoppedException异常,关于这个异常我之前写过一篇分析的文章(链接在这里),我自认为之前应该是把这个问题彻底解决了的,但是这次它又幽灵般的出现了,使我百思不得其解。 一、问题的出现 我在多台机器上面同时开启了多个进程来读写同一个topic,这个topic有5个partitio

2017-07-15 17:07:17 3054

原创 Python2的function cache实现

今天看到Python3中有lru_cache的function cache,无聊就试着在Python2.7中实现了一个简单的版本:#!env python#coding=utf-8# # Author: [email protected]# # Created Time: 2017年05月28日 星期日 09时34分06秒# # FileName: test

2017-05-28 10:19:14 2874

原创 multiprocessing解析(二):Pool解析

前面一篇已经把multiprocessing.Process这个最基础的类给解剖了,接下来的这篇就是整个multiprocessing中最重要的类Pool的浅析了,因为如果把Pool的所有方方面面都顾及到的话篇幅会比较长,所以我只会把Pool的整体框架整理一下,细节的内容可以更多的去阅读源码。 1. multiprocessing.Pool的几个参数的解读 Pool的构造参数中有三个我认为比较有

2017-05-22 19:21:07 11690

原创 multiprocessing解析(一):Process的解析

最近项目中为了提升Python的运行效率,要使用到multiprocessing模块,场景其实不算复杂但是为了避免带来一些隐晦的bug,我觉得还是深入了解一下它比较好。因为当我使用multiprocessing的时候我觉得Python替我做的事情太多了(其实也就是用multiprocessing太方便了)给我带来了快感却没有安全感,还有一个主要的原因就是我觉得fork是最”奇幻”的函数。 可能会分

2017-05-21 09:45:41 23169

原创 pykafka性能比较

最近做了一下pykafka的性能测试,主要涉及到use_greenlets、use_rdkafka、sync这三个参数。 1. 测试的数据 我用一个770MB的日志文件来作为测试数据,文件包含的行数为10175702 行。 2. 测试的demo 在写测试demo的时候遇到了几个问题,别看这么简单、很短的代码却也遇到了几个”棘手”的问题。#!env python#coding=utf-8#

2017-05-12 22:41:32 8143 7

原创 python-daemon日志记录的一个小问题

最近用到了python-daemon这个库来使一个进程成为daemon进程,代码大致如下:#!env python#coding=utf-8import loggingimport multiprocessingimport logging.configimport daemonfrom test import wrapper2logger = Nonepool = Nonedef m

2017-05-04 13:46:16 3193

原创 Django的request.POST获取不到内容的原因

我通过如下的一段程序发送post请求:import urllib3pool = urllib3.connection_from_url('http://127.0.0.1:8090')resp = pool.request('POST', '/polls/', fields={'key1':'value1', 'key2':'value2'}, headers={'Content-Type':'

2017-01-07 17:34:14 26600 15

原创 解决centos中"ImportError: No module named _tkinter"问题

今天想要用Metasploit的时候出现了"ImportError: No module named _tkinter"的错误,_tkinter是被Tkinter模块引用的,因为对Tkinter不太熟悉所以也不知道为什么会有这个错误。 我本身是在centos中,而且系统中存在不同的账号分别使用了不同版本的Python,所以我先在root账号下试了一下import Tkinter是OK的,接着用命令

2016-12-28 14:16:18 8540

原创 pykafka的SessionExpiredError、PartitionOwnedError、ConsumerStoppedException

这两天一直在使用pykafka做简单的开发,但是这个看起来简单的开发任务中却遇到了几个问题,在网上找了一下好像关于这几个问题的讨论(回答)不多,在这里记录一下,为其他遇到类似问题的同学提供一些思路。 任务简化一下就是多个输入把日志信息输入kafka队列中,为了提高处理的效率在队列的另外一端开启多个进程处理日志信息,也就是对一个topic有多个consumers,所以理所当然的用到了kafka的b

2016-11-26 18:24:03 4541 1

原创 pykafka的NoBrokersAvailableError原因

pykafka NoBrokersAvailableError kafka

2016-11-17 16:34:27 35989 4

原创 kafka启动过程中的一个小问题

最近项目要用到kafka,按照网上的示例操作一遍,发现第一步就会报错,折腾了半天才发现问题的原因。这里记录一遍以避免同样的问题。第一步下载了kafka的tar源码包,然后要启动zookeeper,执行如下命令: bin/zookeeper-server-start.sh -daemon config/zookeeper.properties此时就会有如下的错误出现: 错误: 找不到或无法

2016-11-06 11:33:07 5993 3

原创 Python相对、绝对导入浅析

这篇文章从另外一个不同的视角来分析一下Python的import机制,主要的目的是为了搞懂import中absolute、relative import遇到的几个报错。 这里不同的视角是指从Python import hooks这个方面来展开,当然本身关于Python import hooks有很多的文章,我这里不打算展开聊这个方面的内容,文章中主要会结合代码和PEP 302 – New Impo

2016-09-15 16:10:41 23928 1

原创 如果获得页面跳转的最终URL

最近做一个小功能,就是获取一个页面经过跳转后的最终页面URL,这里的跳转方式包含但不仅限于HTTP 301/302、js、meta refresh。下面是我想到的三种可能的解决方式,可能会有更优的方法,期望大家提出更好的方法。首先的解决方法就是解析html页面,获得html页面中跳转的URL。 这种方式是我能想到的最高效、速度最快的方法,但是也有可能是最难维护的,因为我们必须对各种跳转方式都要了

2016-08-06 16:15:23 31032 7

原创 Cython初窥

这篇关于Cython的文章主要是用来阐述什么是Cython,Cython的主要用途是什么。对于Cython的具体用法基本不涉及,因为我觉得了解它的主要用途以及它的优缺点,那么等到有使用场景的时候再来学习一下它的document就可以了。 1. Python的扩展模块(extention module) 我们知道可以用c、c++来扩展Python,这样做的目的就是为了把一些关键功能用更快、更高效的

2016-06-14 14:38:03 8259

原创 HTTP的303、307状态码

之前在《http权威指南》中看到了HTTP的307状态码,当时因为没有找到可以实验的网站所以没有比较深的印象,今天在排查一个问题的时候恰巧遇到了HTTP/1.1 307 TemporaryRedirect,所以特意记录一下。     客户的站点url为:http://www.seechina.com.cn:80,我用命令curl http://www.seechina.com.cn:80 -vv执

2016-05-26 22:43:33 66648 1

原创 ImportError: No module named 'xxx'的另外一种原因

今天遇到了一个关于Python的ImportError: No module named 'xxx'问题,其中也算是一些经验总结,特记录如下。    问题的场景大致是这样的:在django中我新建了一个名为sitesetting的app,这个app不是通过django的python manage.py startapp sitesetting命令来新建的,而是我手动mkdir sitesettin

2016-05-19 09:32:23 23832 3

原创 DNS的备忘

最近稍微深入的了解了一下DNS,本文记录过程中的一些知识点作为备注。 1. 权威应答or非权威应答 在用nslookup来查询域名的DNS时有时候会出现“Non-authoritative answer“的情况。其现象如下:lxg@lxg-ThinkPad-X240:~$ nslookup baidu.comServer: 127.0.1.1Address: 127.0.1.1

2016-05-10 22:27:39 4152

原创 遇到的一个坑

遇到的一个坑 这两天没事看了一下Python的metaclass机制,然后把网上的一个示例直接拿来跑了一下。在示例的基础上面加了一点其它的功能想验证一下自己的想法,发现出现了一个很诡异的情形,最后发现是自己给自己挖的一个坑。1. Python的metaclass 关于Python的metaclass机制文章网上已经有很多优秀的文章了,我就不再赘述了,简单的总结一下我的理解: 1. Pytho

2015-12-01 13:36:30 1180

原创 Python的星号(*、**)的作用

Python的星号(*、**)的作用1. 函数的可变参数当函数的参数前面有一个星号*的时候表示这是一个可变的位置参数,两个星号**表示是可变的关键字参数。#!env python#coding=utf-8#def foo(*args, **kwarg): for item in args: print item for k,v in kwarg.items():

2015-11-30 17:13:36 29350

原创 MongoDB的并发

MongoDB的并发 线上环境遇到MongoDB的性能瓶颈,为了解决性能瓶颈学习了一下MongoDB中的并发机制,记录如下。下文中主要是对比了MongoDB 2.2和3.0.7这两个版本的并发机制。1. MongoDB锁的类型 在2.2版本中MongoDB用的是读写锁,允许并行的读但是只能互斥的写,当一个读锁存在的时候可以有多个读操作共享这个锁,但是当一个写锁存在的时候只能有一个写操作获得这个

2015-11-19 16:53:01 26604

原创 http的302 redirect的一个问题

今天在curl一个网站的时候遇到一个奇怪的问题,下面是输出: lxg@lxg-X240:~$ curl -L http://www.yngs.gov.cn/ -v * Hostname was NOT found in DNS cache * Trying 116.52.12.163… * Connected to www.yngs.gov.cn (116.52.12.16

2015-11-04 23:05:42 23854 3

原创 Nmap-服务探测

Nmap的服务探测1. 服务探测流程 1. Nmap先做端口扫描,然后把状态为open或者是open|filtered的TCP或UDP端口传递给服务识别模块,最后这些端口会并行的做服务探测。 2. Nmap检查端口是否是需要排除的端口(见下文的Exclude Directive),如果是需要排除的端口那么Nmap不会对这个端口做服务探测。这里主要是避免对一些打印机的服务端口发包。 3. 如

2015-11-01 21:29:36 11288 1

原创 Python中的编码

1. Python源码文件的编码Python源码文件的编码格式决定了在该源文件中声明的字符串(str和unicode)的编码格式,例如py源码如下:#!/usr/bin/env python# coding:utf-8if __name__ == '__main__': str='中文' print repr(str)如果文件保存为utf-8(vim 中用set fileencod

2015-10-18 16:47:27 11386

原创 shell中的数组

shell中的数组shell作为一门语言那肯定是不能缺少数组了,下面记录了shell中数组的一些相关内容。 Bash 提供了一维数组变量。任何变量都可以作为一个数组;内建命令 declare 可以显式地定义数组。数组的大小没有上限,也没有限制在连续对成员引用和赋值时有什么要求。数组以整数为下标,从 0 开始。1. 定义和初始化数组下面的示例总结了如何定义一个数组和如何来初始化数组:decl

2015-10-17 16:57:33 12064 1

原创 MongoDB一次性能问题处理

MongoDB一次性能问题处理 问题:发现线上环境web界面获取MongoDB中的数据变得很慢(界面主要是查询),接着查看Rabbitmq消息队列中对应功能队列中堆积了不小的消息(worker主要是插入数据)。从上面的问题现象来看基本是MongoDB出现了性能的问题,大致的排查了一下MongoDB。1. 首先查看一下系统资源: root@mongo-2-6-0-5:~# free -m

2015-10-15 15:03:13 5399 1

原创 Linux find命令的几个备忘

Linux find命令的几个备忘下面的内容只是我在使用Linux的find命令时候遇到的几个小问题,在这里做一个记录,更详细的find命令的使用参考man手册。1. -name | -path中的pattern是精准匹配首先我们看一下-name的几个示例: liuxingen@V6-Dev ~/station/test $ ls test.py test.pyc liuxinge

2015-10-12 16:03:02 5855

原创 漫谈字符集和编码

漫谈字符集和编码作为程序员,如果没有被字符集和编码坑过那说明你的人生太不完美了,哈哈。1. 字符集和编码的关系在最开始遇到字符集和编码的问题时,那时候Unicode和utf-8还未完全推广开来,遇到的很多是gbk和其它编码之间转换的问题。像gbk之类的基本就是一个字符集对应一种编码,所以那时候就简单的理解“字符集和编码是同一个概念”,直到后来遇到Unicode和utf-8、utf-16,才发现这两个

2015-10-04 21:46:30 3725

原创 System V IPC & POSIX IPC(一):消息队列

System V IPC & POSIX IPC(一):消息队列消息队列允许进程之间以消息的形式交换数据,是一种常见的进程之间的通信机制。1. 消息队列的创建System V IPC: int msgget(key_t key, int msgflg); 返回值:message queue identifier on success, or -1 error 参数key:key一般

2015-09-23 22:52:21 1931

原创 msgsnd的一个小问题

今天写了一个System V消息队列的小例子,定义了一个如下的结构体:#define MSG_SIZE 8192struct request{ long mtype; int client_id; char pathname[MSG_SIZE];};接着我调用msgsnd想把这个结构体发送给server,但是发现报错了: msgsnd error, Invalid

2015-08-15 11:30:49 2635 1

原创 Linux的ftok源码

Linux的ftok()函数源码linux中的System V IPC中的get函数需要用到ftok()来生成一个key,闲来无事把ftok()函数实现了一下。1. ftok的man手册 NAME     ftok - convert a pathname and a project identifier to a System V IPC key SYNOPSIS

2015-08-01 23:17:57 1428

原创 Linux的system()和popen()差异

Linux的system()和popen()差异1. system()和popen()简介在linux中我们可以通过system()来执行一个shell命令,popen()也是执行shell命令并且通过管道和shell命令进行通信。 system()、popen()给我们处理了fork、exec、waitpid等一系列的处理流程,让我们只需要关注最后的返回结果(函数的返回值)即可。2. syste

2015-07-25 22:06:33 53738 4

原创 Linux的ioctl和fcntl

Linux的ioctl和fcntl1. 一切都是文件在Linux中一切设备都当作文件,也就是说一切设备都抽象成一个文件,能够提取出来一些共同的特征。文件的一些最常用的操作,如打开、读取、写入等,Linux都提供了单独的系统调用(open、read、write)供程序使用。2. fcntl NAME     fcntl - manipulate file descriptor

2015-07-15 20:56:56 5884

原创 linux进程的用户ID

linux进程的用户ID1. 前言最近关于”太极越狱的iOS 8.1.3-8.4含有重大安全后门,越狱后导致任意APP可以提权到Root”新闻在安全圈传的比较广,具体的一篇文章见:太极越狱重大安全后门。从这篇分析文章中看到主要就是因为太极越狱修改了setreuid这个系统调用,导致任意APP都可以通过setreuid(0,0)来获取root权限。2. setreuid定义 #include <s

2015-07-04 12:28:13 1698

原创 linux crypt函数

linux crypt函数1. crypt定义 #define _XOPEN_SOURCE /* See feature_test_macros(7) */ #include <unistd.h > char *crypt(const char *key, const char *salt);上面是man 3 crypt看到的crypt函数定义。 从定义中看到要想

2015-06-28 19:08:03 20468

原创 linux getrlimit sysconf

linux中getrlimit和sysconf/*************************************************************** > File Name: rlimit_sysconf.c > Author: lxg > Mail: [email protected] > Created Time: 2015年06

2015-06-22 10:40:49 993

转载 【转载】非实时进程、实时进程、静态优先级、动态优先级、实时优先级

1 convential process 1.1 static priority范围为100-139(MAX_RT_PRIO - MAX_PRIO-1)内核2.6中的静态优先级相当于内核2.4中的nice值,但转到MAX_RT_PRIO到MAX_PRIO-1取值范围,其公式为:static priority = nice + 20 + MAX_RT_PRIO内核定义

2015-06-20 17:49:54 1142

原创 Linux raw socket

Linux raw socket==========================================1. 为什么要详细了解raw socket呢? 其实很早以前就对原始套接字有了一定的了解,那时候还做过一个小的抓包程序,当时以为对原始套接字很熟悉了,但是最近在看nmap的时候被其中的一句话给整迷糊了。  在《Nmap Network Discovery III》的SYN scan章

2015-05-10 17:26:54 12094 1

原创 linux中的setsid函数

linux中的setsid函数定义 setsid - creates a session and sets the process group ID上面是关于setsid函数的定义,我们一般都只记得setsid会新建一个会话,其实它还有另外一个功能:新建进程组。 2. 前提 在setsid的man手册中首先提到的第一句就是:调用进程不能是进程首进程,也就是说要想setsid调用成功那么调

2015-05-08 22:31:55 16788 1

fibonacci 汇编

fibonacci 汇编实验报告,欢迎大家下载啊……

2009-12-14

java+jsp做的网上书店源码+报告

java jsp 网上书店源码还有需求分析报告

2009-12-02

java+jsp的手机购物网站

这是在外面培训的时候做的一个中级项目,用java+jsp做的购物系统!

2009-12-02

ACM基础知识ppt

这是关于acm的一些基础知识的ppt,像贪心算法,动态规划等!

2009-12-02

JAVA+Socket聊天室源程序

JAVA+Socket聊天室源程序,这是用java写的一个比较小的聊天室源码,可以用来做学习用!

2009-12-02

46家著名公司笔试题目2.doc

很好的找工作的资料,46家著名公司笔试题目

2009-11-20

JavaScript教学例子

这是一些从最基础的JavaScript例子到比较高级的JavaScript特效(像拖放啊,解析xml等)的例子源码。

2008-12-24

中国移动业务管理系统(struts_spring_hibernate)

中国移动业务管理系统(struts_spring_hibernate)

2008-12-13

jsp+servlet+oracle开发的网上书店

这是我们在培训时的一个网上书店项目,需求比较简单,对于那些初级入门的可以相互学习,借鉴。 主要包括前台和后台,还有数据库设计。 因为是不同的同学合并以后的,可能代码风格会不同,而且还有bug。

2008-11-21

jsp写的带有动态验证码的登录程序

这是一个通过jsp写的带有动态验证码的,还有是否保存登录记录的登录窗体源代码~

2008-11-07

经典Oracle 9i 课件,适合初学者

这是我在一个培训机构培训时发的课件,觉得比较好,适合初学者~~~

2008-11-05

网页三剑客8注册机~~~~~~~

比较强大的注册机,网页三剑客的~!~~~~~~~~~

2008-11-05

比较适合与初学者的servlet的ppt和jsp教程~

比较适合初学者的servlet和jsp教程~

2008-11-04

自己写的比较简单的留言板(jsp+ servlet+源码和数据库)

这是我用一天写的比较简单的留言板,里面有源码,还有数据库建表语句,是用jsp+servlet来实现的~!

2008-11-04

网上书店需求分析和数据库设计

这是一个小型的网上书店的需求分析报告,包括前台和后台,里面还有数据库的详细设计。

2008-11-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除