微信 SQLite 数据库修复实践
1、前言众所周知,微信在后台服务器不保存聊天记录,微信在移动客户端所有的聊天记录都存储在一个 SQLite 数据库中,一旦这个数据库损坏,将会丢失用户多年的聊天记录。而我们监控到现网的损坏率是0.02%,也就是每 1w 个用户就有 2 个会遇到数据库损坏。考虑到微信这么庞大的用户基数,这个损坏率就很
阅读全文→1、前言众所周知,微信在后台服务器不保存聊天记录,微信在移动客户端所有的聊天记录都存储在一个 SQLite 数据库中,一旦这个数据库损坏,将会丢失用户多年的聊天记录。而我们监控到现网的损坏率是0.02%,也就是每 1w 个用户就有 2 个会遇到数据库损坏。考虑到微信这么庞大的用户基数,这个损坏率就很
阅读全文→Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器, 等等。JMeter
阅读全文→代码运行一段时间后,会报下面的错误。[code][Predis\Connection\ConnectionException] Error while reading line from the server. [tcp://127.0.0.1:6379][/code]最初
阅读全文→新建一个表保存中文的时候提示: Incorrect string value xxx 。 通过错误提示可以看出来是mysql设置编码的问题了。解决这个问题的两个命令:[code]SHOW FULL COLUMNS FROM <table>; # 查看collation类型alter ta
阅读全文→今天写了一个管理supervisord进程脚本,执行发现有报错,如下http://localhost:9001 refused connection问题原因分析:supervisor通常有以下两种方式通信:1、本地socket2、http连接本机supervisord配置文件里面是开启了socket
阅读全文→为了提高性能,几乎所有互联网应用都有缓存机制,其中Memcache是使用非常广泛的一个分布式缓存系统。众所周知,LAMP是非常经典的Web架构方式,但是随着Nginx的 成熟,越来越多的系统开始转型为LNMP(Linux+Nginx+MySQL+PHP with fpm),这是因为Nginx采用基于
阅读全文→Transfer-Encoding:chunked简介通常情况下,Transfer-Encoding域的值应当为chunked,表明采用chunked编码方式来进行报文体的传输。chunked编码是HTTP/1.1 RFC里定义的一种编码方式。chunked编码的基本方法是将大块数据分解成多块小数据
阅读全文→使用memc-nginx和 srcache-nginx模块就可以主动的向memcached添加缓存,对应用程序来说是透明的。大大的提高动态页面访问速度。第一次访问创建缓存, 后续访问在缓存过期时间内,直接从memcached返回,不需要再次经过php-fpm处理。nginx_memc模块与nginx
阅读全文→我们可以通过 telnet 命令并指定主机ip和端口来连接 Memcached 服务。语法[code]telnet HOST PORT[/code]命令中的 HOST 和 PORT 为运行 Memcached 服务的 IP 和 端口。实例以下实例演示了如何连接到 Memcached 服务并执行简单的
阅读全文→Memcached 支持许多平台:Linux、FreeBSD、Solaris、Mac OS,也可以安装在Windows上。Linux系统安装memcached,首先要先安装libevent库。[code]sudo apt-get install libevent ibevent-dev 自动下
阅读全文→