聚合国内IT技术精华文章,分享IT技术精华,帮助IT从业人士成长

  • 2089186 views阅读

    go http client 设置连接超时

    go 语言的 http 客户端可以在初始化话的时候通过 client := http.Client{ Timeout: 5 * time.Second, } 来设置请求超时,即整个 http 请求到完成响应的时间限制。那么如果想另外设置 tcp 连接阶段的超时可以这样玩: client := http.Client{ Transport: &http.Transpor...

    分类:技术文章 时间:2016-05-25 08:15 我要评论(0个)

  • 2876304 views阅读

    等待一个独立进程退出并获取 exit code

    linux 里,对于进程的子进程,父进程可以用 wait、waitpid 来等待结果。但是对于一个独立的进程就不行了。 有时候想监控一个进程,或者在父进程异常退出后想找回子进程状态,就只能另辟蹊径。于是,想了个通过 ptrace 来跟踪进程退出的办法,做了个小程序: https://github.com/xiezhenye/waitpid/ 可以通过 waitpid 来等待一个独立进程退出...

    分类:技术文章 时间:2016-04-14 23:50 我要评论(0个)

  • 2601608 views阅读

    从淘汰Oracle数据库的事情说起

    公司搞淘汰Oracle数据库的事情已经搞了好久了,这个事情其实和国内淘宝系搞的去IOE(IBM、Oracle和EMC)是类似的,基本上也是迫不得已,Oracle的维护成本太高,而公司内部基于Oracle数据库的数据仓库,也是问题频出;另一个原因则是scalability。我相信这两个原因许多人都非常清楚。而这个淘汰,也不是简简单单换一个关系数据库,比如把Oracle换成MySQL,或者换...

    分类:技术文章 时间:2016-03-12 01:50 我要评论(0个)

  • 2032088 views阅读

    不通过 web server 获取 php-fpm 运行状态

    php-fpm 可以配置一个 pm.status_path ,如 /status,然后通过 web server 访问这个地址来获取运行状态。但这样会侵入 web server 的配置,在一个 web server 后端有多个 php-fpm 的时候也不方便分别监控每一个后端的状态,为了安全,还要配置访问控制。 好在有个现成的工具 cgi-fcgi,可以把 fcgi 请求包装成 cgi 方...

    分类:技术文章 时间:2016-01-16 09:55 我要评论(0个)

  • 4607212 views阅读

    mktime之夏令时

    最近遇到了一件奇怪的事情,单元测试里写的一段代码在本地跑没有问题,放到Jenkins上跑就出问题。因为是跟时间相关的,所以一开始怀疑与时区有关系,跑到测试机上去看,时区配置的没有问题。代码逻辑很简单,如下:#include <stdio.h> #include <time.h> int main(int argc, char** argv) { stru...

    分类:技术文章 时间:2016-01-13 10:25 我要评论(0个)

  • 2102641 views阅读

    扒一扒知乎上的帖子——“为什么有些大公司技术弱爆了?”

    知乎上看到一个热帖,我觉得很有意思,叫做“为什么有些大公司技术弱爆了?”。我刚看到标题的时候,先入为主和刻板偏见了一下,正如同第一个回答一样,我皱了皱眉头,产生了对题主的鄙视之情;但是很快,读完帖子以后,我却立场明确地站到题主一边了。正如同里面有位回答: 看题目以为是题主傻逼,看了正文发现真的是公司傻逼。 上面这种情况其实发生的概率挺低的,但是我觉得这回是真的发生了。 但是令我感到遗...

    分类:技术文章 时间:2015-12-11 21:05 我要评论(0个)

  • 1908039 views阅读

    设置 linux 命令缓冲模式

    默认情况下,*nix 命令的 stdout 和 stdin 如果是在终端中是行缓冲,stderr 则是无缓冲。而这些标准输入输出如果是在管道中或重定向文件则是全缓冲。有时候使用管道处理数据的时候,并不希望管道后面的命令一直阻塞等待前一个的输出填满缓冲区刷新的时候才能处理,而是希望能即时看到数据。 有些命令提供了参数来设置缓冲模式,比如 tcpdump 可以使用 -l 参数来强制设置为行缓冲...

    分类:技术文章 时间:2015-11-13 00:05 我要评论(0个)

  • 3055242 views阅读

    supervisord 的 fd 泄露问题

    线上发现有几个 supervisord 启动的 php 后台进程没有正常工作。上去 strace 了一下,发现卡在了写 stdout 上: # strace -p 2509 Process 2509 attached - interrupt to quit write(1, "[2015-05-22 18:48:19] **************"..., 82 为啥写 st...

    分类:技术文章 时间:2015-11-13 00:05 我要评论(0个)

  • 1961321 views阅读

    OLAP基础知识学习

    一、OLTP与OLAP的区别 联机事务处理OLTP(On-Line Transaction Processing)主要是执行基本的、日常的事务处理,比如数据库记录的增、删、改、查。比如在银行存取一笔款,就是一个事务交易。 OLTP的特点一般有: 实时性要求高; 数据量不是很大; 交易一般是确定的,是对确定性的数据进行存取; 并发性要求高并且严格的要求事务的完整,安全性。 联机分析处理O...

    分类:技术文章 时间:2015-10-10 14:50 我要评论(0个)

  • 1594344 views阅读

    OLAP引擎Mondrian的学习

    Mondrian是一个基于Java语言的开源OLAP引擎,它通过MDX语句执行查询,从关系型数据库RDBMS中读取数据,然后经过Java API以多维度的形式展示查询结果。Mondrian是一个OpenSource的基于关系数据库的分析服务器,遵循MDX、XML/A和JOLAP标准。 Mondrian的架构 Mondrian从架构上可以分为四个层次:表现层、计算层、聚合层、存储层。 表现...

    分类:技术文章 时间:2015-10-10 14:50 我要评论(0个)

  • 1449166 views阅读

    使用 row 格式 binlog 撤销操作

    MySQL 在使用 row 格式,并使用默认的 binlog_row_image=full 的时候,binlog 中记录了完整的更新前后的数据镜像。因此,根据 row 格式 binlog 进行撤销操作是可行的。我就试着做了这么个工具 [GitHub 页面] [linux 二进制文件] 例如 ./binlog_undo -f /data/mysql/log-bin.000004 -p 3...

    分类:技术文章 时间:2015-08-29 10:20 我要评论(0个)

  • 1861409 views阅读

    Python pip源配置修改

    由于某些不可抗因素,Python官方的包在国内有时无法访问或出现网络不稳定现象。为了解决这个问题就需要将Pip中自带的源地址修改为镜像地址。 目前收集的比较好的镜像地址有: http://pypi.v2ex.com/simple/ http://pypi.douban.com/simple/ http://mirrors.aliyun.com/pypi/simple/ 直接修改配置的方...

    分类:技术文章 时间:2015-08-23 00:25 我要评论(0个)