自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 资源 (4)
  • 收藏
  • 关注

原创 启动Java程序为Linux服务

不想用别人封装的程序,比如wrapper service。用自己的脚本搞定。1.创建一个start.sh脚本,里面运行java程序:-UU-:----F1 master_rest 18% L25 (Shell-script[sh])-----------------------------------------------------------------------------

2012-11-29 16:28:12 7393 1

原创 Emacs 使用Jslint

由于jslint对tab的要求是8个空格宽度,默认的Emacs 的js模式格式化的代码不符合要求。Mx- customize-variable然后对js-indent-level设置成8通过Save for future sessions保存到.emacs文件中。(custom-set-variables ;; custom-set-variables was added by Custom.

2012-11-27 17:16:57 3372

原创 JavaScript用匿名闭包封装模块

下面的代码是我的测试代码,注释很重要:/*global window,jQuery,validate_email,masterUI,$,rest*//** Enable ECMAScript "strict" operation for this function. See more:

2012-11-27 16:37:17 3090

原创 跨平台C++整数类型 之一 固定宽度整数(boost和C++11)

原来一直使用ACE的跨平台整数类型,比如:ACE_UINT32, 但是自己使用C++的风格是明显的现代风格,以范型为主,所以最近开始逐步替换ACE的代码,改用boost库。在boost库中,standard integer types用来支持跨平台的整数类型,我用的是1.48版本,参考文档:http://www.boost.org/doc/libs/1_48_0/libs/integer/doc/

2012-11-25 21:54:30 5385

原创 MongoDB C++应用 简单例子

假定你已经有了MongoDB server,并且工作在Ubuntu上,安装了GCC,下面的C++程序可以帮助你快速进入能够使用MongoDB的状态。#include #include using namespace std;using namespace mongo;void SaveStatus(mongo::DBClientBase& session, string const& d

2012-11-24 20:58:50 18690 1

转载 Lisp的本质(难得的入门文章)

http://www.csdn.net/article/2012-11-22/2812113-The-Nature-Of-Lisp###

2012-11-24 14:48:59 5304

原创 从服务器上找回工作区中被删除的文件

当从工作目录下删除了一个文件,然后试图从服务器上拿回来的时候,git pull 总是说 up to date。骗我两小时。用下面的命令就好:git ls-files --deleted | xargs git checkout

2012-11-21 09:55:47 8233

原创 Disable div 的办法

由于div没有disabled属性,因此不能简单的通过设置disabled属性达到效果。通常div中包含了用于输入的tag,比如文本框,选择框,按钮等。因此问题转化为disabled div中的input tag.这就很简单了。通过JQuery 选择器 将div下的所有的input进行属性设置,添加或者删除disabled属性。参考下面我的例子代码: disablePowerConfig: fun

2012-11-15 19:57:05 34152 1

原创 Gerrit多次commit造成多次review请求的解决方法

这是Gerrit的设计决定的,这绝对不是bug。每次commit都会生成一个change id,而review请求就是绑定在这个change id上的。两种解决方法:1.工程师尽可能的少用commit, 每次都用git add 将工作区的东西放到暂存区管理,然后在git push review之前一次调用git commit2.很多人建议:第一次调用git commit , 之后通过git com

2012-11-15 14:13:20 15983

原创 KVM 虚拟机备份和还原之二 snapshot

假设已经安装了vm1虚拟机并运行之创建一个xml文件vm1_snapshot.xml,内容如下: vm1_snapshot Ubuntu 12.10 AMD64 server现在运行下面的命令创建vm1的snapshot:virsh snapshot-create vm1 ./vm1_snapshot.xmlDomain snapshot vm1_snapshot created

2012-11-14 14:52:29 6039

原创 用start-stop-daemon启动Nginx

在前面学习Ubuntu apt-get install nginx 创建的nginx启动脚本中,看到start-stop-daemon的用法。迅速查了一下手册(用man start-stop-daemon)。这个程序用来启动和关闭系统级别的进程。下面我用该命令启动我自己编译的nginx程序:start-stop-daemon --start --quiet --make-pidfile --pid

2012-11-14 10:47:07 13876

原创 KVM创建虚拟机后指定启动脚本

在vmbuilder命令中创建vm时,可以通过参数虚拟机第一次启动的时候执行的脚本文件。但是由于这个时候虚拟机网络可能还不通,必须要延迟一会儿,才能保证一些apt-get install命令能够顺利执行。下面的脚本是我常用的,贡献出来:boot.sh文件内容:# Set time zone

2012-11-12 17:06:25 4591

原创 KVM虚拟机关闭

shutdown命令可以用于优雅的关闭kvm虚拟机,但是为什么总是关不掉。比如想关掉vm2,就是不行。virsh shutdown vm2因为virsh通过下面的命令关闭虚拟机QEMU/KVM shutdown这会导致向虚拟机发送一个ACPI的指令,而默认安装kvm虚拟机的时候,没有安装acpid程序,因此虚拟机没有处理改指令。解决方法是在虚拟机里面安装:apt-get install acpi

2012-11-12 15:31:37 8461

原创 KVM 虚拟机备份和还原之一 内存备份和还原

有了创建vm的自动化脚本,有了删除vm的自动化脚本,生活已经简单很多。但是在某个测试场景中,我们经常需要不断的将vm还原到某个起点,然后重新开始测试。每次都删除/创建vm仍然很慢。这个时候,可以使用save/restore方法。save/restore方法只备份和还原当前系统的内存状态,并不会备份磁盘文件。 因此耗时极短,但是使用场合有限,特别注意。virsh save --bypass-cach

2012-11-08 10:32:18 7254 2

原创 KVM 虚拟机删除

每次敲一堆命令,时间长了就想自动化了。下面的delete_vm.sh脚本需要root权限下运行。#!/bin/bashsource ../common/tool.shvirsh destroy $1virsh undefine $1RemoveFolder "/var/lib/libvirt/images/$1/"RemoveFile "/etc/libvirt/qemu/$1"调

2012-11-08 09:49:12 10843

原创 Jersey创建standalone server 二

上一篇文章产生的工程就可立刻开发了。不过看一下pom.xml,什么jersey版本是1.8.太老了。用最新版本吧。呵呵,下面要折腾一下。第一,pom.xml要修改一下: com.sun.jersey jersey-server ${jersey-version} com.sun.jersey jersey-gr

2012-11-06 14:08:59 3998

原创 Jersey创建standalone server 一

有时候,我们需要创建一个web service,但是并不需要部署在某个容器中,而是像一个应用程序一样运行,自己监听端口,解析HTTP请求,发送HTTP响应。这样可以占用更少的资源,比如以前我碰到过一台租用的服务器由于核心线程数目的限制,Glassfish server都无法启动。现在有很多系统服务程序都是这样的实现,比如Gerrit2等。Jersey也提供了这种方式,内部集成了grizzly2.

2012-11-06 13:08:56 4723

原创 Ubuntu 12.10 server Nginx 产品安装

一直都是从Nginx站点下载源代码进行编译安装,从手动模式进步到自动脚本。但是如果要做多机器部署的话,这种玩法显然不好,部署就不要扯进代码编译这件事情。因此今天试了一下Ubuntu自带的安装包。执行apt-get install nginx后,自动安装了nginx,并且启动脚本也创建好了。通过运行nginx -v 发现版本是1.2.1,还不错。再运行nginx -V观察加载的模块,找到了http_

2012-11-02 14:13:41 3769

原创 UBuntu 12.04 server cron定时监控

cron服务在Ubuntu12.04 server里是默认安装的。使用crontab -e 命令可以调出你系统中默认的编辑器进行编辑crontab的命令格式可以参考下面这篇文章,非常不错:http://blog.csdn.net/love__coder/article/details/6890997Ubuntu站点也提供了手册:http://wiki.ubuntu.org.cn/CronHowto

2012-11-01 21:16:48 5293

JSF2自定义组件编程系列 第五部分 源代码

package composite component into jar maven3 jsf2 UBuntu glassfishv3.0.1 Emacs JDEE

2011-01-06

JSF2 example project

一个我自己用的JSF2的模板工程,使用maven-glassfish-plugin,mybatis,logback。

2011-01-03

用UBuntu开发OpenGL程序8

摄像头360度旋转示例 开发平台,UBuntu,NetBeans6.8

2010-02-24

用UBuntu开发OpenGL程序6 源代码

文章附带源代码,NetBeans6.8工程,UBuntu系统

2010-02-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除