Windows下搭建Linux Web开发环境

简介 Windows下开发如Rails等Web开发环境,主要是方便像前端开发等使用Windows系统的开发 人员可以在Windows参与项目开发,主要实现以下目标: 可以在Windows使用如Sublime Text等工具修改代码 使用Git等工具提交代码 在Linux运行项目代码,在Windows下看实际效果 两个系统跑起来不卡:) 所需软件 安装PowerShell, cmder, choco, babun, VirtualBox, Vagrant PowerShell: Windows自带的cmd命令行工具是比较弱的,微软推出的PowerShell比cmd要强大得多,Win7自带1.0,推荐升级到4.0,安装Windows »

Rails常见数据库优化

ActiveRecord的爱恨情仇 ActiveRecord无疑是生产力的一大利器,可以帮你在前期脱离手写SQL语句生存下来。不过这个是个双刃剑,使用不当也会带来一些问题。当应用简单,数据不多的时候,它基本上可以让你不需要考虑数据库查询问题。不过当应用变得复杂,数据量稍微大一些的时候,就得要稍微捡起SQL用心优化一下。ActiveRecord跟SQL的配合还是非常棒的,至少可以帮你生成没语法错误的SQL语句:~D 还是要有些SQL的基础,不然ActiveRecord会让你有错觉。忘记了没关系,它可以帮你捡起来。 用includes, preload等解决1+n问题 比如取出了ShipmentOrder,每次还要取相应的ShipmentHeader ShipmentOrder.where(...) # 改成以下方式 »

解决Gitlab不显示Push Event和新分支

这个问题在Github上有不少讨论,为方便国际友人,可以看这里的英文版。 换了Redis配置后,发现git push 后Gitlab页面上不再显示Push Event和新的分支了,这个问题在自己部署的版本上经常出现,主要原来还是配置不对,直接用包安装会比较方便。这里针对的是v8.7,下面是解决的过程,方便用需要的朋友。 下图就是你git push后gitlab所做的工作,gitlab-shell会触发回调,并往redis里塞任务,而sidekiq会从redis里取任务出来并更新页面上的东西。如果你push完代码更新了,页面没显示出来,多半是sidekiq没有从redis取到更新的任务,当然首先要保证sidekiq正常在后台工作。 首要任务 确保Gitlab各组件工作正常, »

使用Shipit+Gulp+PM2+Nginx自动部署Nodejs应用

Shipit自动化部署 Shipit的使用类似capistrano,先本地全局安装 npm install -g shipit-cli npm install -g gulp # 这里用的几个插件 npm install shipit-deploy --save-dev # 默认的部署任务 npm install shipit-npm --save-dev # 自动在服务器上运行 npm install npm install »