01 2012 档案

摘要:无废话Erlang无废话ErlangDecember 13th, 2008 :: jackyzGoto commentsLeave a comment这是发表在《程序员》杂志第9期上的一篇简化版Erlang介绍文章。有人提起,于是就转发到这里来了。Erlang 是程序界的幽灵船,它凭空出现,没人知道它从哪儿来,是怎么回事,也无人知晓它来做什么,要往何处去。——江湖传言相信对很多人来说,上面的说法颇为传神的捕捉到了围绕在 Erlang 周围的神秘气息。我们越来越多的见到这个名词,或者道听途说有关它的种种神奇。但每次试图一探究竟,总会在面对它那“怪异”的代码时感到气馁,而那些“不合情理”种种限制, 阅读全文
posted @ 2012-01-18 14:20 Lunaa 阅读(170) 评论(0) 推荐(0) 编辑
摘要:« 从山上向下望望非主流erlang的regexp模块 »erlang的string模块string翻译:gashero目录1导出函数1.1len(String) -> Length1.2equal(String1,String2) -> bool()1.3concat(String1,String2) -> String31.4chr(String,Character) -> Index1.5str(String,SubString) -> Index1.6span(String,Chars) -> Length1.7substr(St 阅读全文
posted @ 2012-01-16 14:41 Lunaa 阅读(243) 评论(0) 推荐(0) 编辑
摘要:比memcpy更快的内存拷贝2009-07-09 22:14偶然间看到一个叫xmemcpy的工具,用做内存拷贝。号称在拷贝120字节以内时,比glibc提供的memcpy快10倍,并且有实验数据。这让人感觉很诧异。一直以来都觉得memcpy是很高效的。相比于strcpy等函数的逐字节拷贝,memcpy是按照机器字长逐字进行拷贝的,一个字等于4(32位机)或8(64位机)个字节。CPU存取一个字节和存取一个字一样,都是在一条指令、一个内存周期内完成的。显然,按字拷贝效率更高。那么,这个xmemcpy是靠什么来实现比memcpy“快10倍”的呢?看了一下xmemcpy的实现,原来它速度快的根据是: 阅读全文
posted @ 2012-01-15 13:03 Lunaa 阅读(291) 评论(0) 推荐(0) 编辑
摘要:1.在erlang shell中编译运行1 -module(hello).2 -export([start/0]).3 4 start() ->5 io:format("Hello world~n").view sourceprint?erl Erlang R14B03 (erts-5.8.4) [source] [smp:2:2] [rq:2] [async-threads:0] [hipe] [kernel-poll:false]Eshell V5.8.4 (abort with ^G) 1> c(hello). {ok,hello} 2> hello 阅读全文
posted @ 2012-01-15 12:58 Lunaa 阅读(1296) 评论(0) 推荐(0) 编辑
摘要:http://www.cnblogs.com/me-sa/archive/2011/07/03/erlang0001.html一款多人在线游戏,一个玩家走一步都要把消息广播给同屏的玩家,玩家聊天,战斗更涉及到大量的消息广播;如何应对?再有一个及其普通却不太容易搞定的的需求:在线玩家列表怎么实现?是啊,你是不是在想用哪种锁合适?提到的两个场景的关键词是:高并发,大量广播;可能你还会想到"锁".我尝试过在.net下使用完成端口+TPL库+protocol buffer来完成上面的功能,但是并没有通过测试的检验,测试模型是聊天.在收发消息方面,客户端和服务器一对一的收发压力不大, 阅读全文
posted @ 2012-01-15 12:57 Lunaa 阅读(326) 评论(0) 推荐(0) 编辑
摘要:Erlang一个非常值得称道的特性就是代码热替换(Hot Code Sawpping),我们在调用函数时,通过M:F(A)的方式,可以保证总是加载最新的代码。 在《Erlang程序设计》中E4部分,通过一个小例子展示了代码的动态加载,两个module代码如下: a.erl Erlang代码 -module(a). -compile(export_all). -import(b,[x/0]). start(Tag)-> spawn(fun()->loop(Tag)end). loop(Tag)-> timer:sleep(3000), Val=x(), io:format(&q 阅读全文
posted @ 2012-01-15 12:30 Lunaa 阅读(291) 评论(0) 推荐(0) 编辑
摘要:linux下erlang之OTP编译安装March 27th, 2010 in Erlang, linux | leave a response在安装otp时遇到了一点问题,整体的安装过程比较简单。view sourceprint?wget http://erlang.org/download/otp_src_R13B04.tar.gztar xzf otp_src_R13B04.tar.gzcd otp_src_R13B04 ./configure --prefix=/home/erlangconfigure之后发现有以下提示信息:****************************** 阅读全文
posted @ 2012-01-14 22:47 Lunaa 阅读(1192) 评论(0) 推荐(0) 编辑
摘要:NOSQL 着互联网web2.0网站的兴起,非关系型的数据库现在成了一个极其热门的新领域,非关系数据库产品的发展非常迅速。而传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,例如:1、High performance - 对数据库高并发读写的需求 web2.0网站要根据用户个性化信息来实时生成动态页面和提供动态信息,所以基本上无法使用动态页面静态化技术,因此数据库并发负载非常高,往往要达到每秒上万次读写请求。关系数据库应付上万次SQL查询还勉强顶得住,但是应付上万次SQL写数据请求,硬盘IO就已经无法承 阅读全文
posted @ 2012-01-14 21:09 Lunaa 阅读(130) 评论(0) 推荐(0) 编辑
摘要:通过分区(Partition)提升MySQL性能作者:foxcai 来源:foxcai 的 Blog (2006-05-08 14:30:34)通过分区(Partition)提升MySQL性能——MySQL5.1新特性翻译系列几年前,俺写过一篇题为“The Foundation of Excellent Performance”的文章(现在仍然可以在http://www.tdan.com/i016fe03.htm看到),俺对SQL语句是影响数据库驱动系统性能的第一要素的观点有点质疑。其实在那时我在文章中就坚信数据库的物理设计在对高级数据库的性能影响上远比其他因素重要。同时俺还给大家看了Orac 阅读全文
posted @ 2012-01-14 20:52 Lunaa 阅读(195) 评论(0) 推荐(0) 编辑
摘要:outlook 0x80040201 错误2007-05-27 11:22:45|分类:默认分类 |标签:|字号大中小订阅OUTLOOK 0X80040201错误Win2003的microsoft outlook 用exchange 顺利,但POP3/SMTP邮件服务器对外部邮件地址能收不能发可以在服务器内部的用户之间首发,也可以收到外部发来的email,但不能向外发email.向外发的时候出现Outlook报告未知错误 0x80040201真正的病症在这里:I tried all suggestions, but it didn't work for me. What I found 阅读全文
posted @ 2012-01-12 11:32 Lunaa 阅读(1033) 评论(0) 推荐(0) 编辑
摘要:八个我最常用的AS3开源类库(转)热34已有 1638 次阅读 2010-06-29 16:36 标签:类库 开源 来源:http://kevincao.com/2009/09/8-as3-lib/GreenSock Tween PlatformGreenSock Tween是我最常用的一个功能强大的Tween类库,详细可以见我之前的介绍。但是要注意这个类库对商业项目并不是免费使用的,可以替代的选择有很多:GTween,Tweener等等。Bulk LoaderBulk Loader解决的是AS3中各种不同类型文件的加载问题,实现了对各种数据类型统一的加载接口,调用非常简便。此外还具有有批量加 阅读全文
posted @ 2012-01-10 23:07 Lunaa 阅读(100) 评论(0) 推荐(0) 编辑
摘要:RLE压缩及优化--图片压缩分类: 开发经验以及优化 2005-03-23 17:55 535人阅读 评论(0)收藏 举报 简单的说RLE压缩就是将一串连续的相同数据转化为特定的格式达到压缩的目的。下面都对byte流压缩。如输入数据LPBTE pByte={1,1,1,1,1,1};压缩的数据为6,1压缩了4个字符。但是在数据流里面不能直接这么替换,而应该使用特殊的控制字符,否则无法解压。比如pByte={6,1,0,1,1,1,1,1,1};这样有两个6,1无法判断是原有的6,1还是{1,1,1,1,1,1}压缩后的代码。所以应该有控制字符。(1)为了达到最大压缩率,可以先扫描源数据流,使用 阅读全文
posted @ 2012-01-09 11:49 Lunaa 阅读(373) 评论(0) 推荐(0) 编辑
摘要:对于Python的GIL和线程安全很多人不是很了解,通过本文,希望能让大家对Python的GIL等内容有所帮助。本文还将就主要谈下笔者对线程安全的一些理解。摘要什么是线程安全? 为什么Python会使用GIL的机制?在多核时代的到来的背景下,基于多线程来充分利用硬件的编程方法也不断发展起来, 但是一旦 牵扯到多线程,就必然会涉及到一个概念,即 线程安全, 本文就主要谈下笔者对线程安全的一些理解.而Python为很多人所抱怨的一点就是GIL,那么Python为什么选择使用GIL, 本文也就这个问题进行一些讨论.Contents摘要 引入 线程安全 GIL 个人的观点 参考资料 本文的rst源码 阅读全文
posted @ 2012-01-09 10:29 Lunaa 阅读(117) 评论(0) 推荐(0) 编辑
摘要:Mac 10.6与Win7 文件共享2009-10-08 16:53:01|分类:信息技术 |标签:win7文件共享mac|字号大中小订阅昨晚弄了半天终于弄好了两台电脑间的文件共享。步骤不难。1.使用Mac,进入Mac的系统设置里面的共享设置,选择文件共享2.进入选项,协议选择smb,加入你准备用来从Win7登陆所需要用户名和密码3.使用Win7,快捷键Win键+R,键入Mac机的地址,如: \\192.168.1.101。注:这里不知道为何,键入NETBIOS查找不到。4.使用刚刚在Mac机创建用来登陆的用户名和密码。注:这里Win7有个默认域的问题,请以以下格式输入用户名\。这样默认域才会 阅读全文
posted @ 2012-01-03 20:16 Lunaa 阅读(135) 评论(0) 推荐(0) 编辑