2008年03月31日

在线DIY属于你自己的 Linux Live CD

NimbleX 是一种基于 Slackware 的小型 Linux 发行版。该发行版的开发者推出了一项颇有创意的服务,即让你通过 Web 在线工具对 NimbleX 的 Live CD 进行定制。你不需要具有任何定制 OS 的知识,只要跟随向导点击鼠标就好。相信从中你能感受到 DIY 的无穷乐趣。当然,我们也期待更多的 Linux 发行版推出类似的定制化服务。

使用 NimbleX 的定制化服务,你可以选择自己喜欢的软件、游戏、壁纸、启动音乐,你也可以设置系统的登录帐号、密码、以及默认语言(有中文支持)。定制完成后,该服务将生成 ISO 映像文件供你下载,烧录后即可开始使用。

DIY地址:http://custom.nimblex.net/

快去试试,制作一个自己的Linux Live CD

  • » 阅读全文...
  • 2008——独立博客元年!

    刚刚看到左手更新了这篇文章,而且阿瑄还设计了独立博客的一张图。我就立刻疯疯癫癫的写了这篇文章,标题是《2008,独立博客元年!》。

         这一刻A瑄灵魂附体,A瑄这么说:“我设计的这个‘独立博客’的logo…[separator]象征着我们每个人收获的是一颗年年成长并且硕果累累,有着无穷生命力的苹果树,而不是表面光鲜却终将腐烂的苹果。希望我们继续在这片土地上辛勤耕耘,收获生活的领悟和财富。”

     

          左手说了这句话,让我顿然失色,无法再去评论,任何语言都空洞了。他说:

          上帝给了牛顿一个苹果,上帝给了乔布斯一个苹果

          但是,上帝竟然给了我们独立博客们好大的一棵苹果树!感谢上帝!

          目前在豆瓣也建立了独立博客集中营,在群组的说明上,我们看到:从贪婪蛮横的BLOG服务商(BSP)那里逃脱,乘五月花号,为了自由前往新大陆,架设自己的BLOG。自主建博永远都那么吸引人,是因为它充满了网络的自由精神,和对自己网站的绝对自主权,那种感觉很棒,甚至超过了当爹。如同诗里说的那样:

               我是我命运的船长
               我是我灵魂的舵手 

                                                                                 ——以上内容摘自和菜头的博客

            嘿,你独立博客了吗?

  • » 阅读全文...
  • 2008年03月30日

    LightTPD是什么?魅力在哪?让知名网站放弃用Apache?

    一、Lighttpd简介

    据Netcraft做的数据调查显示,今年一月份全球使用LightTPD的网址为170,000,二月份这个数字达到了7000,000,在短短的一个 月内惊人地增长了400%!在这些网址中,包括YouTub
    e、Wikipedia和Meebo等。而且目前为止,使用LightTPD的网址仍在以极高 的比例增长,尤其是欧美等地的网址,许多新兴网站也纷纷选用LightTPD,而且LightTPD在Ruby on Rails社区中尤其受欢迎。

            以Meebo为例。它是一个内置在浏览器内的信息工具,它支持多种信息工具,如Yahoo! Messenger, Windows Live Messenger, ICQ, AIM和Jabber等,每天Meebo要处理至少七千万条信息。这样的一个网站是用的便是LightTPD。

            值得一提的是,Meebo使用的却是Linux服务器,然而它抛弃Apache以及LAMP(Linux+ Apache+ Mysql+ Perl/PHP/Python)的网络构建方式,选择了LightTPD。
                        下图为使用Lighttp的网址增长率

            很多人也许会问具有如此“魔力”的LightTPD到底是什么?简单说一下:LightTPD是一个轻量级的Web 服务器,支持FastCGI, CGI, Auth, 输出压缩(output compress), URL重写, Alias等重要功能。它具有非常低的内存开销,cpu占用率低,效能好,以及丰富的模块等特点。其静态文件的响应能力远高于Apache,可谓Web服 务器的后期之秀。

            许多技术专家认为,在Web 服务器中LightTPD比Apache更小更轻量,却拥有比后者更高的性能。虽然LightTPD在Web服务器方面只占很小的市场份额,“但它正极速增长,日后必将是Web服务器领域的有力竞争者。”

    二、下面是部署应用时LightTPD在前端相对其他web server的比较:

    前端目前已知的可以选择apache, LightTPD, litespeed, nginx, haproxy
    1、apache2.2
    apache是全球市场占有率最高的web server,超过全球互联网网站50%的网站都用apache。apache2.2 + mod_proxy_balancer是一个非常流行,非常稳定的方案。

    使用apache2.2唯一的问题就是apache的性能和后面那些轻量级web server相比,差太远了。一方面在处理静态请求方面apache要比LightTPD慢3-5倍,内存消耗和CPU消耗也高出一个数量级,另一方面 mod_proxy_balancer的分发性能也不高,比haproxy差很远。

    2、LightTPD
    LightTPD是一个轻量级高性能web server,一个在MySQL Inc工作的德国人写的。性能很好,内存和CPU资源消耗很低,支持绝大多数apache的功能,是apache的绝好替代者。目前LightTPD已经 上升到全球互联网第四大web server,市场占有率仅此于apache,IIS和Sun。

    LightTPD唯一的问题是proxy功能不完善,因此不适合搭配mongrel来使用。LightTPD下一个版本1.5.0的proxy模块重写过了,将会解决这个问题。

    3、litespeed
    和LightTPD差不多,商业产品,收费的。比LightTPD来说,多一个web管理界面,不用写配置文件了。litespeed专门为单机运行的 RoR开发了一个lsapi协议,号称性能最好,比httpd和fcgi都要好。他的proxy功能比LightTPD完善。

    litespeed的缺点我却认为恰恰是这个lsapi。因为lsapi不是web server启动的时候启动固定数目的ruby进程,而是根据请求繁忙程度,动态创建和销毁ruby进程,貌似节省资源,实则和apache2.2进程模 型一样,留下很大的黑客攻击漏洞。只要黑客瞬时发起大量动态请求,就会让服务器忙于创建ruby进程而导致CPU资源耗尽,失去响应。

    当然,litespeed也支持httpd和fcgi,这个和LightTPD用法一样的,到没有这种问题。

    4、nginx
    一个俄国人开发的轻量级高性能web server,特点是做proxy性能很好,因此被推荐取代apache2.2的mod_proxy_balancer,来和mongrel cluster搭配。其他方面和LightTPD到差不多。

    要说缺点,可能就是发展的时间比较短,至今没有正式版本,还是beta版。没有经过足够网站的验证。

    5、haproxy
    就是一个纯粹的高性能proxy,不处理静态资源的,所有请求统统分发到后端。

    三、如何选择:

    JavaEye为什么用LightTPD + fcgi呢?原因如下:

    1) LightTPD发展了好几年了,市场占有率也相当高,是一个经过实践检验的server,它的文档也很全;而nginx还没有经过足够的市场检验,文档也很缺乏
    2) JavaEye的ruby进程和web server在一台机器上面跑,通过unix socket使用fcgi协议通讯可以避免tcp的网络开销,其通讯速度比使用tcp socket使用http协议通讯要快一些。

    什么场合使用haproxy?

    大规模部署,例如你的RoR应用到十几台服务器上面去,你用haproxy会更好,可以方便的添加删除应用服务器节点,proxy性能更好。

    这些也是我为什么在LAMPR中加入LightTPD的原因。

  • » 阅读全文...
  • LAMPR可能在近段时间发布

     LAMPR的意义分别是:   
        * L = LightTPD
        * A = Apache
        * M = MySQL / Memcached
        * P = Perl / PHP / Python
        * R = Ruby
    也就是用这些构建一个绿色的Perl / PHP / Python / Ruby运行平台,届时也将启用http://www.lampr.cn 域名,同时也正在申请SourceForge.net的项目。

    1、为什么要使用LightTPD?
    Apache不可以吗?
    在支持纯静态的对象时,比如图片,文件等 ,
    LightTPD速度更快,更理想
    至于它和Apache的比较,很多文档,大家可以google一下

    2、为什么要使用Memcached?
    Memcached 是高效、快速的分布式内存对象缓存系统,主要用于加速 WEB 动态应用程序。

    3、为什么要使用ROR?
     Ruby on Rails  是一个可以使你开发,部署,维护  web  应用程序变得简单的框架。 
     

  • » 阅读全文...
  • 2008年03月28日

    EchoVNC安全的内网电脑远程管理软件

    TeamViewer 很好用,但是甲说:『这东西是透过一个中间的服务器来链接的,那他的安全性是不是非常的低呢? 』,所以大家都不敢用。

      

    那就来用EchoVNC吧,EchoVNC其实就是UltraVNCNAT-to-NAT的加强版,只是他都帮你整合好了。

    你有两个方式可以使用EchoVNC的NAT-to-NAT功能,一个是用Echogent这家公司的NAT  helper service,一个是你自己架一个你自己的NAT helper server,他称为EchoServer  ,目前有Windows与Linux版。

    所以你也不用怕中间服务器來获取你的资料了。  更重要的是,這是Open  Source,覺得不安全,你就自己改。更重要的是,这是Open Source,觉得不安全,你就自己改。

     PS.当然EchoVNC也能当成一般VNC使用。

    大家多上SourceForge.net看看能学到不少东西,同样也能淘到不少好软件啊。

     

  • » 阅读全文...
  • 2008年03月27日

    免费发放百度Hi邀请函 — 一起Hi



    如果想加入百度Hi就在下面留下你的E-Mail地址,我会在第一时间给你发邀请函。
      以下是百度Hi的几点功能特色:

      1、百度Hi的主界面及对话框设计的相当简洁,颜色搭配也很清新,没有多余按钮、没有弹出广告、没有……,而且有多套精美皮肤可选。据了解,百度方面也会提供专门的皮肤下载页。
    2、百度Hi使用的是passport式ID,而非QQ那种号码式,直接用百度ID就可以登录。也可以选择关联邮箱,用百度帐户登录后,能立即与空间好友联系,看到其最新更新。
    3、百度Hi最多支持1000个好友,这个数字非常大,应该没人再喊"好友加满了"吧。
    4、亲身体验了一下百度Hi的视频和语音聊天功能,体验效果相当满意:画面非常流畅,而且音质感觉也不错。
    5、可以建立群组、可以多人聊天、可以传送大文件,并且还支持"密友排行"。
    6、可以和贴吧、知道、空间的好友进行联络。
    7、百度Hi面板结合了百度搜索,支持网页搜索、图片搜索、MP3搜索等,不用浏览器即可在面板上的搜索框使用百度搜索功能,非常方便。
    8、百度Hi还具备了强大的"找朋友"功能,与百度庞大的社区用户相联接,网民不仅可以看到兴趣相投的朋友,如果对方开通空间,还能更直观地了解和熟悉对方。

      关于百度Hi的更多详细情况见百度百科上的介绍

    如果想加入百度Hi就在下面留下你的E-Mail地址,我会在第一时间给你发邀请函。
    请点击此链接下载百度Hi体验版安装文件:
    http://im.baidu.com/download/BaiduHi_1.0_Beta1.exe

     

  • » 阅读全文...
  • memcachedb应用指南二:编译以及安装  

     memcachedbmemcache一样,网络socket数据处理依赖于libevent,所以,在安装之前需要下载三个安装包,即libeventBerkeley Db以及memcachedb

    Libevent 下载页面:http://monkey.org/~provos/libevent/ ,下载最新稳定版本就行。

    Berkeley Db下载页面:http://www.oracle.com/technology/software/products/berkeley-db/index.html 需要安装4.6版本

    memcachedb下载页面:http://code.google.com/p/memcachedb/  下载最新版本 0.1.0版本

    按照顺序安装,Libevent和Berkeley Db按照常规安装即可,这里以Linux 环境为标准。

    [======Libevent=====]

    tar -zxvf libevent-1.3e.tar.gz

    cd libevent-1.3e

    ./configure

    make && make install

    [======Berkeley Db=====]

     tar -zxvf db-4.6.19.tar.gz

    #需要进入特定操作系统编译环境,更常规软件的编译有些区别

    cd db-4.6.19/build_unix/

    #然后才能够开始编译

      ../dist/configure

    make && make install

    #如果没有指定特殊安装路径,编译完成,需要将Berkeley Db运行库的路径添加到系统配置里面

    echo "/usr/local/BerkeleyDB.4.6/lib/" >> /etc/ld.so.conf

    #重载系统Ld运行库

    ldconfig

    [======Memcachedb=====]

    tar -zxvf memcachedb-0.1.0.tar.gz

    cd memcachedb-0.1.0

    #如果您要存储的内容的键值的长度和单笔内容的长度有变化,您需要更改一个文件 memcachedb.h

    vim memcachedb.h

    //////////////////////////////////////////////////////////// 

    #define END_LEN 32               ----> 这是是 Key+Value 的最大长度
    #define END_LEN_STR "31"   ---> 这是是 key 的最大长度

     /////////////////////////////////////////////////////////

     #默认key键值只预留了31个字节的长度,单笔数据最长是32个字节数。

    #例如您如果需要用这个玩艺来存储文本内容数据,假设您的键值是一个32个字节的md5,单笔数据允许最长10K,那您可以设定

    //////////////////////////////////////////////////////////// 

    #define END_LEN 102400               ----> 这是是 Key+Value 的最大长度
    #define END_LEN_STR "32"   ---> 这是是key的最大长度

     /////////////////////////////////////////////////////////

    #修改完之后,直接make就行

    make

    #编译完之后,将生成可执行memcachedb拷贝到 /usr/sbin/

    cp -f memcachedb  /usr/sbin/

     #启动 memcachedb

    #第一种,读写合并模式,即不做辅拷贝,即读又写,不做冗余备份

    memcachedb -p21211 -d -r -u root -H  /data/mdb_11211  -N

    #第二种,读写分离/备份模式

    #主服务器 192.168.0.1 读写监听 11211 ,同步通过31211的端口完成,不占用繁忙的主服务端口

    memcachedb -p21211 -d -r -u root -H  /data/mdb_11211_m -N -R 127.0.0.1:31211 -M

    # 辅服务器 192.168.0.2  只读监听 21212,从192.168.0.1 的 31211端口同步数据,同时再开一个31212端口对外提供数据同步服务

    memcachedb -p21212 -d -r -u root -H  /data/mdb_11211_from_16801_s -O 192.168.0.1:31211 -R 192.168.0.2:31212 -S


    其他相关信息:

    新浪发起的UNIX开源软件项目

    dbcached──“分布式 key-value 数据库内存缓存系统”发布[原创]

  • » 阅读全文...
  • memcachedb应用指南一:为什么选择memcachedb

    为什么要选择memcachedb:没 有什么特殊的原因,我们有最好的理由就是,在做到最大不牺牲数据读、写性能的前提下,我们能够让您原来存储在memcache里的数据不再遭受系统宕机或 者系统掉电而丢失,即使服务器电源爆炸了,只要硬盘还能够正常工作,换到另外一台服务器上,您的数据依然安然无恙地在硬盘上。

    性能的担忧:我们做过小数据测试,小数据(几十个字节)数据的读写,每秒钟并发能够维持在5000+(单块146Scis硬盘,CPU和内存配置几乎可以忽略因为这不是性能瓶颈)。基本上满足所有互联网高效存储的应用。

    应用场合:需 要频繁读写的小数据。例如数字类服务就像点击数,需要频繁写入小数据的例如评论系统,需要记录用户状态的例如在线人数以及在线用户等等。当然,如果您想用 来存储单笔超过10K以上的数据,例如新闻或者文章或者论坛帖子也可以,但是我们没有尝试过,如果您真的用来这样子玩了,可以反馈给我们。

    数据备份&&读写分离:memcachedb支持主辅实时无差异同步,配置主服务和辅服务仅仅需要很短的一条启动命令。当然,您也可以利用这一便利特性来实现读写分离,那样子会让您的系统更加的高效。

    稳定性:memcachedb目前被应用于新浪互动社区多个产品线中,具有钢铁般的品质,Sina出品,品质毋庸置疑。

  • » 阅读全文...
  • 2008年03月26日

    memcachedb预热:准备写一些关于memcachedb的东西了

    这个是在回忆未来的blog上看到的东西,拿给大家看看。

    memcachedb故名思义就是 memcached + bdb,是基于memcached Socket层和berkeley-db存储层结构的实现, 是新浪互动社区技术团队2007年的一项重大的技术成果,现在应用于新浪互动社区多个产品线中,其中包括新浪博客等重头产品。能够实现任意memcache api的调用、数据实时落地以及主辅实时备份。

    项目主页:

    http://code.google.com/p/memcachedb/

    其他相关信息:

    新浪发起的UNIX开源软件项目

    dbcached──“分布式 key-value 数据库内存缓存系统”发布[原创]

     

  • » 阅读全文...
  • 2008年03月25日

    优秀程序员的十个特征

    1、好奇心
    程序员是永远不会接受现成的东西的,他们必须亲自解开内心深处的迷惑和渴望。

    2、清晰的思维技巧
    编程是一件需要严密逻辑和清晰思维的事情,有强大的数学或者科学背景的程序员通常更加成功。

    3、快速的阅读速度和理解能力
    相当大一部分程序员的一天都花在阅读上,阅读设计文档,或者其他人的代码,API,注释等等,有些程序员读的快,能很快理解,并且开始行动,另外一些程序员也许要多花三四倍的时间才能阅读完毕,这些程序员的工作效率肯定不如前者。

    4、注意细节

    注意细节这个特征可能和是好奇心相关的,写程序的人,关注细节,严谨,意味他能够写出高质量,少bug的程序。

    5、快速学习编程以外东西的能力
    ;j+N*^,W3}3f4I6H)Y
    应用程序一般都和日常生活和企业运作相关联,比如编写一个会计软件,可能就需要学习一些简单的会计知识,如果拥有快速学习编程以外东西的能力,必将为你决定雇佣这个程序员加分。

    6、自我学习技巧

    软件行业进化速度很快,为了更好的编程技能,好的程序员必须善于自我学习。

    7、激情
    这个毫无疑问,你必须雇佣一个热爱这个工作的人。程序员很可能一周7天,一天8小时写代码,如果是例行公事的态度的程序员,很难相信他能做好这份工作。

    "z'm:`&e,T"H*_
    8、适应性
    程序员也许经常遇到短期的项目,变换不同的工作环境,即使在客户公司环境工作,也能保持良好的工作状态。

    9、良好的沟通技巧

    沟通技巧,不一定意味着有一口流利的英语,这意味着愿意沟通,愿意了解团队中其他人的想法。

    10、谁是老板?

    这个问题应该有点难以表达,程序员是一个众所周知独立性很强的一个群体,事实上,这也许是他们的一个优点,但是很多时候,即使从技术上,应该这么做,但是从商业和其他角度,管理层不得不选择一个另外一个做法,那么程序员应该尊重经理人的决定,尊重那个做决定也担负责任的人的决定。

  • » 阅读全文...