- 博客(123)
- 资源 (5)
- 收藏
- 关注
原创 前端性能优化(四)okcoin报价密度性能优化及工作机会推荐(纯javascript高频数据处理性能优化)
前言先交代一下我的近况,已经入职okcoin了,刚入职,感谢前阿里巴巴技术专家铭承(我老板)。走的匆忙,很多阿里的同学都没来得及打个招呼,好在我现在还会翻看钉钉,可以钉钉我。又到了晋升季,祝大家步步高升。下面进入本文主题,这篇文章应该叫《纯javascript高频数据处理性能优化》。背景介绍报价密度是用来展示各档位报价数量的,需要在浏览器端做合并。比如报价2.9511的数量1.0200...
2018-07-04 14:09:56 691
原创 前端性能优化(三)聊聊HTTP/2带来的加载优化
那些年,我们使用HTTP1.1,我们忍受着巨大的网络延时,而同时我们的网页变得越来越复杂,我们需要加载的资源越来越大越来越多。HTTP1.1如何加载资源 建立HTTP链接,由于HTTP是基于TCP的,所以必然要经过TCP的三次握手。 发送请求,TCP有慢启动的问题。 接收响应。 如果连接被双方认可是keep-alive的,那么后续请求可复用该连接发送请求。...
2018-07-04 14:07:49 1029
原创 前端性能优化(一)用一张图说明加载优化
本文从加载的角度写一下前端性能优化。需要说明的是下面这种脑暴图是按照从第一象限和第四象限的顺序来看的。一、加载体积优化我们无法控制用户的网络状况,既然想加载速度快,那当然是能不加载就不加载,能少加载就少加载啦。 在http1.1时代合并代码是很重要的一件事儿。 uglify和压缩无论什么时候都重要。gzip大家都耳熟能详,brotli有可能会有些陌生,brotli有...
2018-07-04 14:04:50 1111
原创 大学生该如何优雅的面试?
大学生该如何优雅的面试?这段时间面试了两个实习生,都是在校的研究生,有了一些想法,在这里记录一下。穿着什么的我就不说了,干净整洁什么的大家都知道,如果说得体那么这个太难,每个人对得体的定义不一样。我觉得需要注意的有几点第一点:简历,看起来啥都会,具体一问就傻眼这一点很重要。一般来说大学里会教一些课程,自己也会学习一些其他技术,但是你要明确你找工作的目标。比如你找一个
2015-12-07 14:59:59 1254
原创 大学生该如何自学前端技术(HTML CSS JavaScript)?
大学生该如何自学前端技术(HTML CSS JavaScript)?这段时间面试了几个实习生,都是在校的研究生,有了一些想法,在这里记录一下。据说很多学校都是不教前端编程的。还有好多学校是虽然教,但是只是用一两节课让同学们知道有HTML+CSS+JavaScript这么个东西,都入不了门,之后老师领着做东西,做法就是扒别人的网页,简单改一下。如果这些都是真的,那么前端技术就得靠自学
2015-12-07 14:58:50 3753 3
原创 作为一名程序员如何优雅的使用谷歌搜索技术(Google)?
作为一名程序员如何优雅的使用谷歌搜索技术(Google)?大家都知道作为一名程序员Google的作用很大,但是Google又很难优雅的使用。需要轻功高明。当然也有一些人做Google的镜像,但是发展的都不好。那么如何优雅的使用Google的搜索技术呢? 其实我们并不需要真的使用Google,只要技术是Google的,我们想找的东西能找到就好了。那么我习惯于用aol.com
2015-12-07 14:56:47 14250 1
原创 Linux 查看哪些进程占用磁盘IO (iotop工具)
Linux 查看哪些进程占用磁盘IO (iotop工具)今天查看了一下服务器状态,突然发现磁盘IO很高,几乎都是读,而CPU等待IO的现象很严重。我是用vmstat查看的,参数是3 。所以整个命令就是 vmstat 3 。但是那些进程导致了io高呢? 我就用了iotop工具,很小很小的一个工具。如果没安装,那么 yum install iotop 就可以安装
2015-12-07 14:54:16 7736
原创 linux crontab 指定执行的用户
linux crontab 指定执行的用户。一般来说我们通过crontab -e来添加定时任务, 但是如何优雅的指定该定时任务以哪个用户的身份来执行呢? 方法是直接在/etc/crontab文件中追加定时任务 并制定用户(我的环境是Ubuntu linaro),如下直接在/etc/crontab文件中添加,不过需要是root身份。打开文件,应该会看到类似下面的信息SHE
2015-12-07 14:53:12 12578
原创 Linux crontab 不执行的原因和如何检查错误大全
Linux crontab 不执行的原因和如何检查错误大全Here's a checklist guide to debug not running cronjobs:Is the Cron daemon running?Run ps ax | grep cron and look for cron.Debian: service cro
2015-12-07 14:51:59 2128
原创 linux 安装 chromedriver (Ubuntu linaro 安装 chromium-chromedriver)sudo apt-get install chromium-chromedr
inux 安装 chromedriver (Ubuntu linaro 安装 chromium-chromedriver)sudo apt-get install chromium-chromedriver我的环境还是Ubuntu linaro, 我的CC-A80, 之前是有chromedriver的, 今天我把整个chromium卸载了,有重新安装的。安装
2015-12-07 14:50:46 6198
原创 Linux crontab 环境变量问题
通过crontab调度脚本时脚本使用的环境变量与直接在shell中运行脚本时使用的环境变量不同(因为crontab并不知道你所使用的shell,只是简单的设置了HOME、LOGNAME、SHELL和有限的PATH等环境变量),因而可能导致“XXX command not find”的错误或者运行结果不一致的情况。解决办法有四:1.在脚本中设置环境变量,如,在cron_job.sh文
2015-12-07 14:49:33 1489
原创 JavaScript let (EcmaScript 6 let), JavaScript 局部变量
JavaScript let (EcmaScript 6 let), JavaScript 局部变量。let声明一个块级域的局部变量,并且可以同时初始化该变量。语法1let var1 [= value1] [, var2 [= value2]] [, ..., varN [= valueN]];
2015-12-07 14:48:05 1419
原创 windows 和 Linux 创建都怎么创建符号连接
windows 和 Linux 创建都怎么创建符号连接这篇博客其实是凑数的。先说我的需求,项目目录不apache的web目录下,但是个别一部分文件需要通过web访问,而且代码在windows下开发 在linux环境部署。我觉得简单的方式是创建连接。windows环境和linux环境分别怎么创建符号连接?1.linux(ubuntu)格式: sudo ln -s 源
2015-12-07 14:47:19 990
原创 CrystalDiskInfo磁盘工具及下载地址
CrystalDiskInfo磁盘工具及下载地址先贴上下载地址 http://crystalmark.info/software/CrystalDiskInfo/index-e.html 这个软件可以提供一些磁盘的参数,先上图值得说的是传输模式,很多人想知道自己的主板是否支持SATA3和自己的硬盘是否是SATA3接口,这个传输模式前一半SATA/600的意思是主
2015-12-07 14:45:42 5729 1
原创 CrystalDiskMark硬盘检测软件及下载地址
CrystalDiskMark硬盘检测软件及下载地址先贴上下载地址吧http://crystalmark.info/software/CrystalDiskMark/index-e.html这个软件很有意思,小巧,能检测硬盘的顺序读写速度和随机读写速度,如下图可以直观的反应硬盘的性能,这张图也是我的SSHD硬盘的检测结果。本文首发于姜哥的
2015-12-07 14:43:36 3573
原创 Ubuntu linaro(Lubuntu ARM) (Cubieboard CC-A80) 如何安装新版 Chromium
Ubuntu linaro(Lubuntu ARM) (Cubieboard CC-A80) 如何安装新版 Chromium 。我在 Cubieboard CC-A80上安装的Ubuntu linaro本来自带了Chromium,但是版本太旧了,34的,最新现在46吧,真实太旧了。 所以想升级,发现默认的源安装着已经是最新的了,尴尬。 找了一圈发现根本找不到合适的版本,ARM版太难找了,官
2015-11-12 14:43:51 2663
原创 Ubuntu linaro(Lubuntu ARM) (Cubieboard CC-A80) Chromium 运行Selenium Webdriver
Ubuntu linaro(Lubuntu ARM) (Cubieboard CC-A80) Chromium 运行Selenium Webdriver 。我想在我的Ubuntu linaro(Lubuntu ARM) (Cubieboard CC-A80)上运行Selenium Webdriver写的自动化测试程序,我是用Node.js来写的,之前已经写过我编译安装了Node.js4.2
2015-11-12 14:43:07 1101
原创 Selenium 官网打不开怎么办?
Selenium 官网打不开怎么办?刚接触Selenium的时候发现官网打不开,很是奇怪,我以为网站挂了,后来才知道这个网站也被屏蔽了。那就不上了呗,可是学习资料哪里找? 我找了一下 github啊, selenium在github上开源,上面有文档,足够学习了。本文首发于姜哥的墨迹技术博客(blog.mojijs.com)。本文地址为http://
2015-11-12 14:41:35 4656
原创 Chrome 命令行参数大全 (List of Chromium Command Line Switches)
Chrome 命令行参数大全 (List of Chromium Command Line Switches) 。大家知道Chrome启动的时候可以加命令行参数来关掉或者开启某个功能,有的时候对调试特别的有用。但是具体都有哪些参数是Chrome可接受的呢? 如下是我找到的一个列表。 http://peter.sh/experiments/chromium-comman
2015-11-12 14:40:25 11411
原创 Node.js Error: Cannot find module 'extend', 在CC-A80 Ubuntu linaro上运行Node.js 程序报错
今天尝试在CC-A80 Ubuntu linaro上运行Node.js 程序,结果报错 Error: Cannot find module 'extend' 。错误信息如下:123456789101112131415module
2015-11-06 13:19:54 4451
原创 Ubuntu linaro(Lubuntu) 修改系统时区 (Cubieboard CC-A80修改系统时区)dpkg-reconfigure tzdata
Ubuntu linaro(Lubuntu) 修改系统时区 (Cubieboard CC-A80修改系统时区)dpkg-reconfigure tzdata 。我在CC-A80上安装的Ubuntu linaro时间是不对的,和北京时间相差8个小时,想来一定是时区不对。所以查看时区1data -R输出结果
2015-11-06 13:19:14 4049
原创 Cubieboard CC-A80性能之Ubuntu Linaro编译安装Node.js
Cubieboard CC-A80性能之Ubuntu Linaro编译安装Node.js 。作为一个喜欢后端的前端工程师,我还是主要玩儿Node.js的,所以我要给CC-A80安装Node.js。apt-get源安装的Node.js 版本太旧了,0.10.xx 。大家都知道,经过Node.js和io.js风波之后Node.js 版本号已经到了现在的5.0.0了,有很多的新特性,只能编译安装
2015-11-06 13:18:01 1316
原创 Linux挂载局域网硬盘(Linux 挂在网络硬盘),Ubuntu (Cubieboard CC-A80)挂载小米路由器硬盘
Linux挂载局域网硬盘(Linux 挂在网络硬盘),Ubuntu (Cubieboard CC-A80)挂在小米路由器硬盘。小米路由器上的硬盘可以用来局域网共享资源,备份,网络下载,其实它就是个Samba服务,在windows下我们可以按windows键 + r 之后输入路由器IP来访问,类似如下:1\\10.13.16.21
2015-11-06 13:15:04 8544 2
原创 在使用Cubieboard 4 (CC-A80)时我犯的错误
在使用Cubieboard 4 (CC-A80)时我犯的错误。之前的文章就说了,我不是做嵌入式开发的,我的想法只是做单板电脑。我想用ubuntu,所以刷了lubuntu,lubuntu1.1 emmc HDMI,玩儿了一圈很开心。我装系统用来SD卡装完系统我想用来做一个存储磁盘。所以把sd卡格式化,挂载,挺好。玩儿了一圈之后重启一下吧,结果竟然卡在启动界面了,根本没进系统。试了几次
2015-11-06 13:13:42 2196
原创 我的 Cubieboard 4 (CC-A80) 到了
首先我不是一个做嵌入式开发的,我买Cubieboard纯粹是个人爱好,哪来玩儿的。淘宝买的,珠海到北京,前一天买第二天到,顺丰嘛。安装过程没啥可说的,凭着感觉就安装上了,先来两张图我挺喜欢的,功耗比X86低,我不打算关机了,于是乎我把它放到了电视机下面,放在了我的XBox后面,还把他的指示灯遮住了。默认系统是安卓,安装好之后直接上电,就进入到
2015-11-06 13:12:39 3294
原创 node.js安装模块报 .node-gyp\4.2.1\Release\node.lib : fatal error LNK1106: invalid file or disk full:
在安装selenium-webdriver的时候报 .node-gyp\4.2.1\Release\node.lib : fatal error LNK1106: invalid file or disk full: cannot seek to 0x313C2 [D:\node_modules\selenium-webdriver\n ode_modules\ws\node_modules\bu
2015-11-06 13:10:27 8439
原创 MSBUILD : error MSB3428: 未能加载 Visual C++ 组件“VCBuild.exe”。
Node.js 安装模块遇到 MSBUILD : error MSB3428: 未能加载 Visual C++ 组件“VCBuild.exe”。要解决此问题,1) 安装 .NET Framework 2.0 SDK;2) 安装 Microsoft Visual Studio 2005;或 3) 如果将该组件安装到了其他位置,请将其位置添加到系统路径中。 gyp ERR! stack Error
2015-11-06 13:08:52 42360 5
原创 ERR! configure error gyp ERR! stack Error: Can't find Python executable "python"
Node.js 在安装模块的时候报错,缺少python环境。ERR! configure error gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.错误信息如下:12345
2015-11-06 12:50:03 61168 2
原创 fiddler filters 使用(fiddler只显示指定请求,fiddler不显示指定请求,即filter请求过滤)
fiddler filters 使用(fiddler只显示指定请求,fiddler不显示指定请求,即filter请求过滤)Fiddler 有一个filters可以很好的帮助我们只显示我们关系的请求或者隐藏掉我们不关心的请求。这在开发中是非常有用的,尤其是你在这边想看请求,那边有程序或者网站在自动频繁发送求情,真的很烦。回想一下买票插件,是不是会在不停的刷,你在fiddler看东西就会很烦。
2015-11-06 12:44:22 65777 6
原创 记我升级电脑硬盘,硬盘升级系统迁移免除安装系统的烦恼 (硬盘克隆)
我的笔记本其实很旧了,4岁+。之前一直Win 7也没觉得慢,升级Win 10之后简直是慢死了,经过研究瓶颈主要在硬盘,所以决定升级硬盘。SSD固然好,但是和我这4岁+的笔记本实在不怎么匹配,其他硬件也4岁了,而且也在老化,所以最后研究结果是来个固态混合硬盘,也就是SSHD。买的是希捷的,500GB,5400转,64MB缓存,8GB SSD,Sata 3接口。其实我很讨厌
2015-11-06 12:42:36 1772
原创 Chrome mobile for Android 连接PC版Chrome远程调试(Android 移动端连接PC版Chrome远程调试 )
博客搬家:由于各种原因,我现在的博客将首发于blog.mojijs.com, 可以百度搜索 “姜哥的墨迹技术博客” , 或者 点击这里 本文地址http://blog.mojijs.com/post/152.html Chrome mobile 连接PC版Chrome远程调试(Android 移动端连接PC版Chrome远程调试 )以前写过一篇文章 weinre,移动端远程调试
2015-10-21 16:20:57 1576
原创 Chrome vim扩展 之 cVim 插件 键盘党的利器
博客搬家:由于各种原因,我现在的博客将首发于blog.mojijs.com, 可以百度搜索 “姜哥的墨迹技术博客” , 或者 点击这里 本文地址http://blog.mojijs.com/post/150.html 以前用过vrome这样的扩展,今天说的是cVim,也挺好用,VI风格操作浏览器。安装就不说了,到Chrome网上应用店去找就成,找到后添加到Chrome。
2015-10-19 20:49:24 4459
原创 PHP打印调用堆栈信息,用于程序调试
博客搬家:由于各种原因,我现在的博客将首发于blog.mojijs.com, 可以百度搜索 “姜哥的墨迹技术博客” , 或者 点击这里 本文首发地址 http://blog.mojijs.com/post/143.html我们都知道代码调用堆栈对调试程序是多么重要。对于JavaScript我很会玩,无论是浏览器还是Node.js环境。但是我并不是一个php高手,调用堆栈就显得尤为重
2015-10-11 16:32:29 8189
原创 2015年9月最新浏览器市场份额统计表
博客搬家:由于各种原因,我现在的博客将首发于blog.mojijs.com, 可以百度搜索 “姜哥的墨迹技术博客” , 或者 点击这里 本文首发地址 http://blog.mojijs.com/post/144.html今天是2015年9月的最后一天,给大家分享一下最新统计的浏览器市场占有率数据。需要说明的是,因为现在是9月,所以九月的市场份额统计还没有出来,所以以下统计都是
2015-10-11 16:29:36 1484
原创 MySQL SQLSTATE[42000]: Syntax error or access violation: 1286 Unknown table engine 'InnoDB' 错误的原因及解决
博客搬家:由于各种原因,我现在的博客将首发于blog.mojijs.com, 可以百度搜索 “姜哥的墨迹技术博客” , 或者 点击这里 本文首发地址 http://blog.mojijs.com/post/146.html我的一个网站用ThinkPHP搭建的,今天网站挂了,打开调试模式看了一下,错误信息如下1SQLSTATE[4200
2015-10-11 16:26:52 5613
原创 weinre,移动端远程调试工具(适用于Android和Windows Phone)
博客搬家:由于各种原因,我现在的博客将首发于blog.mojijs.com, 可以百度搜索 “姜哥的墨迹技术博客” , 或者 点击这里 本文首发地址 http://blog.mojijs.com/post/147.htmliOS Safari 可以连接到Mac OSX进行远程调试(OSX 10.6+),但是Android和Windows Phone就不行了,但是我们可以用weinre来
2015-10-11 16:23:48 1175
原创 Wampserver 2.5 mongo扩展
这些天需要操作mongo,给PHP打开了mong扩展,但是怎么都加载不起来, 甚是不解, 直到看到了下面这段话才恍然大悟, 简单摘录如下。I just updated from WAMPserver 2.2e (Apache 2.2.22, PHP 5.3.13, MySQL 5.5.24) to WAMPserver 2.5 (Apache 2.4.9, PHP 5.5.
2014-11-26 15:02:38 1974 3
原创 CentOS 6.5 rc.local 开机不执行的原因之一
好久不动Linux,最近帮朋友弄了一下。新买的阿里云主机,由于内存1GB所以选择了32bit的CentOS6.5。安装软件和配置及其一些优化都很顺利,可是希望能在开机启动的时候启动web服务器和数据库,我的习惯做法是把启动脚本放在rc.local里面。重启发现根本没生效,测试了一下写法上没有任何问题。但是又找不到问题在哪里,Google了一下没找到什么有用的信息,偶然发现有人在写权限的问题
2014-10-25 14:28:40 3827
原创 U盘安装 CentOS 64bit (dell c6100, CentOS6.3, 64bit)
在淘宝买了一个服务器,dell c6100,64bit, 以前系统是black apple,最近又买了一块企业级硬盘打算装CentOS。综合各方面原因决定安装6.3版本。我参考了http://blog.chinaunix.net/uid-22714685-id-3400461.html,但是这篇文章写的是32bit的,其实都差不多,我写一下我和这篇文章不一样的地方。首先在U盘中没有生成sy
2014-08-16 15:05:49 1988 2
dojo1.8文档(dojo1.8 reference-guide)
2013-04-20
centos yum rpm安装包集合
2011-07-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人