- 博客(145)
- 资源 (6)
- 收藏
- 关注
原创 如何使python脚本运行在daemon模式
有一个很好的库可以完成这一功能,可惜因为文档少所以网上例子不太多库名:python-daemon可以通过Pip来安装最简单的使用方式import daemonwith daemon.DaemonContext(): print "your code"当然代码块中最好放一个长时间执行并写日志到某个路径的代码,方便观察代码的执行情况简单但是缺乏必要的控制,比如 如果我们想保证无论多次执行程
2018-01-02 14:58:30
7491
原创 用浏览器访问网站很快,但是用curl命令行访问却很慢
这几天遇到一个问题 问题的症状是这样的打开一个网站,用浏览器打开非常快,但是用命令行的curl或者使用python脚本来访问却非常慢用charles抓包访问了一下发现时间全花在了dns上接着我就试着修改/etc/hosts文件,无效,虽然访问最终用了hosts文件里面写的ip,但是时间依然浪费在了dns查询上面清理dns缓存 无效但是,我通过修改http请求的Host字段,并
2016-11-16 11:23:52
11236
原创 如何轻松在win和linux之间互传文件
相信刚学Linux的同学肯定有这样的困惑那么我刚开始的时候用哪种方式嘞,我列一下我使用过的方式。1.在linux服务器上开启ftp。优点:使用方便。缺点:还得配置ftp,好烦啊。2.借助一个中间网站,先上传到网站上,然后在linux上下载下来。优点:比较通用缺点:需要一个中转的网站,而且这种方法只适合windows往linux传3.使
2016-11-04 15:26:16
16209
原创 git使用代理
在使用git科隆一个repo的时候,因为这个repo的子模块是托管在google上的,还是因为gfw导致子模块科隆不下来只好使用代理了,那么怎么配置git使用代理呢代码如下因为我用的是ss所以这里的socks5的默认代理端口为1080git config --global http.proxy 'socks5://127.0.0.1:1080'git config --gl
2016-10-22 16:18:16
3992
1
原创 在docker使用ubuntu镜像并进行apt-get update的时候出现Hash Sum mismatch的问题
这个现象比较奇怪,奇怪在有时候不出现问题,但是有时候出现问题就一直都这样,在网上搜索的有的人说sudo rm -rf /var/lib/apt/lists/*有的人说是sudo apt-get clean可以解决问题,可是遗憾的是,在我这都解决不了问题,由于本来源里面就使用的ubuntu官方的源,我猜测要么就是伟大的great wall调皮导致的
2016-10-22 00:28:23
2979
1
原创 在postman里面开启chrome调试工具
http://blog.getpostman.com/2014/01/27/enabling-chrome-developer-tools-inside-postman/
2016-10-18 10:51:22
1150
原创 禅道管理系统的定时任务 代码
禅道管理系统里面有一些定时任务的,例如更新燃尽图,定时备份数据库等。昨天我发现禅道不能登录了,检查了一下发现禅道所在的目录没有空间了,排查了一下发现是禅道的定时任务每天备份数据库文件还有上传的附件,由于附件很大所以每天都占用大量的存储空间。然后我删掉了那些多余的备份,另外想禁用掉禅道的自动备份。然后问题来了禅道的定时任务是如何执行的呢?首先想到的是crontab,因
2016-09-22 12:26:50
3662
原创 解决了一个连接mysql特别慢的问题
最近使用了一台ucloud的云主机作为测试服务器用了以后发现了一个问题假设我的数据库服务器为D我的应用服务器为A新的这台云主机位C这三台机器都不在一个机房问题是这样的从A链接到D,没有问题,但是从C链接到D,非常慢,要将近20秒才有响应一开始使用A链接D没问题,我认为问题出在C上面经过排查。。。。事实并非如此其实真正的原因是因为mys
2016-08-24 15:51:16
3051
原创 使用cython保护python的代码
用Python写的程序一般都是源码发布,那么如果不想让别人看到代码内容话怎么办第一种方法是把代码编译成字节码 也就是pyc文件执行:python -m py_compile .py这种方法虽然也能隐藏源码,但是其实是可以被反编译的。第二种方式是使用cython把python代码转成c语言代码,然后编译成可执行程序方法:先安装cythonpip inst
2016-08-24 14:03:00
12411
12
转载 Faster MySQL dumps and loads with –tab and –use-threads
By default, mysqldump writes a series of sql DDL and inserts to standard out, that you can then pipe to another database server to recreate a given database.The problem is that this is all serial, a
2016-02-25 14:58:58
517
原创 Cannot redeclare class xxx in /var/www/html/xxx on line xx
php莫名其妙的报错,分明没有重新声明这个xxx类,却死活报致命错误重新声明检查了多遍以后无意重启了一下php-fpm结果解决了,经过一番查找原来是APC导致的解决思路 1:卸载APC 如果你不想卸载APC也可以使用方案2:修改apc的配置,修改为apc.include_once_override = 0apc.canonicalize = 0apc.stat = 0
2016-01-04 18:57:53
9606
原创 linux多网卡桥接设置
http://www.cyberciti.biz/faq/rhel-linux-kvm-virtualization-bridged-networking-with-libvirt/
2015-12-14 20:00:09
1807
原创 在交互式shell环境抑制命令别名
在centos下默认添加了很多别名 包括rm cp等大概类似这样alias cp='cp -i'alias ls='ls --color=auto'alias mv='mv -i'alias rm='rm -i'所以当你在交互式shell下使用cp的时候其实使用的是cp -i 所以复制的时候如果目标目录有同名文件就会不停的提示你是否覆盖是否覆盖如果想避
2015-11-04 14:21:36
546
原创 bash 快捷键
Command Editing ShortcutsCtrl + a – go to the start of the command lineCtrl + e – go to the end of the command lineCtrl + k – delete from cursor to the end of the command lineCtrl + u – delete fro
2015-10-29 14:41:39
645
原创 php和bom头的冤仇 和 如何在linux下使用命令去掉bom头
事情是这样的 我有个php文件的功能是读取一个二进制文件并且echo出来,该文件本来是图片文件,但是我访问这个php文件并且写入到本地硬盘的时候发现并不是图片格式 用hexdump 查看的时候发现文件首部多了3个字节,这不刚好就是bom的utf8编码的十六进制表示么,后来找到原因是因为有个同事包含了一个使用了bom头的php文件导致,该字节在文本编辑器里是不可见的,着实增加了调试难度。
2015-09-11 11:53:54
3126
原创 关于大端序和小段序
Most Significant Byte 指多字节序列中具有最大权重的字节 wiki中的解释: Most Significant Bit 是指一个n位二进制数字中的n-1位,具有最高的权值。与之相反的称之为最低有效位。在大端序中,msb即指最左端的位。大端就是:存储最高有效字节在最小的地址小端就是:存储最低有效字节在最小的地址帮助记忆的法子:小端就是存储
2015-09-11 11:34:11
2549
原创 rsync 带不带尾部斜杠的不同作用
rsync是很好用的同步软件,使用增量方式同步。不过使用rsync时有没有尾部斜杠效果可是不同的使用方法 rsync src dest总结一下规律:src目录没有带斜杠 :则在 dest下面有src文件夹src目录没有带斜杠:则在dest目录下面只有src目录下面的文件换言之:如果忽略了源文件斜杠 rsync将创建源文件目录的最后一个文件夹名字并且包含它的
2015-09-06 10:30:22
2742
原创 自签名证书和私有CA签名的证书的区别 创建自签名证书 创建私有CA 证书类型 证书扩展名
自签名的证书无法被吊销,CA签名的证书可以被吊销 能不能吊销证书的区别在于,如果你的私钥被黑客获取,如果证书不能被吊销,则黑客可以伪装成你与用户进行通信如果你的规划需要创建多个证书,那么使用私有CA的方法比较合适,因为只要给所有的客户端都安装了CA的证书,那么以该证书签名过的证书,客户端都是信任的,也就是安装一次就够了如果你直接用自签名证书,你需要给所有的客户端安装该证书才会被信任
2015-08-03 00:00:17
32148
原创 centos非root用户(普通用户)安装rpm包
在centos下,普通用户是无法使用yum进行安装软件的。不过我们可以使用别的方法来安装centos仓库里大量经过测试的好软件第一步 从仓库里面下载rpm包,比如安装ctags ,通过命令yumdownloader ctags然后ctags的包文件就下载下来了,但是你用RPM命令同样无法把该包安装到系统下,毕竟要写到一些关键目录 比如/bin /usr等不
2015-07-28 00:14:20
32203
3
原创 php多文件上传 对应的curl语法
在html端php官网的多文件上传例子为 Send these files: 传文件的时候var_dump($_FILES)的时候Array( [name] => Array ( [0] => foo.txt [1] => bar.txt )
2015-07-13 18:48:11
2094
原创 关于编码的一些总结
unicode定义了1,114,112个字符,0hex to 10FFFFhex ,共17个Plane第一个Plane为0x0--- 0xFFFF ,一共65536个字符,包括了最常用的字符 (其中包括中日韩的常用字符) 称之为 Basic Multilingual Plane or BMP 需要注意的是mysql的utf8字符集也只实现了这个Plane,所以mysql里面字段设置为utf8的
2015-07-13 00:00:53
639
原创 getaddrinfo使用例子和socket编程的一些参考文章
getaddrinfo的作用就是按照提示填充指定的数据结构,以供bind connect 等函数直接使用,无需手动填充所需数据结构 例如 sockaddr,这个函数的作用是替换以前的gethostbyname例子:/*** showipandprot.c */#include #include #include #include #include #includ
2015-07-08 15:07:51
3823
原创 linux下环境变量和crond定时任务 和svn钩子
有没有运行的好好的sh脚本放到定时任务或者svn钩子下面就死活无法运行了。其实这是因为,你手动运行的时候系统中已经有了很多的环境变量,而你的脚本在cron里面或者在svn的钩子里面是没有任何环境变量的,一般的解决方法就是建议大家使用绝对路径等等,但是并不是使用了绝对路径就能排除所有问题,而且有时候很难定位到问题出在哪里其实有个简单的方法:就是你在运行脚本的时候忽略所有的环境变量
2015-07-07 20:43:40
1115
原创 复杂表达式解释器 c语言复杂指针定义在线解释 正则在线解释
收集的一下解释工具1.正则解释工具http://rick.measham.id.au/paste/explain.pl2.c语言复杂指针表达式解释 英语->c语言 | c语言->英语http://www.cdecl.org/
2015-06-26 16:15:48
877
原创 curl call error(77): Problem with the SSL CA cert (path? access rights?)
系统 centos6如果出现使用cul扩展的时候提示 curl call error(77): Problem with the SSL CA cert (path? access rights?) 或者使用yum 进行更新或者安装软件的时候提示失败有一种可能就是系统的ca包没有更新 包名为ca-certificates更新一下这个包一般通过yum安装或者更新软件就没问题
2015-06-18 11:16:36
19390
转载 MySQL事务控制语句
转载自:http://blog.csdn.net/mchdba/article/details/8690935 MySQL事务控制语句 在mysql命令行的默认下,事务都是自动提交的,sql语句提交后马上会执行commit操作。因此开启一个事务必须使用begin,start transaction,或者执行 set autocommit=0; 可以使用的事务控制语句
2015-06-15 01:13:08
662
原创 apache载入php的的时候是怎么知道读取哪个目录的php的
如果服务器上安装了3个版本的php那么apache在载入php的时候到底载入的是哪个目录的PHP呢(主要载入的内容的区别在于扩展)apache里面配置载入php的命令是 php5_module modules/libphp5.so这里载入的文件没有写绝对目录,所以载入的文件是httpd目录下面的的libphp5.so(相对目录)如果这时候外面已经有3个PHP
2015-05-30 00:40:23
4224
2
原创 在windows环境下远程调试linux环境的php代码
我的测试环境是linux,开发环境是windows由于项目中用到了fastdfs,但是fastdfs没有windows的PHP扩展可以使用,所以使用fastdfs扩展的php代码就无法在windows的开发环境下进行调试(php断点单步调试的方法参考之前写的文章)或者需要调试一些莫名其妙的问题,比如同样的代码在开发环境运行完全没有问题,但是不熟到测试环境就出现非预期的错误,由于种种原因,催
2015-05-04 20:06:55
2679
原创 拥有较大数据的mysql迁移方案
方案1 In this case, normally, the best solution is a mysqldump using the --tab option like this:mysqldum --tab=/path/to/serverlocaldir --single-transaction table_atab option produce 2 file,
2015-04-24 00:27:18
8411
原创 通过vim的插件安装其他vim插件
先安装好vim插件 Vundle ,这是一个插件管理工具安装好这插件以后在~/.vimrc文件里面添加如下内容" set the runtime path to include Vundle and initializeset rtp+=~/.vim/bundle/Vundle.vimcall vundle#begin()" alternatively, pass a p
2015-04-18 20:26:18
952
原创 linux 使用alternatives 切换Java版本
xception in thread "main" java.lang.UnsupportedClassVersionError: M : Unsupported major.minor version在linux上编译的java程序,在运行的时候报这个错误。经过查找原来是javac的版本和java的版本不一致导致的,因为我机器上安装了系统自带的java-1.5.0-gcj和1.7.0
2015-04-16 18:10:57
11103
原创 在linux下用命令行编译 java的eclipse项目
由于jdk的版本问题导致在windows上编译打包好的jar包放在linux服务器上运行的时候出现一点小异常,所以决定在linux上进行一次项目编译,这有两个选择1.在相同的linux环境下安装linux版的eclipse 进行编译2.在linux用javac命令行进行编译3.用maven,ant等项目管理工具经试验,使用方法1确实解决了我遇到的问题,但是太麻烦。这里记录一下第
2015-04-16 15:48:52
11877
1
原创 mysql创建表的时候指定数据类型 括号里面数字代表的含义
M indicates the maximum display width for integer types. For floating-point and fixed-point types, M is the total number of digits that can be stored (the precision). For string types, M is the maximu
2015-04-10 16:09:26
6655
1
原创 一句话解释SETUID和SETGID
SETUID就是不管启动程序(该程序设置了setuid)的用户是谁,启动起来的程序的权限取决于(等于)文件的属主。SETGID就是不管谁在当前目录(该目录设置了setgid)创建文件或者目录,创建的文件或者目录的属组取决于(等于)父目录的属组。
2015-03-20 18:03:20
574
转载 10分钟学会理解和解决MySQL乱码问题
转载自:http://blog.jobbole.com/84906/首页最新文章在线课程业界开发IT技术设计创业IT职场在国外频道更多 »伯乐在线 >首页 > 所有文章 > IT技术 > 10分钟学会理解和解决MySQL乱码问题10分钟学会理解和解决MySQL乱码问题2015
2015-03-15 00:15:57
552
转载 brctl 配置网桥
转载自:http://zhumeng8337797.blog.163.com/blog/static/1007689142011643834429/设置linux让网桥运行 配置网桥我们需要让linux知道网桥,首先告诉它,我们想要一个虚拟的以太网桥接口:(这将在主机bridge上执行,不清楚的看看测试场景)root@bridge:~> brctl add
2015-03-14 18:02:39
1030
原创 使用xdebug调试YII程序的时候抛出CException异常
问题出现的很莫名其妙,几番查找也没找到对应解决方法,在多次尝试之后试出了解决方法解决方法为:清空所有的变量watch list. 也就是这里大概可能是因为这个面板里面的所有监控的变量,xdebug会自动在后面使用xdebug://debug-eval计算,当找不到的时候出现异常,而yii开启了 EXCEPTION_HANDLER 这是个猜测,如果有人知道的话还
2015-02-04 19:19:46
1361
1
原创 mysql 和 php的一些备忘
大概意思就是说,在mysql里面用字符串和数字比较的话,会先把字符串转换成数字 因为“string”这个字符串里面不是以数字开头的,所以转化成了0,0当然是等于0的,所以就返回mysql sql_safe_updates 没有where子句的情况下禁止执行语句
2015-02-03 20:00:53
532
c++ 解压zip包
2013-10-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人