Skip to content

Instantly share code, notes, and snippets.

@jqlblue
jqlblue / php
Created August 12, 2016 03:17
php array diff recursive
function diffRecursive($from, $to, $deleteFlag = false)
{
$diffs = [];
foreach ($from as $key => $value) {
if (array_key_exists($key, $to)) {
if (is_array($value)) {
$recursiveDiff = diffRecursive($value, $to[$key], $deleteFlag);
if (! empty($recursiveDiff)) {
$diffs[$key] = $recursiveDiff;
}
@jqlblue
jqlblue / 14年前关于it168的介绍
Created November 18, 2014 15:17
摘自兰江论坛
是不是可以,握你的手呢?
你是一个15岁男孩的父亲,孩子对生日礼物最大的期盼就是一台多媒体电脑;如果是这样,你是否需要一个信息的来源:首先这个信息源是中立的,他不受任何企业或机构的左右,以真实和准确作为第一位的追求;其次,他是平易近人的,通过图片和浅显的说明解释,你总是可以找到你满意的选择。
你是一个拥有15名员工的企业的老板,你的员工在不断地暗示你旧的486计算机已经不堪重负;如果是这样,你是否需要一个信息的来源:首先他是可能获得的最全面的市场描述,涉及了83个种类近一万款产品,给出你的需求,他清晰地罗列你可能中意的产品;其次,因为这个信息源是由近三千个专业的经销商共同提供的,他使得你在购买行为中占据非常有利的地位,通过详细的价格比较和逐渐深入的性能描述,你可以在决定之前详细了解各种产品的性能价格比以及在多大程度上适合你的企业的具体需求。
你是一个2年网龄的发烧友,你最珍惜的就是帮助周围人解决了电脑问题后得到的那种感激和钦佩的眼神;如果是这样,你是否需要一个信息的来源:首先,他是一个BBS系统,你可以了解各种关于计算机及其相关产品的讨论,这里最重要的事情就是自由和坦诚,其次,这里提供最新的(24小时更新)的产品和对这些产品的详尽的讨论,你另外还可以通过其他用户的加帖得到这某款产品的真实的使用体会。
你是一个大型企业的信息主管,现在正考虑新的集团打印方案;如果是这样,你是否需要一个信息的来源:首先这里不但能得到有关产品的手册级的技术指标描述,还可以得到各个媒体和有关机构对该产品的评测资料,其次,通过可以检索的BBS系统,你可以获得各种综合的解决方案或其他技术精英的解决关键问题的诀窍…
这样一个信息源,已经是一个事实――在IT168.COM(联合商情)。
我们之所以可以作到这一切,首先是基于我们五年以来我们对大众提供专业信息服务的经验。通过近260个星期的忠诚的服务,我们已经建立了一整套市场信息搜集处理和分析的模式,无论从覆盖面,抑或信息的深入程度以及准确性和及时性来讲,我们已经无愧任何质疑和挑战。
我们之所以可以做到这一切,还因为我们获得了业界包括厂家和经销商在内的最广泛的支持,这个行业需要一个高效率的商业信息出口,可以使任何一个潜在的客户公平、简易地审视整个市场。这种业界的支持通过联合商情商业成功得到了最坚实的体现
我们之所以可以做到这一切,更是因为我们对未来的期盼和为最广泛的大众提供资讯服务的决心。我们和所有
@jqlblue
jqlblue / cabot_conf_development.env
Created October 1, 2014 12:16
development.env of cabot conf
DEBUG=t
#DATABASE_URL=sqlite:///dev.db
DATABASE_URL=mysql://cabot:cabot@localhost:3306/cabot
DJANGO_SETTINGS_MODULE=cabot.settings
HIPCHAT_URL=https://api.hipchat.com/v1/rooms/message
LOG_FILE=/dev/null
PORT=5001
# You shouldn't need to change anything above this line
@jqlblue
jqlblue / cabot_setup.py
Created October 1, 2014 11:53
cabot setup.py
#!/usr/bin/env python
from setuptools import setup, find_packages
setup(
name='cabot',
@jqlblue
jqlblue / graphTemplates.conf
Created October 1, 2014 10:22
graphTemplates.conf
[default]
background = black
foreground = white
majorLine = white
minorLine = grey
lineColors = blue,green,red,purple,brown,yellow,aqua,grey,magenta,pink,gold,rose
fontName = Sans
fontSize = 10
fontBold = False
fontItalic = False
@jqlblue
jqlblue / monitor_to_graphite.sh
Created October 1, 2014 10:18
collection monitor metrics to graphite
#!/bin/sh
HOST=$(hostname | awk -F'.' '{print $1}')
IDC="local"
SYSTEM_LOAD=$(awk '{print $1}' /proc/loadavg)
SYSTEM_MEMORY_FREE=$(free -m | grep 'buffers/cache' | awk '{print $NF}')
SYSTEM_SWAP_USE=$(free -m | grep 'Swap' | awk '{print $(NF-1)}')
SYSTEM_DISK_USED=$(df -h | grep '/' | awk 'BEGIN{_max=0}{len=length($5);i=substr($5,0,len-1);if(_max<i){_max=i}}END{print _max}')
@jqlblue
jqlblue / graphite_web_local_settings.py
Created October 1, 2014 08:34
graphite-web local settings
## Graphite local_settings.py
# Edit this file to customize the default Graphite webapp settings
#
# Additional customizations to Django settings can be added to this file as well
#####################################
# General Configuration #
#####################################
# Set this to a long, random unique string to use as a secret key for this
# install. This key is used for salting of hashes used in auth tokens,
@jqlblue
jqlblue / sentry-supersior.conf
Created July 4, 2014 09:36
sentry-supersior.conf
[unix_http_server]
file=/tmp/sentry/supervisor.sock ; (the path to the socket file)
;chmod=0700 ; socket file mode (default 0700)
;chown=nobody:nogroup ; socket file uid:gid owner
;username=user ; (default is no username (open server))
;password=123 ; (default is no password (open server))
[supervisord]
logfile=/tmp/sentry/supervisord.log ; (main log file;default $CWD/supervisord.log)
logfile_maxbytes=50MB ; (max main logfile bytes b4 rotation;default 50MB)
@jqlblue
jqlblue / gryphon_issues_jqlblue
Last active August 29, 2015 14:01
在传统架构下,64位linux系统上使用gryphon时遇到的问题。测试请求没有抵达nginx
TcpCopy信息
TcpCopy版本号:0.9.9
内核版本号:2.6.18-164.el5
安装规则:
./configure --prefix=/usr/local/tcpcopy --enable-single
启动命令:
modprobe ip_queue
iptables -I OUTPUT -p tcp --sport 80 -j QUEUE
/usr/local/tcpcopy/bin/intercept
@jqlblue
jqlblue / python_decorator
Last active August 29, 2015 13:57
python decorator with callable class
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# example of a decorator from http://xahlee.info/perl-python/python_decorator.html
class Foo:
def __init__(self, method):
self.__method = method
def __call__(self, arg):