自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 资源 (1)
  • 问答 (2)
  • 收藏
  • 关注

原创 gevent+django的坑

一. django默认数据库驱动无法利用gevent  二. django默认数据库是短连接 每次连接请求都打开关闭conection  三.如果注释掉django的close()在gevent下无效    ...

2012-12-30 15:44:55 1957

原创 gunicorn cpu使用率超过70%的问题

gunicorn cpu使用率超过70%的问题,待解决。 

2012-12-30 14:02:04 3830 2

原创 jetty 慢mysql 并发测试

为了比较gevent的慢sql测试,特用java写了同样一个测试用列对比: 测试SQL:    select sleep(1); 使用ibatis+ dbcp: <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> ...

2012-12-30 00:52:28 162

原创 spring mvc 快速启动

依赖: <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${org.springframe...

2012-12-30 00:33:52 230

原创 MySQL的wait_timeout参数太小导致表级锁失效

如果想让某个表只读不能被修改,可以在MySQL Server层面加表级锁:mysql> lock tables sms read;Query OK, 0 rows affected (0.01 sec)然后其他的连接去更新或插入数据是不会成功的:mysql> insert into sms(id) values (555);因为要等待表级锁的释放,可...

2012-12-29 23:30:29 356

原创 mysql 优化之wait_timeout

之前一直没注意到mysql 中的wait_timeout,线上看了一下: mysql> show variables like '%wait_timeout%'    -> ;+--------------------------+----------+| Variable_name            | Value    |+---------------...

2012-12-29 23:08:44 727

原创 sqlalchemy connection pool.py 源代码

把 sqlalchemy pool源代码copy下来,有空看看。 参考配置:http://docs.sqlalchemy.org/en/latest/core/pooling.html # sqlalchemy/pool.py# Copyright (C) 2005-2012 the SQLAlchemy authors and contributors <see AUT...

2012-12-29 22:58:32 649

原创 django db backends探索

由于需要解决django db长连接的问题,最近看了看django db backend相关实现,以及ORM。 一、django db结构 django.db是django ORM的封装,主要由两部分构成:django.db.models。django.db.backends。代码具体位置在在/usr/local/lib/python2.7/dist...

2012-12-29 18:20:30 1292

原创 MongoDB数据文件内部结构

有人在Quora上提问:MongoDB数据文件内部的组织结构是什么样的。随后10gen的工程师Jared Rosoff出来做了简短的回答。每一个数据库都有自己独立的文件。如果你开启了directoryperdb选项,那你每个库的文件会单独放在一个文件夹里。数据库文件在内部会被切分成单个的块,每个块只保存一个名字空间的数据。在MongoDB中,名字空间用于区分不同...

2012-12-29 11:40:03 131

原创 Launching a High Performance Django Site

Are the brakes on your Django app?When building an application using an application framework like Django... the priority is often to get the application working first and optimize it later. T...

2012-12-28 21:39:49 139

原创 django 性能优化

django默认的一些系统性能低下,无法支撑大流量请求,一些优化方案。1. Replacing Django's Template Language With Jinja22. Replacing Django's ORM with SQLAlchemy3. MySQL Connection Pooling with Django and SQLAlchemy ...

2012-12-28 17:24:47 267

原创 让Django支持数据库长连接

原文:http://www.cnblogs.com/Alexander-Lee/archive/2011/11/12/django_long_connection.html 书接上回 上回我们说到:《在生产系统使用Tornado WebServer来代替FastCGI加速你的Django应用》那么现在很流行用一些高性能的nonblock的app server来host ...

2012-12-28 17:05:37 195

原创 gunicorn+django慢sql查询

django:ab -n 1000 http://127.0.0.1:8000/test/qps:    256.36avg:    3.901ab -n 1000 -c10 http://127.0.0.1:8000/test/qps:    277.51avg:    36.035gunicorn:ab -n 1000 http://127.0.0.1:8000...

2012-12-28 15:44:34 196

原创 pymysql简单使用

import pymysqlconn = pymysql.connect(host='localhost', port=3306, user='root', passwd=None, db='mysql')cur = conn.cursor()cur.execute("SELECT Host,User FROM user")cur.close()conn.close()...

2012-12-28 12:38:00 177

原创 sudo 免输入密码

 vi /etc/sudoers 在# User privilege specificationroot ALL=(ALL:ALL) ALL 后面一行新增admin   ALL=(ALL)       NOPASSWD :ALL同时把后面的%admin注释掉  ## This file MUST be edited with the 'v...

2012-12-27 19:22:05 211

原创 ubuntu dash的问题

使用盛大云新建一个帐号,登录发现有问题。 envMAIL=/var/mail/test1USER=test1SSH_CLIENT=180.169.103.230 42119 22HOME=/home/test1SSH_TTY=/dev/pts/1LOGNAME=test1TERM=xtermPATH=/usr/local/sbin:/usr/local/...

2012-12-27 19:08:09 208

原创 gevent project

This page has been migrated to https://github.com/SiteSupport/gevent/wiki/ProjectsThis is an (incomplete) list of projects that use Gevent. If you like to be included, please mail to the Google gr...

2012-12-25 16:41:58 139

原创 ab和http_load的测试对比

                当gu只有1个worker,我理解他没有并发能力,所有的请求都是顺序执行的。    所以 http_load -parallel 1 -fetches 1000 url 和 http_load -parallel 100 -fetches 1000 url 的总耗时是一样的,如果gu有并发能力,-parallel 100总耗时应该减少。为了方便...

2012-12-25 12:32:30 393

原创 tomcat并发测试

测试环境:联想T420笔记本(Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz)内存6Gtomcat5jetty6 测试代码,一个Servlet,输出一段字符串public class CacheMonitorView extends HttpServlet { public void service(HttpServlet...

2012-12-24 14:19:54 293

原创 gunicorn并发测试

最近发现web服务器的压力越来越大,想测试一下gunicorn的并发能力如何。 我测试了网站最简单的about页面,首先不考虑并发的情况,对这个页面本身进行测试,平均响应时间20ms。单个并发    qps =50 (1000ms/20ms)10个并发  qps =40020个并发 qps =500~55030个并发 qps =500~550说明gu的并发能力只有10左...

2012-12-24 00:23:25 2270 1

原创 通过gzip对字符串压缩

通过GZIPOutputStream,GZIPInputStream可以方便的对数据进行压缩,本以为很简单的代码,写好运行居然报错: Exception in thread "main" java.io.EOFException: Unexpected end of ZLIB input stream    at java.util.zip.InflaterInputStream.fi...

2012-12-22 18:10:48 783

原创 redis数据持久化的策略

redis数据持久化的策略主要有:1. 内存快照2. AOF  数据持久化通俗讲就是把数据保存到磁盘上,保证不会因为断电等因素丢失数据。redis需要经常将内存中的数据同步到磁盘来保证持久化。redis支持两种持久化方式,一种是 Snapshotting(快照)也是默认方式,另一种是Append-only file(缩写aof)的方式。先介绍下这两种dump方式再讲讲自己遇...

2012-12-22 16:22:39 146

原创 开源自动测试框架Tellurium

Tellurium是一个开源的网页测试框架,现阶段还是建立在Selenium之上。 但有很多独特的测试理念。 比之Selenium, 维护性,鲁棒性, 和可复用性都要好。 它支持JUnit和TestNG。Tellurium的测试代码可以用Java, Groovy和纯DSL脚本来写.  项目地址: http://www.infoq.com/cn/articles/telluri...

2012-12-22 16:01:21 174

原创 redis 文档集合

由于xmemcached不是很给力,最近想把memcached替换成redis,做了一些调研。Redis 常见的性能问题和解决方法Memcached真的过时了吗?Redis内存使用优化与存储(infoQ)Redis的使用场景(infoQ)Redis复制与可扩展集群搭建(infoQ)redis数据持久化的策略Redis 设计与实现(推荐) ...

2012-12-22 15:52:16 99

原创 MongoDB范围查询的索引优化

源文: http://blog.nosqlfan.com/html/4117.html 我们知道,MongoDB的索引是B-Tree结构的,和MySQL的索引非常类似。所以你应该听过这样的建议:创建索引的时候要考虑到sort操作,尽量把sort操作要用到的字段放到你的索引后面。但是有的情况下,这样做反而会使你的查询性能更低。问题比如我们进行下面这样的查询:d...

2012-12-22 15:08:29 693

原创 solr的函数查询_FunctionQuery_总结

作用函数查询的作用,是影响计算score的算法,并不替换,只是影响。普通的计算score的方法是lucene本身的算法。描述如下:A function query allows you to introduce a component of the score that is computed,based on a mathematical expression of your...

2012-12-21 15:55:58 197

原创 关于URL编码

一、问题的由来URL就是网址,只要上网,就一定会用到。一般来说,URL只能使用英文字母、阿拉伯数字和某些标点符号,不能使用其他文字和符号。比如,世界上有英文字母的网址“http://www.abc.com”,但是没有希腊字母的网址“http://www.aβγ.com”(读作阿尔法-贝塔-伽玛.com)。这是因为网络标准RFC 1738做了硬性规定:"......

2012-12-21 14:18:37 149

原创 HBase的Cache

介绍BucketCache前,先对HBase的Cache做个介绍: 一.HBase在读取时,会以Block为单位进行cache,用来提升读的性能; 二.Block可以分类为DataBlock(默认大小64K,存储KV)、BloomBlock(默认大小128K,存储BloomFilter数据)、IndexBlock(默认大小128K,索引数据,用来加快Row所在DataBlock的定位)...

2012-12-20 23:22:20 178

原创 FULL GC耗时问题

记录一次full gc 耗时很长的情况:     后续看了一下,netty管理了400多个socket,估计是这个原因。

2012-12-19 15:03:14 634

原创 JBDC和ibatis的选型总结

最近做搜索,觉得ibatis过于笨重,本想简单的使用JDBC,但发现一些点还是比较麻烦的。 1. 没有数据库连接池。2. 需要自己调用DriverManager,JDBC等一些原始API,比较繁琐。3.假设通过spring JDBCTemplate解决了上面的问题,但还有如下问题。4. spring JDBCTemplate只能返回Map,需要做Map和Bean之间的字段映射和...

2012-12-19 12:30:56 105

原创 spring 框架快速启动

1. 通过maven新建工程 2. 添加依赖包<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://ma...

2012-12-18 18:36:23 223

原创 java.lang.ClassNotFoundException: org.slf4j.impl.StaticLoggerBinder

工程启动报错 SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.Exception in thread "main" java.lang.No...

2012-12-18 16:15:04 2885

原创 redis 重启主意事项

1. 先info 命令查看db0和db1的占用情况,然后确保connected_clients为0 2. 执行shutdown 需要等3分钟以上 3. 通过 redis-server /duitang/dist/conf/redis/redis_session.conf 重启 4. 通过info 查看loading,直到等于0再引入流量 5. 如果有slaveof,...

2012-12-18 13:07:58 252

原创 redis expires key不会自动删除的问题

最近发现线上的session 服务器每隔一段时间内存占用就达到24G,通过redis info查看发现expires key没有被删除:  db1:keys=101177370,expires=101165505 研究了一下才发现,只有在配置文件中设置了最大内存时候才会调用这个函数,而设置这个参数的意义是,你把当做一个内存而不是数据库。 redis如何删除过期数...

2012-12-18 12:06:48 2207

原创 redis 安装 配置解析

一、 下载安装 Wget http://redis.googlecode.com/files/redis-2.2.7.tar.gz 二、.安装部署 tar zxvf redis-2.2.7.tar.gzcd redis-2.2.7.tar.gzmake 可以将redis.conf 复制到 /etc/下 cp redis.conf ...

2012-12-18 11:51:29 113

原创 mysql sql

[code="sql"]select * FROM message_message WHERE status = 0 AND buyable in (1,4) AND category IN (1, 9) AND add_datetime >= '2012-12-17 00:00:00' AND add_datetime = '2012-12-17 00:00:00' AND ...

2012-12-17 18:55:53 70

原创 solr java客户端build索引

[code="java"]package com.duitang.views.test;import java.io.IOException;import org.apache.solr.client.solrj.SolrServerException;import org.apache.solr.client.solrj.impl.CommonsHttpSolrServe...

2012-12-17 17:08:36 117

原创 java socket参数详解:TcpNoDelay

TcpNoDelay=false,为启用nagle算法,也是默认值。 Nagle算法的立意是良好的,避免网络中充塞小封包,提高网络的利用率。但是当Nagle算法遇到delayed ACK悲剧就发生了。Delayed ACK的本意也是为了提高TCP性能,跟应答数据捎带上ACK,同时避免糊涂窗口综合症,也可以一个ack确认多个段来节省开销。悲剧发生在这种情况,假设一端发送数据并等待另一端应答,协议上分...

2012-12-14 19:28:23 720

原创 java NIO入门

NIO和OIO的区别 常用模型的缺点 如果不摆出来其他模型的缺点,怎么能对比出 Epoll 的优点呢。   2.1 PPC/TPC 模型 Process Per Connection和Thread Per Connection 这两种模型思想类似,就是让每一个到来的连接一边自己做事去,别再来烦我 。只是 PPC 是为它开了一个进程,而 TPC 开了一个线...

2012-12-13 17:37:34 159

原创 Sofa memcached client

 一、简介Sofa源于Minisite重构项目,也许您会问,已经有如此众多的memcahced客户端,为什么还要再来一个,我们经常会说,不要尝试去重复造轮子。是的,但如果我们有一种不同的思路来制造这个轮子,并且它有可能会做得更好,那为什么不试试看呢?基于此,才有了sofa。二、Sofa的...

2012-12-13 17:05:43 134

jvm规范

最权威的JVM规范,深入讲解classloader,class装载时机,类装载安全

2007-11-06

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

TA关注的人

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