构建亿级前端读服务
从入职京东到现在,做读服务已经一年多的时间了,经历了各种亿级到百亿级的读服务;这段时间也进行了一些新的读服务架构尝试,从架构到代码的编写,各个环节都进行了反复尝试,压测并进行调优,希望得到一个自己满意的读服务架构。…
记录-交流-Web开发知识分享
从入职京东到现在,做读服务已经一年多的时间了,经历了各种亿级到百亿级的读服务;这段时间也进行了一些新的读服务架构尝试,从架构到代码的编写,各个环节都进行了反复尝试,压测并进行调优,希望得到一个自己满意的读服务架构。…
使用php blenc扩展加密php源代码,不但可以加密源代码,还可以设置过期时间。
扩展地址 http://pecl.php.net/package/blenc
注意:不要启用opcache扩展,否则加密后的代码无法正常运行。
要加密的源码不需要<?php 及?>开始与结束标记
可指定个人密钥。
可指定一个BLENC模块过期日期。 你可以决定BLENC 模块将工作到一个日期。之后,BLENC不会解密任何文件.
这些都可以在头文件 blenc_protect.h中设置,设置好后再编译BLENC.
用法:
http://cn2.php.net/manual/en/function.blenc-encrypt.php
安装用phpize安装 phpize ./configure make make install.
注意,如果安装后,访问php出现500错误,请试着打开 php.ini中的expose_php=On;…
thinkphp实现excel数据的导入导出
http://www.thinkphp.cn/code/1373.html
http://www.thinkphp.cn/topic/14005.html…
通常,我们会出于以下几个目的对MySQL进行压力测试:
1、确认新的MySQL版本性能相比之前差异多大,比如从5.6变成5.7,或者从官方版本改成Percona分支版本; 2、确认新的服务器性能是否更高,能高多少,比如CPU升级了、阵列卡cache加大了、从机械盘换成SSD盘了; 3、确认一些新的参数调整后,对性能影响多少,比如 innodb_flush_log_at_trx_commit、sync_binlog 等参数; 4、确认即将上线的新业务对MySQL负载影响多少,是否能承载得住,是否需要对服务器进行扩容或升级配置;
针对上面这几种压测的目的,相应的测试方法也有所不同。
先说第四种,需要和线上业务结合起来,这时候就需要自行开发测试工具,或者利用 tcpcopy 将线上实际用户请求导向测试环境,进行仿真模拟测试。
对于前三种,我们通常采用基准测试就可以。比较常用的MySQL基准压力测试工具有 tpcc-mysql、sysbench、mysqlslap 等几个。…
http://blog.eood.cn/mysql…
php 连接mongodb,mongodb异常退出再启动,php开始几次取不到数据的问题解决
是由于mongodb的长连接导致的,长连接是默认的。
解决 办法 ,在php脚本 结束后 ,强制关闭mongodb连接
$mongo= new MongoClient("mongodb://whisky:13000/?replicaset=seta");
$mongo->close(true);
…
遇到MongoDB突然无法启动,第一反应是删除mongod.lock。这个文件在MongoDB的数据库目录下,默认是/data/db。这是最常见的问题了,产生原因是MongoDB没有正常结束(比如被kill -9杀掉或是其他意外情况导致中断)。…
大多数MySQL规范在网上也都能找得到相关的分享,在这里要分享的是老叶个人认为比较重要的,或者容易被忽视的,以及容易被混淆的一些地方。
1、默认使用InnoDB引擎
【老叶观点】已多次呼吁过了,InnoDB适用于几乎99%的MySQL应用场景,而且在MySQL 5.7的系统表都改成InnoDB了,还有什么理由再死守MyISAM呢。
此外,频繁读写的InnoDB表,一定要使用具有自增/顺序特征的整型作为显式主键。…
save:
$result=$item->where()->save();
if ($result === FALSE) {
echo '修改失败';
} elseif($result === 0) {
echo '未更改';
} else {
echo '已更改';
}…
PHP 7.0.0 beta1 发布了,在带来了引人注目的性能提升的同时,也带来了不少语言特性方面的改变。以下由 LCTT 翻译自对官方的升级备注,虽然目前还不是正式发布版,不过想必距离正式发布的特性已经差别不大了。(本文会持续追踪更新)…
近期评论