2008——独立博客元年!

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

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

 

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

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

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

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

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

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

        嘿,你独立博客了吗?

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  应用程序变得简单的框架。 
 

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看看能学到不少东西,同样也能淘到不少好软件啊。

 

免费发放百度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 数据库内存缓存系统”发布[原创]