摘要: likwid: like I knew what I am doing.是一系列工具的集合,用于针对多线程程序的指标分析,方便程序员进行性能调优工作。可以深入到控制cpu等硬件的频率。主要包括以下小工具:likwid-topology: Show the thread and cache topol...阅读全文
posted @ 2015-04-24 12:39 fandyst 阅读(2) 评论(0) 编辑
摘要: 针对IO密集型应用做系统调优的时候,我们通常都需要知道系统cpu 内存 io 网络等系统性能 和 使用率,结合应用本身的访问量,以及 mysql的性能指标来综合分析。比如说:我们将系统压力情况分为三个阶段:从用户端开始到web server,再到mysql。1. 客户量:我们可以从web app的访...阅读全文
posted @ 2015-04-23 17:55 fandyst 阅读(4) 评论(0) 编辑
摘要: 本文主要讲述高并发http应用中的c10k瓶颈问题:在很多服务器初始状态下,无法服务1w左右的并发连接。这与每次服务的资源消耗、服务器的硬件配置固然有关,但很多时候是被linux的默认配置以及软件stack选型所限制。本文主要分析c10k问题的产生原因、限制因素以及解决方案。如果硬件配置没有问题,性...阅读全文
posted @ 2015-04-21 13:15 fandyst 阅读(7) 评论(0) 编辑
摘要: 想必大家在命令行环境下工作时候,一定有想要查找当前目录下的源代码文件中的某些字符的需求,这时候如果使用传统方案,你可能需要输入一长串的命令,比如这样:1. grep -R 'string' dir/ 或者grep -r -e string directory2.grep -rnw 'directo...阅读全文
posted @ 2015-04-21 12:48 fandyst 阅读(5) 评论(0) 编辑
摘要: 我们在使用一些开源程序之前,可能会使用ab工具在服务器或者本地进行一次性能评估,但是很多时候却总是会以失败告终,因为,服务器会拒绝你的ab工具发出的http请求, 出现 error:connection reset by peer, 这该怎么办呢?首先,为了测试一个具有sql操作的页面,通常需要登录...阅读全文
posted @ 2015-04-20 18:58 fandyst 阅读(9) 评论(0) 编辑
摘要: ruby的几个web server,按照开发活跃度、并发方案及要点、适用场景等分析puma vs passenger vs rainbows! vs unicorn vs thin。1. thin: 长久未更新,2. unicorn: 未测试。3. opensource passenger or e...阅读全文
posted @ 2015-04-20 17:36 fandyst 阅读(11) 评论(0) 编辑
摘要: pm2以cluster集群方式发布app,可以高效地利用多核cpu,有效提升吞吐量。在上周对公司的redmine服务器进行性能调优后,深感ruby on rails的性能低下,这次测试nodejs的sails框架,被其性能深深折服。以下是使用pm2发布nodejs 应用的经历:一:记录出现的问题记录...阅读全文
posted @ 2015-04-19 01:18 fandyst 阅读(8) 评论(0) 编辑
摘要: 在安装了rvm来管理多版本的ruby之后,想在不同环境下安装一些gems,结果gem install puma 之后,发现一次又一次失败。gem install 出现Errno::ECONNRESET: Connection reset by peer - SSL_connect (https://...阅读全文
posted @ 2015-04-13 16:08 fandyst 阅读(255) 评论(0) 编辑
摘要: mycheckpoint 是针对mysql的一个性能监控、指标采集的python写成的工具。工作原理说明:mycheckpoint是一段脚本,通过将其设置为crontab定时任务,每几分钟采集一次数据(受限于crontab只能是分钟为基本单位)存储在自己的数据库中,并可以将采集的数据进行统计,以we...阅读全文
posted @ 2015-04-08 13:14 fandyst 阅读(11) 评论(0) 编辑
摘要: 本文主要记录phpMyAdmin在Mac OS X上的配置和使用,避免朋友们走弯路,浪费不必要的时间。1. 下载:2. 在"设置"中打开" web share", 即可开启Mac自带的Apache, 也可以通过sudo apachectl restart, 重启Apache。3. 源码放入 Apac...阅读全文
posted @ 2015-04-08 11:46 fandyst 阅读(10) 评论(0) 编辑
摘要: 1. web app 性能测试工具使用2.mysql 性能分析与调优方法阅读全文
posted @ 2015-04-04 15:31 fandyst 阅读(4) 评论(0) 编辑
摘要: 本文主要讲解mysql的性能瓶颈分析、性能指标、性能指标信息的搜集工具与方法、分析调优工具的使用。文章尚未完成。性能瓶颈:慢、写速度比读速度慢很多主要的性能指标:访问频度,并发连接量,缓存命中率,index使用,slow log开启与分析,query Log,查询logThreads_cached:...阅读全文
posted @ 2015-04-04 15:22 fandyst 阅读(10) 评论(0) 编辑
摘要: shell脚本编写就如同一门语言,涉及到运行环境、基本语法、变量定义、函数、参数(系统参数)、条件判定、执行流程控制 等等问题。本文就以下几个方面进行描述:运行环境: shell shebang Path基本语法: 命令、变量、函数、参数、条件、流程控制。变量相关:定义、命令参数变量和系统参数 与 ...阅读全文
posted @ 2015-04-04 15:08 fandyst 阅读(4) 评论(0) 编辑
摘要: crond是linux中的一个定时任务常驻程序,它会在每分钟检查一次作业列表,从而达到在指定时间自动运行指定的作业,这个程序对于系统运维来讲必不可少。通常我们使用crontab程序来设定和管理作业的,具体启动执行则是crond deamon。下面讲述如何使用crontab来设定使得系统在您指定的时间...阅读全文
posted @ 2015-04-04 14:16 fandyst 阅读(3) 评论(0) 编辑
摘要: 使用dstat竟然还可以查看mysql的状态, man dstat之后发现的,原来在/usr/share/dstat目录下藏有很多python脚本作为插件帮助dstat搜集各类信息。不过通常有可能会如果你执行dstat --mysql5_io 出现了Module dstat_mysql5_io fa...阅读全文
posted @ 2015-04-03 12:50 fandyst 阅读(6) 评论(0) 编辑
摘要: 主要分为以下几个要素的指标:Disk IO 、 CPU 、 mem 、 Net 、 MySQLWeb性能测试工具:客户端服务器端:服务器性能测试工具:服务器性能瓶颈分析工具:ab, siege, curl,参考:1. 郭欣 《构建高性能web站点》2.https://github.com/me115...阅读全文
posted @ 2015-04-01 19:37 fandyst 阅读(11) 评论(0) 编辑
摘要: 如何永久删除git仓库中敏感文件的提交记录参考:1.https://help.github.com/articles/remove-sensitive-data/阅读全文
posted @ 2015-04-01 19:23 fandyst 阅读(3) 评论(0) 编辑
摘要: javascript在初版的设计上存在失误,导致了这门语言在使用时,经验型写法并不能得到像其它几个流行语言一样预期。其中的this的使用就是一个典型。this在javascript中是由解释器注入的,并且在我们使用不同的方法定义函数时,注入的this含义不同。以下是crokford总结的四类情况。如...阅读全文
posted @ 2015-03-23 13:20 fandyst 阅读(7) 评论(0) 编辑
摘要: 1.利用jsPDF在客户端浏览器上生成pdf文档 使用这种方法可以有效减轻服务器的压力,但是对于国际化,此库任然存在的问题:该库不支持unicode,生成中文文档会乱码,官方也有描述这个问题,详情请参见:https://github.com/MrRio/jsPDF/issues/12。2.解决中文...阅读全文
posted @ 2015-03-16 12:14 fandyst 阅读(8) 评论(0) 编辑
摘要: nginx与apache是两大最主流的服务器,功能强大,但配置起来也比较麻烦,对于初学者来讲可能有些地方并不完全清楚其作用,这里搜集了一些配置的作用及其使用方法。其中nginx提供了推荐配置,而apache则详细地列出了特定功能的配置片段。详见以下的参考。参考:1. nginx配置:https://...阅读全文
posted @ 2015-03-10 15:52 fandyst 阅读(6) 评论(0) 编辑
摘要: 为了方便口语化环境下与人分析讨论统计学,特别查找了以下符号的标准读法,一来备用,而来也方便初学者规范化读音。以下为读法表,其中的TEX的字体一般出现在科学著作中。TeX希腊字母名字TeXHTML名字TeXHTML名字TeXHTML名字TeXHTMLAlphaΑαBetaΒβGammaΓγDeltaΔ...阅读全文
posted @ 2015-03-10 15:19 fandyst 阅读(21) 评论(0) 编辑
摘要: 近日,在项目的一个类中如果碰上想要将子类强制转换成父类,然后再调用其父类版本的virtual虚函数。就会出现gcc编译错误提示:error: ld returned 1 exit statusgcc提示原因:在link过程中,发现了无法找到的reference symbol, 该reference ...阅读全文
posted @ 2015-03-06 15:37 fandyst 阅读(21) 评论(0) 编辑
摘要: 现在网络销售在各大公司都是非常重要的销售渠道,但是通常来讲,主动咨询的用户都是潜在的新用户,如果无法获得他们的电话,想要在网络上短暂的文字交流就获得用户,基本上很难达成交易。那么当用户咨询你的时候,如果你直接问对方的联系号码,在当前网络信息肆意贩卖如此猖獗的情况下,基本上会让用户很警觉,但不问用户又...阅读全文
posted @ 2015-03-05 18:58 fandyst 阅读(9) 评论(0) 编辑
摘要: 如果你是团队领导,关心团队的开发效率和工作激情;如果你是开源软件开发者,维护者某个repo;又或者,你关心某个开源软件的开发进度,那么你可以试一试gitstats.gitstats 是一个git仓库分析软件,可以帮助你查看git仓库的提交状态,根据不同维度分析计算,并自动生成数据图表。安装使用非常简...阅读全文
posted @ 2015-03-03 18:06 fandyst 阅读(15) 评论(0) 编辑
摘要: 学习R有一周了,心中一直有一个困惑,关于= 和 <-,今晚决定搞定它!迄今为止用到最多的函数是matrix() 和c(),就用他们说起!之前学了四五门语言,对于=赋值已经成了惯性,下面是我的习惯写法:matrix(1:6,nrow = 2,ncol = 3,byrow = FALSE) #有时候写成...阅读全文
posted @ 2015-03-03 15:21 fandyst 阅读(17) 评论(0) 编辑
摘要: 这篇文章主要介绍 boost中的智能指针的使用。(转自:http://www.cnblogs.com/sld666666/archive/2010/12/16/1908265.html) 内存管理是一个比较繁琐的问题,C++中有两个实现方案: 垃圾回收机制和智能指针。垃圾回收机制因为性能等原因不被...阅读全文
posted @ 2015-03-03 12:39 fandyst 阅读(6) 评论(0) 编辑
摘要: 1. 代码仓库管理:gitlab gitlab是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。它拥有与GitHub类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版...阅读全文
posted @ 2015-03-03 12:05 fandyst 阅读(37) 评论(0) 编辑
摘要: 本文主要讲述以下内容:ios开发版证书的申请,企业证书的申请,appid的创建,provision profile的生成,开发设备devices的绑定,以及每个证书文件之间的关系,最后使用这些证书发布企业内部使用的app的方法过程。企业版证书如下开发者证书如下:安装之后,ios_developmen...阅读全文
posted @ 2015-03-03 11:52 fandyst 阅读(217) 评论(0) 编辑
摘要: node.js中的框架载自:http://nodeframework.com/MVC frameworksSinatra-likeThese frameworks offer rich configuration and are less opinionated than Rails-like or...阅读全文
posted @ 2015-02-25 16:09 fandyst 阅读(9) 评论(0) 编辑
摘要: shiny: Web Application Framework for R基于R语言的一个web框架,适用于数据分析与图表绘画展示类型的网站。阅读全文
posted @ 2015-02-25 09:52 fandyst 阅读(4) 评论(0) 编辑
摘要: 之前由于论文等相关原因,需要一个诗词文字对仗库,苦于手头没有,网上也没有找到较好的定义好的格式。因此,琢磨着自己想办法做一个出来。而做词库的数据源很重要,选来选去,最后决定使用全唐诗作为数据库。至于原因,首先是因为其数据量比较大,诗词覆盖面比较广;其次,由于《全唐诗》中大都是唐宋时期的诗词名篇,...阅读全文
posted @ 2015-02-09 19:37 fandyst 阅读(47) 评论(0) 编辑
摘要: 之前看到了Sails.js的waterline提供了声明式的关系型对象与DB的映射器,惊为天人,可以说是极大地提升了效率。利用waterline的对象关系模型,用户可以直接使用javascript语言定义关系型的数据库,也就是说,我们不再需要像在java环境中那样声明一个个model,然后具体的关系...阅读全文
posted @ 2015-02-06 12:24 fandyst 阅读(24) 评论(0) 编辑
摘要: 微信大概两年前开启了微信公众平台的API供开发者使用,从账号登陆、消息发送、用户账号管理、公众号菜单、客服接口、微信商店接口、用户卡券接口以及微信支付接口。可以说是全方面覆盖了电商所需要的要素,与阿里系的淘宝相比,他还提供了客户的管理功能,可以说是拉近了个体电商对平台用户的距离。不过微信的野心远不止...阅读全文
posted @ 2015-02-05 15:00 fandyst 阅读(155) 评论(0) 编辑
摘要: Tsung 是一个压力测试工具,可以测试包括HTTP, WebDAV, PostgreSQL, MySQL, LDAP, and XMPP/Jabber等服务器。针对 HTTP 测试,Tsung 支持 HTTP 1.0/1.1 ,包含一个代理模式的会话记录、支持 GET、POST 和 PUT 以及 ...阅读全文
posted @ 2015-02-04 19:30 fandyst 阅读(9) 评论(0) 编辑
摘要: sed 简明教程2013年2月20日awk于1977年出生,今年36岁本命年,sed比awk大2-3岁,awk就像林妹妹,sed就是宝玉哥哥了。所以林妹妹跳了个Topless,他的哥哥sed坐不住了,也一定要出来抖一抖。sed全名叫stream editor,流编辑器,用程序的方式来编辑文本,相当的...阅读全文
posted @ 2015-02-04 16:25 fandyst 阅读(5) 评论(0) 编辑
摘要: shell中支持的数据传递方式 主要有那么几种: 变量、管道、结果引用、重定向+文件、以及xargs。变量方式:1. 定义变量: 变量名=值2. 使用变量: $变量名管道方式: 统计当前文件夹下的文件数量:find . | awk {print NR}#打印99乘法表seq 9 | sed 'H;g...阅读全文
posted @ 2015-02-04 16:21 fandyst 阅读(19) 评论(0) 编辑
摘要: sed.sourceforge.net被封杀,特在此处贴上官方的sed 使用说明文档SED单行脚本快速参考(Unix 流编辑器) 2005年12月29日英文标题:USEFUL ONE-LINE SCRIPTS FOR SED (Unix stream ed...阅读全文
posted @ 2015-02-04 14:14 fandyst 阅读(8) 评论(0) 编辑
摘要: 你可曾想过有那么一门语言:这门语言能够有C语言一样的速度,Ruby一样得活力(dynamism)。像homoiconic一样的语言,它像Lisp一样有宏,但是也像Matlab一样有显而易见、熟悉的数学标记。像Python一样适用,像R语言一样适用于统计,像Perl一样适用于字符串处理,像线性代数Ma...阅读全文
posted @ 2015-02-03 15:29 fandyst 阅读(65) 评论(0) 编辑
摘要: ssh网络协议提供了以加密方式连接传输数据的方法,是一个安全的登陆工具,大多ecs都提供了ssh的登陆方式,同时ssh也可以用来转变数据传输方式比如,可以用以下方法将本地2525端口发出去的数据全都由ssh通道,进过shell.example.org转发到远程主机mail.example.net的目...阅读全文
posted @ 2015-02-03 15:08 fandyst 阅读(3) 评论(0) 编辑
摘要: 什么是promises? 为什么需要promises?参见: https://promisesaplus.com/使用示例:使用promises之前,代码的编写方式:使用promises之后:参考:1.https://github.com/petkaantonov/bluebird2.http://...阅读全文
posted @ 2015-02-01 22:19 fandyst 阅读(13) 评论(0) 编辑