`
fsword
  • 浏览: 164884 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论
文章列表
分析一下之前的代码,可以注意到,server的功能其实是非常类似的,我们可以把公共的部分抽取出来,把不同的部分单独实现,做到一定程度上的复用,erlang支持动态的使用变量,例如: Mod = my_server. Mod:start(). 这样的代码会启动my_server,借助这个功能,我们可以把模块名作为参数传入,还可以使用模块名作为进程的注册名,于是,代码就便成了这样 % my_server5.erl % -module(my_server5). -export([start/2,stop/1]). -export([init/2]). -export([request/ ...
上一篇写了一个服务器,包括基本的请求响应,服务关闭等功能,但是这并不是服务器的全部。 一般来说,服务器应当内部保存若干数据,这些数据参与对request的运算,然后生成response,有时候,这些计算还会改变服务器上的数据本身。我们可以把这些数据抽象为服务器的"状态",当服务器启动时,状态数据被初始化(初始化的工作应该根据环境有所区别)。 话说的真累,其实这就是大名鼎鼎的有限状态机 :-) 看代码: % my_server4.erl % -module(my_server4). -export([start/1,init/1]). start(Env) - ...
~~~~~华丽的分割线~~~~ 最近老赵对C#和java进行比较的一篇博客引起了很多人的关注,但是我并不是很同意这个角度,我一直认为,一把钥匙一把锁,有明确针对性的语言是好语言,例如 erlang 之于分布式高可靠性系统,ruby 之于DSL类应用 学习Erlang的过程中,感觉它的语法其实很简单,比较强大的是它针对分布式系统所建构的基础设施,这个在语言层面和类层面都有考虑,这个系列blog就是我的学习总结。 ~~~~~华丽的分割线~~~~ erlang更适合分布式服务端开发,让我们从一个服务器程序写起—— % my_server1.erl % -module(my_server1 ...
看看这段代码: class TaskController < ApplicationController active_scaffold :tasks protected def before_update_save(record) record.updated_by = current_user end end   我们常常要讨论一段逻辑放在哪里,页面和controller之间一般好说,问题在于业务层和controller之间。而这个例子很典型,current_user这样的信息不可能在业务层得到,因为这是状态信息,而contro ...
yeeyan.org 回来了,很高兴,google一下,找到了一篇介绍情况的文章 ,yeeyan已经成功的找到了适应国内环境的方式,虽然不是百分百,但是保留了主要力量,祝贺!   等待饭否 、jiwai 的回归......
无意中看到一篇博客,后面废话了几句,顺便写在这里吧 REST本身不是架构,只是一种架构风格,理解它的时候要参考这个架构风格出现的环境所施加的约束条件。 REST的目的是“建立十年内不会过时的软件系统架构",所以它具备三个特点: 1. 状态无关 —— 确保系统的横向拓展能力 2. 超文本驱动,Fielding的原话是”hypertext-driven" —— 确保系统的演化能力 3. 对 resource 相关的模型建立统一的原语,例如:uri、http的method定义等 —— 确保系统能够接纳多样而又标准的客户端 从另外一个角度看,第一条保证服务端演化,第三条保证客户 ...
  oracle提供了oci的连接方式,它是一种本地连接,需要在本地操作系统中安装客户端,在windows、linux、solaris下一般可以直接通过安装文件安装oracle 客户端,在linux下面还可以安装oracle client instant(它通常是通过rpm包的形式发布的) 应用程序能否通过oci进行访问,关键是tnsname的设置,这一般有两种方式 在程序内指明连接信息 使用配置文件指明连接信息,然后在程序内引用配置文件中的服务名 下面通过ruby代码举例说明 1.在程序内部设置,以oci8为例 require 'oci8' db_def = %[(DESCRIPTI ...
(今天一天就这么些结果,唉,真没效率......) 这个事情起因于公司的一个短信产品,老实说,我们这些门外汉做的实在不怎么样,加上进度控制的不好,前前后后又把人调来调去,现在是一个外包的哥们帮我一起擦屁股。 东西 ...
前一段时间写了一段抓取网页的程序,感到这个很简单,最近要搜寻网上信息,于是也打算写一个程序来做这件事,不过这次涉及到多个网站,格式很不规则,写来写去,貌似变成一个垂直爬虫了,略有心得,凑一篇博客吧。 ...
CCTV 4刚刚播出了《2007世界》和《2007中国》两个节目,算是对过去一年的回顾,这是年末的必备功课,那么我自己呢?我这一年里又做了些什么呢? 略有茫然,似乎做了一些事情,又似乎什么都没做。 就说工作吧,上半年忙忙 ...
父母和朋友都问最近怎么没写博客,我知道是怕我有什么不开心的事,其实真的没什么事,因为时间可以解决一切问题,就像写程序补漏洞,就算水平再差,不断的补阿补阿的,最后总能糊弄好。 不写博客其实是对自己水平的无奈──看看别人写的文章,要技术有技术,要思想有思想,实在都没有,还有文笔在那里摆着,我看着就一个感觉──羞愧阿!整天这样当然没有心情写东西了。 比方说我很烦那种怎么也死不了的电影,可还是人家王小峰说的更生动: 来自wangxiaofeng的博客 去电影院里看电影还是《十面埋伏》首映,本来准备好睡一觉,结果我一直乐,困意全无,后来迷迷瞪瞪昏睡过去,同去的妹妹赶紧捅我,快看,章子怡死了 ...
表现为能够mount,但是不能umount bash 代码 $ umount /media/other   umount: /media/other mount disagrees with the fstab   检查fstab文件: 文件内容   # /dev/sda7   UUID=c2181b73-0e36-4fba-8f53-9538ab09703b /media/other   jfs   user,rw  0       1   看不出错误。于是google之,居然是user mount不支持uuid,改为 文件内容   ...
一则新闻:北京对车祸死亡民工做出"同命同价"判决 实事求是的说,这是一件理所应当的事情,但是考虑到我们一直以来的做法,从纵向的角度看,这也的确是一件非常值得赞扬的进步,这让我感到“和谐”越来越变得不是一句空话了。 另外还有一件事是“嫦娥”的发射,本来也是一件值得祝贺的事情,不过与上面的事情相比,还是要逊色一些。 社会的发展常常是各方面同时前进的,不管遇到什么事情,对于未来,我总是忍不住怀有希望。
没啥东西写,就记一些流水帐吧。 最近在开大会,碰巧我也买了电视,作为一个党员,应该认真学习领会,于是有空就看新闻。 看了几天,实在无聊,我们自己的新闻全是唱赞歌,而且在我看来,这赞歌唱的也不认真,每次都 ...
昨晚通宵去唱歌,算是送行吧。 我唱歌的时候很容易投入或者带入角色,所以唱《保卫黄河》和《团结就是力量》的时候感情最简单,可惜这样的歌不多。 不过熬夜以后好像还不太累,白天只是断断续续睡了几次,对自己的精神头有些惊讶。 早上还没进家门,就接到小区做二手货的大嫂一个电话,于是去买了二手的沙发和电视柜,下午她老公来帮我解决了一下热水器水流太小的问题,同时又补充了一个电脑桌和一个29吋的二手彩电,房东也把马桶的盖子换成木头的,并确定后面需要处理的几件事情(有线电视、电话开通,还有纱窗和墙壁处理)。 费用: 沙发+电视柜:250元 电脑桌+电视+维修热水器:290元 到此为止,新家的东西基本上算 ...
Global site tag (gtag.js) - Google Analytics