20:46 2008同城,那些难忘的城事 » 豆瓣blog

同城自2008年初上线,有幸服务了许许多多的豆友,同时也以特殊的视角记录下了这一年中国的起伏,在新年即将到来的日子,同城特意做了这个小小的年度活动盘点专题,与你一同分享2008年那些难忘的城事……

2008年5月12日,汶川发生8.0级地震,同城充分展示了它高效的社会传播价值。来自全国各个城市的支援活动被迅速创建并传播:奔赴震区、献血捐款捐物义演义卖等词语,成了当时各地同城最常见的字样,其中不乏心灵抗震等近千人参加的大型活动。豆瓣把相关信息制作成了汶川@豆瓣专题页面,时至今日浏览,依然能够体会到当时浓浓的同胞情意。

随着灾后重建工作的顺利开展,豆友们的爱心不仅没有丝毫的减弱,反而日益膨大,各种公益活动成为了豆瓣同城最美丽的风景线:这个号召豆友长期捐助贫苦地区活动,在短短的两个月内,就得到了5716名豆友的关注。

2008年8月,第29届奥林匹克运动会在中国举行。虽然大多数豆友无法亲临现场观看比赛,但大家仍以无比的热情创造着“与人乐乐”的奥运快乐:
在圣火传递途径之地豆友积极到场助威(如上海南京广州),
在体育健儿失意的时候纷纷表示鼓励
对外国的运动员慷慨奉献地主之谊
……

除此之外,许多重量级活动也应奥运档出现在了同城,想必已经给豆友留下了不少愉快的夏日回忆吧:
中国记忆5000年文明瑰宝展
拜访瑞士屋
北京国际美术双年展
我的奥运 非常摇滚
……

2008年9月,全球经济危机全面爆发,波及中国。面对愈演愈烈的国际经济局势,豆友以幽默表达着对国际事件的关注,去冰岛买房子几乎一夜之间成了网上最火的话题。与此同时,各地的百元周活动相继展开,豆友的乐观和积极为彼此共度难关增添了信心。

2008年11月19日,同城线上活动上线,之前不断在同城掀起人气高潮的线上活动终于有了独立的展示场所,以下这些曾经十足火热的晒图活动是否留下过你的“图迹”?
小时很可爱,长大很骚瑞
我是大牌——给自己做张海报照
按截图猜电影
你出生那天他拍到了什么?
在我的城市,看你的天空
来晒我的电脑桌面壁纸
……

2008年同城非常高兴地注意到一些“很潮、很豆瓣”的活动组织在茁壮成长,感谢TA们的无穷创造力和无私奉献精神:
北京文化青年必参加的单向街
结伴在夏日夜晚玩光迹涂鸦七〇八〇公社™
百鬼夜行抄MIMZII
我们不是木头人非游戏不生活
……

2008年的同城活动实在是五花八门,虽然在这里难以详细尽述,但相信热爱生活的你已经拥有了不少和活动有关的美好回忆吧。即将到来的2009年,同城将以新面貌为大家带来更精彩的内容,让我们一起来期待新牛YEAR!

BTW, 如果你想看“草根2008年盘点”:请登陆豆瓣的线上活动,通过标签寻找或者搜索(可以试试搜索“2008”),然后就能看到五花八门的年度盘点活动的正在如火如荼地进行——这是豆友们在以最豆瓣的方式向即将成为集体回忆的2008致别。

15:51 Papers: Readings in Distributed Systems » High Scalability - Building bigger, faster, more reliable websites.

Marton Trencseni has collected a wonderful list of different papers on distributed systems. He's organized them into the following sections: The Google Papers, Distributed Filesystems, Non-relational Distributed Databases, The Lamport Papers, and Implementation Issues. Many old favorites on the list and some that are likely new to you. My new favorite is "Frangipani: A Scalable Distributed File System." How can you not love "Frangipani" as a word?

12:11 Anti-RDBMS: A list of distributed key-value stores » High Scalability - Building bigger, faster, more reliable websites.

Richard Jones has put together a very nice list of various key-value stores around the internets. The list includes: Project Voldemort, Ringo, Scalaris, Kai, Dynomite, MemcacheDB, ThruDB, CouchDB, Cassandra, HBase, and Hypertable. Richard also includes some commentary and their basic components (language, fault tolerance, persistence, client protocol, data model, docs, community).

There's an excellent discussion in the comments of Paxos vs Vector Clock techniques for synchronizing writes in the face of network failures.

2009年美国人最想改变的10件事阮一峰的网络日志 » 车东's shared items in Google Reader

11月4日奥巴马当选美国总统。第二天,change.gov就上线了。

change(改变)是奥巴马的竞选口号,gov是美国政府专用的域名后缀。两者合在一起,就表示美国新政府正式向美国人民承诺,一定会做出改变。

(图片说明:小女孩的牌子上写着:改变,请相信!)

change.gov上有一个栏目,叫做“Citizen Briefing Book”(公民意见书)。在这里,任何人都可以向新一届美国政府提交施政建议,就像论坛上发帖子一样。所有建议都公开接受访问者的投票,你可以点击“支持”或者“反对”,还可以留言。最后,支持度最高的10条建议,将直接递交给奥巴马总统。这是web 2.0与政治结合的绝佳案例。

目前,系统中的建议一共有4.4万条,投票次数为140万次,并且还在快速增长中。下面就是根据最新排名,统计出来的2009年美国人最想改变的10件事,以及相应的原文摘要。

====================

10. 要求在线扑克游戏合法化,帮助美国经济复兴:46720票/1711条留言

“在线扑克游戏的参与者,一直担心会受到法律的制裁。请允许美国公司和美国公民,通过这类游戏赚钱,支付税款。否则只能迫使整个行业都搬到海外,既不会令赌博消失,又使得美国政府减少了收入。”

9. 回归宪法的精神:50790票/241条留言

“美国的缔造者,在宪法中规定了人民的权利。请问这些缔造者会怎样看待今天的美国?”

8. 收回科学论教派(Scientology)的税收豁免权:51630票/509条留言

“这个教派接受所谓的‘固定捐赠’,它还向信徒提供收费的服务,完全可以将它看作是营利性的组织,因此应该对它征税。”

7. 将保险公司赶出医疗体系:55920票/359条留言

“我们国家在医疗体系上的支出,是全世界最高的,但是人民的健康依然得不到很好的保障。为什么?原因就是这个体系的主导者,是以盈利为目标的保险公司。”

6. 收回布什总统对高收入者减税的决定:58080票/119条留言

“据说,减税的理由是,企业主变得更富有以后,就会逐渐惠及普通人。这种理由实在太荒谬了。”

5. 永久性关闭虐囚的战犯监狱:62120票/116条留言

“作为一个国家,我们居然公开允许刑讯拷打,而且不是发生在战争期间。允许这种行为,将导致权力的滥用。”

4. 发展子弹头列车和高速铁路:66030票/433条留言

“我们真正需要的,就是连接各大城市的高速铁路,如同日本一样。”

3. 政府不再资助禁欲教育,代之以合适的性教育:66050票/157条留言

“四分之一的美国青少年,是潜在的性病感染者。艾滋病依然没有绝迹。只要我们继续不让我们的孩子了解他们的生理,这种局面就不会发生改变。”

2. 承诺成为世界上最“绿色环保”的国家:71130票/197条留言

“通过政策和立法,使得环保成为美国产业的立足点。绿色化将帮助美国公司重获全球竞争力,拯救我们的汽车工业,让数百万人重回工作岗位,提供清洁安全的运输工具,消除美国对石油的依赖,为美国梦注入新的内涵,恢复美国在全世界的领导地位和他国人民的尊敬。”

1. 放弃管制大麻:93500票/3501条留言

“大麻作为一种药物,被错误地认为是毒品,已经超过了70年。我们不能再禁止有行为能力的个人,选择一种药品的权利。”

——信息来源:Read Write Web

(完)

06:39 南京之行: 《途牛》 确保没有意外 + 可测量 » 车东@博识传播|互动·娱乐·媒体

终于有时间去了趟南京匆匆见了些朋友:南京比较有名的中国制造网途牛旅游网;而此行印象很深就是在途牛旅游网工作室里看到这个2个Slogan:Measurable(可测量)

和No surprise(确保"没有意外发生:不要让意外成为借口);

感觉途牛的敦德隽辰福炜他们组成的这个团队由Geek风格变得越来越务实了:从原先的旅游社区逐步发展了参团旅游预订服务并提供了全年365天400电话预定。最近春节前这会儿正是旺季,他们目前提供了北京、上海、广州、杭州、南京这5个城市出发的旅游产品。





收藏到:Del.icio.us
04:32 直接行动的时候到了 » 中外对话新鲜出炉

在后京都协议谈判缓慢前行的同时,气候变化问题上的大众动员正获得支持。我们都需要参与其中,并推动政治家们向前迈进,玛莉安•贝德写道。

在人类历史的伟大革命斗争中,直接行动(即强大的民众采取行动致使社会变革)起到了极其重要的作用。非暴力形式的直接行动,催发了社会发展进步所必需的那种建设性紧张。作为变革的催化剂,它开启了谈判之门。

1963年, 马丁·路德·金写下了雄辩的《从伯明翰监狱中发出的信》,为美国的民权斗争奠定了哲学基础。他在信中写道:“我们从事非暴力直接行动,不是制造紧张,纯粹是把业已存在的隐藏的紧张公开化。我们将其公开,让它可以看得见并得到处理。”

如今,全球、地区、国家和地方正在为种种理由(其中很多属于环保方面)进行着不计其数的斗争。有利益斗争就会爆发冲突。在全世界,人们面临着诸多同样的问题:为了增加电力供应,应该建设大型水坝、迁走整座城镇吗?对矿产、木材或牧场的需求,比古老文化的生存或自然环境的保护更重要吗?牺牲田园、空气质量和航道下居民的安宁,建造新的机场或跑道以刺激商业和旅游业的增长,这样做值得吗?应当建设新的燃煤电厂而不顾任何环境后果吗?在原始的荒野地区或未勘探的海域进行钻探活动,比放弃可能有利可图的油气田更可取吗?让鲸鱼、老虎、大象和其他动物脱离自然生活或用于制成各种产品,该不该这样做?

这些问题,以及其他的环境争议(其中最大争议是,如何应对与气候变化有关的不断增加的温室气体排放),应当如何解决?在筹备今年在丹麦哥本哈根召开的联合国气候变化会议(COP15)上(各国政府的目标是在会上就一份后京都协议达成一致意见),英国能源和气候变化大臣埃德·米利班德提出了一个建议。米利班德最近在接受《卫报》采访时表示,有必要发起一场类似2005年“让贫穷成为历史”那样的全球性运动,推动各国政治家们朝着达成有效的新气候协议迈进,尽管存在对全球经济形势的担忧。“让贫穷成为历史”召集了全世界数百万个人和数百个组织,向20057在苏格兰开会的八国集团(G8)领导人施压,要求拨出500亿美元来帮助发展中国家(主要是非洲的发展中国家)消除贫困

在启程参加200812月波兰波兹南联合国气候变化谈判COP14)前夕,米利班德表示:“当你想到所有的历史大运动,从主张妇女参政100多年前争取妇女投票权的运动)到反种族隔离,再到1960年代主张男女平等,所有大的政治运动都有大众动员。从一位政府官员嘴里说出这样的话,也许是件令人奇怪的事,然而我只是认为这是个真正的机会而且有其必要性。”

多年来,无数的组织一直在环境问题上进行坚持不懈的斗争,尤其是气候变化。如今,在关键的哥本哈根会议举行之前,运动的势头越来越大。《京都议定书》对工业化国家设定了减排目标,第一承诺期将在2012年到期。必须达成一个替代协议,即达成一个新的国际框架协议,以解决政府间气候变化专门委员会(IPCC)所要求的严格减排

米利班德表示:“政治变革来自领导层和大众动员,二者缺一不可。”

大众动员”包括一系列的政治行动,包括集会和抗议游行。这是非严格术语“直接行动”的一种形式,包括非暴力反抗以及立法行动。“直接行动”的核心是个人(以及持相同意见者)为了自身而采取行动,而不是让他人(如政治家)为其采取行动——他们通过其自身的努力带来变革。当今世界,有很多动人的事例,人们挺身而出,有时公然与法律对抗。而且,他们的行动通常带有幽默感、有点儿恶作剧以及具有吸引媒体眼球的高招。

在波兹南气候会议召开之前,有11位绿色和平组织成员花了两天时间攀上波兰中部科宁帕特诺燃煤电厂高达150米的烟囱顶端。他们的目的是:彰显这种“肮脏”电厂对地球气候的影响。抗议者还在科宁的一个露天褐煤(低等级褐色煤)矿示威,并在波兰经济部长瓦尔德玛尔·帕夫拉克正在主持一个与气候有关的会议的时候,在举行会议的华沙酒店前倾倒了数吨的煤。他们表示,波兰过度依赖于煤炭。(和德国一样,波兰是欧盟的一个主要煤炭生产国,对煤炭的依赖达到其能源需求的90%以上世界煤炭协会将波兰和南非列为发电对煤炭依赖程度最大的国家。)

在帕特诺抗议的绿色和平全球气候项目主任加文·爱德华兹表示:“我坐在这个大烟囱上两天两夜,看着它在加速气候变化。没有任何东西比煤电对气候的危害更大。”

从烟囱上下来之后,活动人士赶赴波兹南,重启“气候拯救站”,敦促联合国气候谈判的代表们把气候变化“当回事”。(参见中国记者原玮键为“中外对话”采写的抗议报道。)

在英国,有两个与气候有关的重大环保冲突事件闹得沸沸扬扬:反对金斯诺斯Kingsnorth)电厂(如今是英国把守最为严密的电厂)使用石油和煤炭发电,以及抗议在全世界最繁忙的伦敦希思罗机场建设三号跑道和六号航站楼。

在位于英国伦敦东南部肯特郡梅德韦河河口的金斯诺斯,能源公司易昂E.On)数十年来想用英国第一个新型燃煤发电设备取代旧的发电设备,生产“更清洁的”煤电。绿色和平活动人士本·斯图尔特指出:“新金斯诺斯电厂的排放量相当于30个污染最小国家的排放总和,将破坏我们劝说中国和印度停止建造煤电厂的任何机会。”二氧化碳(CO2)是地球大气中含量最多的温室气体之一。

20088月,至少有1,000位气候变化活动人士举行了“气候行动营”活动,在发电厂抗议了一个礼拜。一些人与警方发生冲突,试图中断发电,但是未能进入金斯诺斯。一位活动人士(只知道其名字叫马德琳)后来表示:“如果政府批准建设新的电厂,我们将回来予以阻止。这可不是一次象征性的抗议。”(也就是说,最具标志性的环保象征之一,即绿色和平的“彩虹勇士号”,于10月底在金斯诺斯停靠,为反对建设燃煤电厂的予以声援,跟随彩虹勇士号的还有一个由独木舟和充气船组成的小型船队

负责能源政策的米利班德有望在今年年初对电厂的兴建作出决定

金斯诺斯发生的另一次抗议事件是在200710月,结果是六名绿色和平活动人士遭到起诉(其中就有斯图尔特),被指控在该电厂造成刑事损害。活动人士承认,他们曾试图关闭电站,并在200高的烟囱上涂上“戈登”字样(他们原本想涂上“戈登,废了它”,向首相戈登·布朗发出讯息)。不过,他们辩称,他们的行动是合法的,因为他们在努力防止气候变化,而气候变化会在全球导致更大的财产损失。

检察官约翰·普莱斯声称,抗议者的行动是非法的,他说:“你们可以合法抗议,但是得画出一条界线。当被告导致烟囱受损时,他们便越界了。”

20089月,围绕着“合法理由”的辩论,经过八天的审判,陪审团宣判抗议者无罪。人们认为,这次罕见的成功辩护,以及判决带给政府的尴尬, 很可能促发进一步的直接行动,目标是造成大量温室气体排放的公司和行业。

埃米莉·霍尔是六位被告中的唯一女性,她说:“在被告席上的不只是我们,还有燃煤发电……到了首相介入并为英国开创一个清洁能源未来的时候了。”斯图尔特称,他们的无罪判决“代表英国普通民众的陪审员向政府建设新燃煤电厂的规划发出了有力的挑战,他们在听完证据之后,支持为了保护气候而采取直接行动的权利。”

马丁·戴是英国的一名环境法律师,他在绿色和平判决之后接受《卫报》采访时表示,他看到了一种模式正在出现。“公众越来越多地通过法庭表达意见,”他说,“这些案例是对公众情绪的良好引导,政治家们应该予以密切关注。它表明,社会非常关注环境所发生的一切,政府和企业宣称在负责地行事是可疑的。”

他接着说道:“我们着眼于一个比过去更加与环境协调的社会。政治家们和公司尚不了解如今大多数人都懂得这些问题。人们觉得,政府和主管部门未能引起足够的注意,法庭在恢复平衡。”

11月底,一位大胆的活动人士只身一人设法攀越金斯诺斯电厂的防护栏,并使一台正在满负荷运转的500兆瓦涡轮机停机。来自该电厂的所有供电中断了四个小时。肇事者未被确认或者逮捕。

《卫报》报道称,易昂发言人指责该行动高度危险,“把自己拴在设备上的另类抗议者,视发电站为冒险游乐场……我们对于公众抗议没有意见,但这次的做法是鲁莽的。无论是谁,都不应越过界线,发电站乃危险之地。”

上周政府通过了该计划的两天后,数百名抗议者117日来到飞机场。示威者发誓要“赢得政治战争”,而他们的行动必定是未来发生的很多抗议行动的开端。如果获得批准,希思罗机场扩建计划将使已是世界最繁忙机场的航班数量增加近40%——从当前的每年480,000架次增加到600,000架次以上。

支持扩建,它们在一份联合声明中声称,希思罗机场“对商业至关重要”,并接着说:“它提供了使我们的公司在全球获得成功的直接联系,随着印度和中国的经济增长而变得愈发重要。“支持扩建计划的还有首相布朗、建筑业,以及一些工会、工程师和航空专家。

然而,专家们表示,飞机的排放是英国增长最快的二氧化碳源,最终可能占英国几乎全部的允许碳排放。反对建设三号跑道的人指出,扩建与抗击气候变化背道而驰,将完全破坏英国到2050年减少温室气体排放80%的承诺。

跑道支持者声称,航空业的技术进步(包括更轻的新型材料和新的航空器及引擎设计)意味着燃料用量可以减少,排放能够得到控制,效率会提高。因此,他们说,环境将得以拯救,英国企业将保持竞争力,在航班目的地数量上,希思罗机场将能够匹敌(或超过)阿姆斯特丹、巴黎和法兰克福机场。

有关英国其他机场的类似争议,尽管规模较小,亦不绝于耳。处于反航空运动第一线的“愚蠢号飞机”是一个富有想象力的直接行动组织,该组织认为空中旅行是对地球气候唯一的最大威胁。“愚蠢号飞机”寻求通过结束低成本、短程航班、提高航空燃油税和停止机场扩张,把航空业“击落在地”

在去年12月,该组织使得伦敦东北部的斯坦斯特德机场交通陷入停顿,抗议者冲进机场,表达反对在英国第三繁忙机场建设二号跑道。在过去的几年里,“愚蠢号飞机”的支持者们参加了希思罗机场外的一个“气候行动营”活动;在该机场新建的五号航站楼举行抗议;在伦敦的第二个机场(格域机场)举行反对短程航班的示威提出“购买”该机场价值几十年的碳信用,并将其变为蝾螈保护区;在国会大厦屋顶抗议,并中断了曼彻斯特东米德兰机场的运营。

由于其他环保组织和著名支持者的声援,以及新的组织(包括在瑞典的一个组织)采取类似的直接行动策略,该组织的影响力在不断扩大。其他的呼声谴责抗议者的“噱头”并称他们是“自私号飞机”,因为他们给旅行者造成了不便。分析人士也担心,这种破坏性策略会蔓延,机场的注目程度和脆弱性使其成为做宣传的有效地点。

斯坦斯特德的抗议事件发生之后,记者兼伦理生活问题作者利奥·希克曼在《卫报》撰文称:“非暴力直接行动与大众意见发生摩擦,在利己、冷漠和日常杂事中获得注意。它脱胎于正常民主程序失灵、存在缺陷、或受到既得利益腐蚀下的绝望和挫折,尽管当前的途径显然是危险的或不正当的。”

说点发生在英国的轻松而正经的事情。穿着礼服打着领结的活动人士在石油巨头英国石油公司伦敦总部被赶了出来,他们试图向该公司颁发绿色和平的首个“绿宝石画笔”奖——因其“超出职责范围进行漂绿”。绿色和平称,计划每年把这个“奖”颁给那些在“误导性”广告后面隐瞒有害环境影响的公司。该环保组织表示,英国石油近年来标榜自己“超越石油”,却将200亿美元(相当于其2008年投资预算的93%)投入到油气开采。

也是在12月,绿色和平活动人士出现在日本政府和全球大使馆办公室,要求官员们“把我也抓起来”。他们宣称自己在两位绿色和平行动人员的行动中有同谋关系,属于“共同被告”。两位绿色和平成员试图结束日本在南冰洋以“科学考察”为名的年度捕鲸,于20086月遭到拘捕。从那以后,全球近5万人签署了一份请愿书,要求因“保护鲸鱼罪”而接受拘捕。两位受到指控的行动人员铃木彻和佐藤润一曾“截获”一名船员的鲸鱼肉箱子,随后揭露日本纳税人资助的捕鲸计划出现私吞鲸鱼肉的现象,之后被拘捕。他们今年年初将面临审判,并可能面临10年刑期。

12月,在南极洲附近的冰冷海域中,美国环保者组织“海洋守护者协会”再次试图阻止日本人捕鲸,在危险的情况下追逐捕鲸船队,以便向一艘船投掷“臭弹”。

在四十年前的美国,正当民主党代表开会挑选1968年总统候选人的时候,警察与芝加哥街头的越战抗议者发生了激烈冲突,一个动人的口号(而且是有先见之明的警告)诞生了:“整个世界都在看。”打那以后,当重大事件发生时——革命、反战或反压制游行、全球化冲突、种族或宗教暴力,世界各地的人喊着芝加哥示威者的口号:“整个世界都在看。”

在12月的波兰,绿色和平的加文·爱德华兹在解释煤炭抗议者将其“气候拯救站”从科宁搬到波兹南的时候,想起了这一点:“政治家们……需要把防止危险的气候变化当回事……我们搬迁我们的营地……让他们知道世界在看着

随着气候变化的影响,随着全球即时沟通时代环境行动主义的增加,随着哥本哈根气候会议的临近,从前的抗议口号已成为确确实实的事实。气候变化不是一个地方的争端,它将影响我们所有人。整个世界都看,我们应该怎么办?

你对直接行动有何看法?应该有更多的人积极投入到环保示威游行中去吗?因为一个良好的理由而违法说得过去吗?那么暴力呢?在为了减缓气候变化而需要采取激进行动的问题上,社会总体上走在了政府和企业前面吗?

 

你的观点是什么?请在论坛中畅所欲言!

 

玛莉安·贝德:“中外对话”副主编

 

 首页图片Will Rose / GREENPEACE

03:48 按照AdSense要求投放广告代码 » Inside AdSense-中文


自从我们发布了服务器端广告设置这个功能以后,大家修改代码就更加方便了。Google AdSense代码投放的最好办法是直接通过帐户获取代码并嵌入到要投放的网站页面源代码中,但是我们发现有一些网站调整了AdSense广告代码的展示。比如在一部分文学网站和一些内容管理系统中有类似于此的AdSense代码投放方式:

<div id="span_ad_01" style="display:none">
<script type="text/javascript"><!--
google_ad_client = "pub-1234512345123451";
google_ad_slot = "1234567890";
google_ad_width = 300;
google_ad_height = 250;
google_color_border = "E32BF1";
google_color_bg = "689BF1";
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</div>

<div id=”span_ad_04”></div>
<script>
span_ad_04.innerHTML=span_ad_01.innerHTML;
span_ad_01.innerHTML="";
</script>

该种广告投放方式会导致一个广告位对系统产生多次广告查询,浏览器会多次处理这些请求,这样会影响用户体验。为了避免出现该问题,我们建议您按照以下方式修改广告代码:
1. 直接粘贴您的AdSense代码到页面源代码中
2. 通过iframe调用广告代码,但是一个页面只能嵌入一个iframe单元

AdSense产品部门正在对广告后台进行一些调整以提升广告投放的准确性,如果您在使用类似上述原理的方式投放Google AdSense广告,那么接下来的这些调整可能会影响到您网站的广告投放。我们建议您尽快按照上述符合要求的方式投放AdSense广告,以避免接下来的调整影响到您网站的AdSense广告投放。

我们注意到大家采用该方式以解决页面内容下载过慢的问题,但是从我们目前的数据和发布商反馈来看,AdSense广告在本地区的投放是不会影响页面内容下载的。

我们会通过系统邮件通知一部分以该方式投放代码的发布商,也希望大家相互转告,尽快实现代码的更换,以避免接下来的产品调整影响您网站的广告展示。如果您对此还有疑问,也欢迎通过支持链接和我们联系。
01:33 Profiling MySQL stored routines » MySQL Performance Blog

These days I'm working with a customer who has an application based entirely on stored routines on MySQL side. Even though I haven't worked much with stored procedures, I though it's going to be a piece of cake. In the end - it was, but there's a catch.

My initial idea was - I'll just analyze queries in the slow query log generated by our mysql build running with long_query_time=0, get the slowest ones and work on them. It wasn't really all the way I expected..

For a showcase I have created a function "whatstheweatherlike". Let's call it and see what shows up in the slow query log:

SQL:
  1. mysql> SELECT whatstheweatherlike(5);
  2. +----------------------------------------------------------+
  3. | whatstheweatherlike(5)                                   |
  4. +----------------------------------------------------------+
  5. | Its 5°C, time IS 02:28:05, feels [LIKE] almost summer!   |
  6. +----------------------------------------------------------+
  7. 1 row IN SET (0.00 sec)
  8.  
  9. host # tail /var/log/mysql/mysql-slow.log
  10. # Time: 090115  2:25:28
  11. # User@Host: me[me] @ localhost []
  12. # Thread_id: 3432  Schema: test
  13. # Query_time: 0.000695  Lock_time: 0.000284  Rows_sent: 1  Rows_examined: 0  Rows_affected: 0  Rows_read: 1
  14. # QC_Hit: No  Full_scan: No  Full_join: No  Tmp_table: No  Tmp_table_on_disk: No
  15. # Filesort: No  Filesort_on_disk: No  Merge_passes: 0
  16. # No InnoDB statistics available for this query
  17. SELECT whatstheweatherlike(5);

Not overly useful for query optimization, is it? Well, I can still aggregate the slow query log with mk-log-parser and find routines that MySQL spends most of the time on, but I don't want to go over the complicated logic of stored procedure just to figure out what queries are being executed. This is where Jeremy's SHOW PROFILE patch - which is included in all Community tree based Percona MySQL builds since it is part of MySQL community version ever since 5.0.37 (note - not all Percona builds are done on Community tree) - comes into play. Let me show you how this works:

SQL:
  1. mysql> SET profiling=1;
  2. Query OK, 0 rows affected (0.00 sec)
  3.  
  4. mysql> SELECT whatstheweatherlike(3);
  5. +-----------------------------------------------------------+
  6. | whatstheweatherlike(3)                                    |
  7. +-----------------------------------------------------------+
  8. | Its 3°C, time IS 02:43:25, feels [LIKE] snow IS melting   |
  9. +-----------------------------------------------------------+
  10. 1 row IN SET (0.00 sec)
  11.  
  12. mysql> SHOW profiles;
  13. +----------+------------+-------------------------------------------------------------+
  14. | Query_ID | Duration   | Query                                                       |
  15. +----------+------------+-------------------------------------------------------------+
  16. |        1 | 0.00005100 | SELECT CURTIME() INTO time                                  |
  17. |        2 | 0.00014100 | SELECT feeling INTO feels FROM weather WHERE temp = in_temp |
  18. +----------+------------+-------------------------------------------------------------+
  19. 2 rows IN SET (0.00 sec)

So now not only do we get to see what queres were executed, how much time they spent executing but we can also get a profile for each of the queries individually. I think this is pretty cool and it helped me a lot. Sure, you may still need to check routine and track the logic so having constants that were used rather than variables would be even more useful. Nevertheless I think this is a great way to find what's happening under the scenes so you could start digging deeper.

On the other hand, this way of manual profiling you can't really see real time stats, for example if it was slow because of locks, in the logs you may not see it. I will ask my colleagues to check if it would be hard to implement configurable variable for switching between routine and query logging, so maybe one day we'll be able to have both ways of looking at it.


Entry posted by Aurimas Mikalauskas | No comment

Add to: delicious | digg | reddit | netscape | Google Bookmarks


^==Back Home: www.chedong.com

^==Back Digest Home: www.chedong.com/digest/

<== 2009-01-18
  一月 2009  
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
==> 2009-01-20