摘要: 参照<<Erlang 程序设计>>第10节的kvs例子,进行本机两个节点调用测试,分别开两个shell,分别输入erl -sname halenerl -sname susan然后rpc调用报错,在susan的erl shell端net_adm:ping(halen@localhost) 返回是pang,说明节点ping不通。/etc/hosts里设置无错,不明所以之际,google到一solutionerl -name halen@localhosterl -name susan@localhostWorks like a charm.:) 阅读全文
posted @ 2012-10-24 16:31 一缕青烟 阅读(190) 评论(0) 推荐(0) 编辑
摘要: 要有多蛋疼才会用php去写http服务器?答案是需要蛋疼到蛋裂的地步。 还好哥只是略疼,所以写了非常非常粗糙的一点东西,目的是为了温习下php的socket(tcp)+fork的用法。 开始先讲原理,主要是scoket服务利用whilet挂住,socket_accept接收到新的socket连接后,马上fork一个子进程,负责单独和这个连接交互,这里也很简单,无非就是socket_read挂住监听这个连接的请求,发现有则解析并返回,这里说的返回是socket_write往socket连接的句柄写入信息。 接着就是代码了,解释再多也不如代码看得实在。#!/usr/local/php/b... 阅读全文
posted @ 2012-04-06 20:30 一缕青烟 阅读(3190) 评论(3) 推荐(0) 编辑
摘要: 看着Erlang字符串操作不尽如人意,何不试着模拟实现php的字符串一些基本的操作?最近又有点时间玩Erlang了,顺手先写下两个,有空再完善。-module(mystring).-export([strpos/2 ,substr/2 ,substr/3 ,trim/1 ,replace/3 ,replace/4 ,strstr/2 ,strbef/2 ,parse_str/1 ,addslashes/1]).%Function->[strpos]%Get first location of character/string%did not... 阅读全文
posted @ 2012-03-05 00:05 一缕青烟 阅读(860) 评论(1) 推荐(0) 编辑
摘要: 终于尼玛不报错了,把步骤理一理,操作系统是ubuntu11.04#1.首先下载hadoop,我下的是hadoop-0.20.203.0,tar解压,放到/var/下#2.安装ssh,rsync,apt-get搞定#3.建立名为hadoop的系统用户#4.将hadoop安装目录拥有者改成hadoop用户#chown -hR hadoop /var/hadoop-0.20.203.0#5.切换至hadoop用户,之前用root老是不成功,有bug?#6.设置ssh直接登录,copy from 官网$ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa $ 阅读全文
posted @ 2011-11-18 01:19 一缕青烟 阅读(321) 评论(0) 推荐(0) 编辑
摘要: 郁闷,cnblogs编辑器还没有erlang高亮.开始,Erlang的fibonacci新建一个erltest.erl,内有-module(erltest). %需和文件名同名-export([fib/1]). %外部可调用的函数,所以编译后外部可erltest:fib这么调用,fib/1的 /1 表示函数有1个参数,同名不同参erlang是允许的fb(1) -> [1,0]; %当碰到fb(1)模式时,直接返回[1,0]fb(2) -> [1,1,0]; %同上fb(N)when N >2 -> %当调用fb(N{N > 2})时 Z = fb(N-1), %把 阅读全文
posted @ 2011-09-14 21:11 一缕青烟 阅读(360) 评论(0) 推荐(0) 编辑
摘要: linux下php可以玩玩System v的一系列函数了,尤其感兴趣的是消息队列和信号量,先来用用消息队列.msg_queque.php$key = ftok(__FILE__,'a');//消息队列实例化$mq = msg_get_queue($key,0666);for($i=0;$i<10;$i++): //fork子进程 $pid = pcntl_fork(); if($pid) : $time = explode(" ",microtime()); //推入队列 ... 阅读全文
posted @ 2011-09-09 16:23 一缕青烟 阅读(551) 评论(0) 推荐(0) 编辑
摘要: php的mysql持久化连接,美好的目标,却拥有糟糕的口碑,往往令人敬而远之。这到底是为啥么。近距离观察后发现,这家伙也不容易啊,要看apache的脸色,还得听mysql指挥。 对于做为apache模块运行的php来说,要实现mysql持久化连接,首先得取决于apache这个web服务器是否支持Keep-Alive。 Keep-Alive Keep-Alive是什么东西?它是http协议的一部分,让我们复习一下没有Keep-Alive的http请求,从客户在浏览器输入一个有效url地址开始,浏览器就会利用socket向url对应的web服务器发送一条tcp请求,这个请求成功一次就得需... 阅读全文
posted @ 2011-09-08 21:34 一缕青烟 阅读(4940) 评论(7) 推荐(1) 编辑
摘要: <?phpheader("content-type:text/html;charset=utf-8");/***@description*搜索一颗深度为n(n=物品数量)的树,根节点即第一个物品,如果根接点的重量未超过限定重量,则根左右子节点都是第二个物品,如果超过,则第二个物品只作为左子节点。*主要思想是,符合限定条件的节点,将搜索左右子树,不符合的的节点,将只搜索左子树*假设w[] = (2,3,4) p[] = (4,5,6),限重量为7,则最终搜索树为 2 0/ \1 3 3 0/ \1 0/ \1 4 4 4 4 0|1 0|1 0|1 0| (4) (3) 阅读全文
posted @ 2011-06-10 21:31 一缕青烟 阅读(254) 评论(0) 推荐(0) 编辑
摘要: 核心是模式串next数组的生成#include <stdio.h>#include <string.h>#define NS 100int strpos( char s1[] , char s2[] ,int N[]);void next( char s2[],int N[]);int main(int argc, char *args[] ){ int i = 0,k = 0; int N[NS] = {0}; next( args[2],N ); printf("%d\n",strpos(args[1],args[2],N)); return 0 阅读全文
posted @ 2011-04-08 21:35 一缕青烟 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 0-1背包是经典问题,有必要常常复习。 <?phpheader("content-type:text/html;charset=utf-8");$weight = array(2, 3, 44, 5, 15, 12);$price = array(5, 5, 8, 17, 3, 7); $limitw = 30;echo "<pre/><br/>";echo "物品重量<br/>".print_r($weight,1)."<br/>";echo "对应 阅读全文
posted @ 2011-03-11 19:54 一缕青烟 阅读(526) 评论(0) 推荐(0) 编辑