jemalloc优化MySQL、Nginx内存管理

2014年1月9日 没有评论

jemalloc源于Jason Evans 2006年在BSDcan conference发表的论文:《A Scalable Concurrent malloc Implementation for FreeBSD》。 jason认为phkmalloc(FreeBSD’s previous malloc implementation by Kamp (1998))没有考虑多处理器的情况,因此在多线程并发下性能低下(事实如此),而jemalloc适合多线程下内存分配管理。从2007年开始以 FreeBSD标准引进来。软件技术革新很多是FreeBSD发起,在FreeBSD应用广泛的技术会慢慢导入到[......]

Read more

分类: 开源软件 标签:

用Kyoto Tycoon挂载LevelDB存储(转)

2013年5月9日 没有评论

Kyoto Tycoon(以下简称KT)是TokyoTyrant的作者Mikio Hirabayashi 的系列作品之一,KT 是一个数据库网络层服务,它提供一个插件机制,可以挂载几乎所有的数据库存储设备。之前已经有过KT嫁接Memcached 的案例。

本文要讲的是最近Google开源的持久化key-value存储系统LevelDB ,性能相当不错。Mikio刚刚在KT最新版本上实现了对LevelDB 的挂载程序。下面是具体安装过程:
1.安装LevelDB
先获取源代码
$ svn checkout http://leveldb.googlecode.com/svn/trunk[......]

Read more

分类: NoSQL 标签:

一种支持自由规划无须数据迁移和修改路由代码的Sharding扩容方案(转)

2013年4月27日 没有评论

数据库分库分表(sharding)系列(五) 一种支持自由规划无须数据迁移和修改路由代码的Sharding扩容方案
版权声明:本文由本人撰写并发表于2012年9月份的《程序员》杂志,原文题目《一种支持自由规划的Sharding扩容方案——主打无须数据迁移和修改路由代码》,此处作为本系列的第五篇文章进行转载, 本文版权归《程序员》杂志所有,未经许可不得转载!

作为一种数据存储层面上的水平伸缩解决方案,数据库Sharding技术由来已久,很多海量数据系统在其发展演进的历程中都曾经历过分库分表的Sharding改造阶段。简单地说,Sharding就是将原来单一数据库按照一定的规则进行[......]

Read more

分类: 架构设计 标签:

网站统计中的数据收集原理及实现(转)

2013年4月15日 没有评论

网站数据统计分析工具是网站站长和运营人员经常使用的一种工具,比较常用的有谷歌分析、百度统计和腾讯分析等等。所有这些统计分析工具的第一步都是网站访问数据的收集。目前主流的数据收集方式基本都是基于javascript的。本文将简要分析这种数据收集的原理,并一步一步实际搭建一个实际的数据收集系统。

数据收集原理分析

简单来说,网站统计分析工具需要收集到用户浏览目标网站的行为(如打开某网页、点击某按钮、将商品加入购物车等)及行为附加数据(如某下单行为产生的订单金额等)。早期的网站统计往往只收集一种用户行为:页面的打开。而后用户在页面中的行为均无法收集。这种收集策略能满足基本的流量分析、来源[......]

Read more

分类: Nginx 标签:

nginx、php编译参数

2013年3月21日 没有评论

nginx:
–prefix=/etc/nginx –sbin-path=/usr/sbin/nginx –conf-path=/etc/nginx/nginx.conf –error-log-path=/var/log/nginx/error.log –http-log-path=/var/log/nginx/access.log –pid-path=/var/run/nginx.pid –lock-path=/var/run/nginx.lock –http-client-body-temp-path=/var/cache/nginx/client_temp –http[......]

Read more

分类: Linux 标签:

ffmpeg安装

2013年3月14日 没有评论

ffmpeg x264 2-pass转码
1、先安装yasm,编译x264所需
http://yasm.tortall.net/Download.html
tar xzf yasm-1.1.0.tar.gz
cd yasm-1.1.0
./configure
make
make install

2、安装x264
http://www.videolan.org/developers/x264.html
tar xjf last_x264.tar.bz2
cd x264-snapshot-20110912-2245
./configure –enable-sha[......]

Read more

分类: Linux 标签:

ubuntu go安装

2012年12月28日 没有评论

What is Go about?
The Go programming language is an open source project to make programmers more productive. Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type sys[......]

Read more

分类: Linux 标签:

健壮的、便捷的、异步的SocketChannel实现

2012年12月20日 没有评论

Socket通信比较常见的问题有如下几种:
1、设置收发超时;
2、正确的每一个bit的收发;
3、物理线路故障的保护;
4、始终能正常工作;
5、尽量少占系统资源;
n、……
而Socket编程有一个共性,尽管100个人可能会写出1000种实现,但做的事情却只有一种,就是: 通信。
为此,通过学习dnsjava的通信代码,加上自己在一些项目中的实践,现在给出TCP通信的例子实现如下,希望能够给想偷懒的人一个简单的解决方案。
本方案在正常的局域网连接中测试过几百万次没什么问题。缺乏更艰苦的环境,所以如果使用这些代码发生任何风险的话……
(TcpChann[......]

Read more

分类: Java 标签:

linux中用dnsmasq配置dns服务器

2012年12月3日 没有评论

1. 安装dnsmasq:
# apt-get install dnsmasq

2. 修改配置文件:
# vi /etc/dnsmasq.conf
在最后添加:
resolv-file=/etc/resolv.dnsmasq.conf

3. 指定转发的DNS地址:
# vi /etc/resolv.dnsmasq.conf
nameserver 8.8.8.8
nameserver 4.4.4.4

4. 启用本地解析:
# vi /etc/resolv.conf
nameserver 127.0.0.1

5. 添加解析记录
# vi /etc/dns[......]

Read more

分类: Linux 标签:

Mysql Innodb 引擎优化

2012年11月30日 没有评论

介绍:
  InnoDB给MySQL提供了具有提交,回滚和崩溃恢复能力的事务安全(ACID兼容)存储引擎。InnoDB锁定在行级并且也在SELECT语句提供一个Oracle风格一致的非锁定读。这些特色增加了多用户部署和性能。没有在InnoDB中扩大锁定的需要,因为在InnoDB中行级锁定适合非常小的空间。InnoDB也支持FOREIGN KEY强制。在SQL查询中,你可以自由地将InnoDB类型的表与其它MySQL的表的类型混合起来,甚至在同一个查询中也可以混合。
 Innodb 的创始人:Heikki Tuuri
 Heikki Tuuri在Innodb的Bug社区里也是很活跃的,如果[......]

Read more

分类: MySQL 标签: