May 5, 2013
editplus查找替换的正则表达式应用
"表达式 说明 \\t 制表符. \\n 新行. . 匹配任意字符. | 匹配表达式左边和右边的字符. 例如, “ab|bc” 匹配 “ab” 或者 “bc”. [] 匹配列表之中的任何单个字符. 例如, “[ab]” 匹配 “a” 或者 “b”. “[0-9]” 匹配任意数字. [^] 匹配列表之外的任何单个字符. 例如, “[^ab]” 匹配 “a” 和 “b” 以外的字符. “[^0-9]” 匹配任意非数字字符. * 其左边的字符被匹配任意次(0次,或者多次). 例如 “be*” 匹配 “b”, “be” 或者 “bee”.\n其左边的字符被匹配至少一次(1次,或者多次). 例如 “be+” 匹配 “be” 或者 “bee” 但是不匹配 “b”. ? 其左边的字符被匹配0次或者1次. 例如 “be?” 匹配 “b” 或者 “be” 但是不匹配 “bee”. ^ 其右边的表达式被匹配在一行的开始. 例如 “^A” 仅仅匹配以 “A” 开头的行."
April 23, 2013
golang中实现自定义数据类型struct
"可以参考: golang中的函数\nfunc.go\npackage main import ( \u0026#34;fmt\u0026#34; ) type stu struct { Name string //首字母大写,允许其它包直接使用,可以直接使用 stu.Name = \u0026#39;test\u0026#39; 也可以使用 setName和getName age int //不允许外面的包使用,可以使用 setAge和getAge方法 } func main() { perl := new(stu) perl.Name = \u0026#34;zhang\u0026#34; // age setAge(perl, 30) age := getAge(perl) fmt.Printf(\u0026#34;%v\\n\u0026#34;, age) //name var name string perl.setName(\u0026#34;sun\u0026#34;) name = perl.getName() fmt.Printf(\u0026#34;%i\\n\u0026#34;, name) //print struct fmt.Printf(\u0026#34;%v\\n\u0026#34;, perl) } …"
April 23, 2013
开发jquery插件
"jquery插件开发文档:\n以下为一简单的实例:\nchajia.js:\n(function($) { //录入框点击事件 $.fn.alertWhileClick = function() { $(this).click(function(){ window.console.log(‘execute click event’); alert($(this).val()); }); window.console.log(‘ok2’); } //获取页面最大div的最大高度 $.fn.maxHeight = function(){ var max = 0; this.each(function(){ window.console.log(‘a’); max = Math.max(max, $(this).height()); }); return max; } })(jQuery); //插件用法 $(function(){ $(‘#login_username’).alertWhileClick(); var tallest = $(‘div’).maxHeight(); …"
April 9, 2013
使用nohup在后台运行scp
"对于scp的用法见:\n需要从远程拷贝一个比较大的文件,所以要让SCP在后台运行\ngoogle搜了一下都是说使用ssh的public key让两台机器可以不用密码连接\n但不是每个人都有这个条件允许两台机器无密码通行的\n所以可以使用下面的方法实现:\n1.nohup scp user@server:path/file localpath\n2.输入密码\n3.按Ctrl+z挂起当前进程\n4.使用命令bg让挂起的进程继续运行"
March 19, 2013
sphinx分布式索引简介
"sphinx分布式索引原理:\n当searchd收到一个对分布式索引的查询时,它做如下操作:\n连接到远程代理\n执行查询\n(在远程代理执行搜索的同时)对本地索引进行查询\n接收来自远程代理的搜索结果\n将所有结果合并,删除重复项\n将合并后的结果返回给客户端\n在应用程序看来,普通索引和分布式索引完全没有区别。\n任一个searchd实例可以同时做为主控端(master,对搜索结果做聚合)和从属端(只做本地\n搜索)。这有如下几点好处:\n集群中的每台机器都可以做为主控端来搜索整个集群,搜索请求可以在主控端之间获 得负载平衡,相当于实现了一种HA(high availability,高可用性),可以应对某个\n节点失效的情况。\n如果在单台多CPU或多核机器上使用,一个做为代理对本机进行搜索的searchd实例 就可以利用到全部的CPU或者核。\n更好的HA支持已在计划之中,到时将允许指定哪些代理之间互相备份、有效性检查、跟踪\n运行中的代理、对检索请求进行负载均衡,等等。\nsphinx分布式索引配置:\nindex dist1\n{\nlocal index to be searched\nthere can be …"
March 9, 2013
linux下启动mysql提示”mysql deamon failed to start”错误的解决办法
"有台linux服务器,系统为centos系统.\n描述:\n网站突然连接不上数据库,于是朋友直接重启了一下服务器。进到cli模式下,执行 service myqsld start 发现还是提示”mysql deamon failed to start”错误信息.\n/etc/init.d/mysqld start\nMySQL Daemon failed to start.\nStarting mysqld: [FAILED]\n查看mysqld的log文件\n#less /var/log/mysqld.log\n/usr/libexec/mysqld: Can’t change dir to ‘XXX’ (Errcode: 13)\n首先是查看数据库日志\nmysqld started\n[Warning] Can’t create test file xxx.lower-test [Warning] Can’t create test file xxx.lower-test /usr/libexec/mysqld: Can’t change dir to ‘/xxx’ (Errcode: 13) …"
February 27, 2013
在zend stuido下使用git插件教程
"上一节zend stuido下安装了git软件插件。下面我们来讲一下git插件的使用方法.\n由于我们目前已经创建好了git项目。所以这里只介绍直接从现成的git项目仓库导入.\n选择菜单”文件(File)”-\u0026gt;”Import”\n点击”Browse…”选择存放git的目录,然后点击”Search”按钮这样就可以读取一些git配置信息,并在上面显示出来项目目录下的所有文件.\n最后一步是选择当前项目的名字,这个随便起的。最后点击”Finish”按钮就可以了。\n这时在IDE左侧会看到项目名字及项目结构信息。\n下面可以修改一个文件,然后在左侧的导航里选择修改的文件,右键点击,选择”Team” 菜单,再选择”Commit”菜单,会弹出一个对话框,在”Commit message”对话框时里输入提示备注信息。点击”Commit”按钮就可以了。"
February 27, 2013
zend studio 安装git插件
"搞php的用zend studio这个ide工具的开发人员应该不在少数,而对于我们团队开发使用svn和git版本控制软件也特别多的。我们公司团队使用的是zendstuido 10与git这两个软件。但默认情况下zendstuido并不支持git这个插件的,这个时候需要我们来手动安装git插件。方法如下:\nzend studio菜单:Help -\u0026gt; Install new software…\n下一步会提示一些是否授受协议之类的。直接选择 我同意(i agree)就可以了。\n下面我们来讲一下如何在zend stuido下使用git插件"
February 18, 2013
RESTful Web Service Cookbook 学习笔记
"每个HTTP方法都具有特定的主义. GET 的目的是得到一个资源的表述 PUT 用于建立或更新一个资源 DELETE 用于删除一个资源 POST 用于创建多个新资源或者对资源进行多种其它变更\n不要将GET方法用于不安全或非幂等操作.因为这样做可能会造成永久性的、不到的、不符合需要的资源改变。\n在所有上述方法中,GET被滥用的情况最少,因为GET既安全又幂等。\n参考:"
February 1, 2013
iptables规则的查看、添加、删除和修改[教程]
"在 Linux 中 iptables 实际上只是一个操作 Linux 内核 Netfilter 子系统的“界面”。顾名思义,Netfilter 子系统的作用,就是 Linux 内核里挡在“网卡”和“用户态进程”之间的一道“防火墙”。 也就是说 iptables 工作在用户态,它和我们平时开发的应用程序完全一样的,只是它的作用是用来操作 NetFilter 的一个工具。而 NetFilter 工作在内核态,它们的关系,可以用如下的示意图来表示:图来自极客时间\n在 iptables 中存在四表五链的概念。\n表分别为 filter、nat、raw、mangle ,当数据包抵达防火墙时,将依次应用 raw、mangle、nat、和 filter 表中对应链内的规则,其中表的应用顺序为:raw -\u0026gt; mangle -\u0026gt; nat -\u0026gt; filter,而表中链的规则自上向下依次执行,执行中有可能跳转到其它链中继续执行。 iptables Processing Flowchart\n如果按七层网络协议的话,则 ipables 中的数据流向为(来自Netfilter 官方的原理 …"