技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置: 来,瞅一眼最近的热文有木有让您一眼销魂的:
Facebook的实时Hadoop系统
    以前我们也曾经讨论过如何在分布式文件系统的基础上搭建一套实时数据分析系统,当时认为如果有成熟的 GFS 可用的话,这个工作会比较简单。现在读到 Facebook 的这篇文章,才发现当初想法的幼稚。从这篇文章中体验出的工作量来看,文中说这个系统是多年持续工作的结晶是令人信服的。当然,这也意味着想复制一套这样的系统并不是件轻松容易的事。
     我已经使用Python编程有多年了,即使今天我仍然惊奇于这种语言所能让代码表现出的整洁和对DRY编程原则的适用。这些年来的经历让我学到了很多的小技巧和知识,大多数是通过阅读很流行的开源软件,如Django, Flask,Requests中获得的。下面我挑选出的这几个技巧常常会被人们忽略,但它们在日常编程中能真正的给我们带来不少帮助。
    这是我曾经在知乎上对一个问题的回答,最近也有好几个朋友在公号里向我提问,对于做移动产品设计,有没有一些比较值得一读的书来推荐。我把这个问题重新梳理了一下,更新到这里。
    最近几个朋友都在热火朝天的忙着校招,各大网站也更新了自己的招聘页面。这其中,有些公司是真的需要上马新项目,招揽人手做事情。还有一部分,却是在做储备人才的工作。 @kaifang 说过一句: 在互联网行业,三个臭皮匠未必能顶一个诸葛亮。要知道,优秀的人才是可以以一敌百的。这就是互联网巨头为何疯狂挖人的原因,即使暂时不需要你,也不会让你跑到竞争对手那里。 对于目前身处的小公司而言,经费受限,跟风出去校招只是个梦想...
浏览器的工作原理:新式网络浏览器幕后揭秘
浏览器的工作原理:新式网络浏览器幕后揭秘
浏览器的工作原理:新式网络浏览器幕后揭秘
浏览器的工作原理:新式网络浏览器幕后揭秘
    Web浏览器恐怕是用户最多的软件了。本文将介绍浏览器的工作原理。想知道从你在地址栏中输入“google.com”,到窗口中显示Google主页的过程中都发生了什么?本文会为你揭开这个秘密。 要讨论的浏览器 今天,人们主要使用5种浏览器:Internet Explorer、Firefox、Safari、Chrome和Opera。这篇文章的分析源自开源浏览器――Firefox、Chrome和Safari,Safari是部分开源的。根据W3C对浏览器使用情况的...
    如果你是刚进入web前端研发领域,想试试这潭水有多深,看这篇文章吧; 如果你是做了两三年web产品前端研发,迷茫找不着提高之路,看这篇文章吧; 如果你是四五年的前端开发高手,没有难题能难得住你的寂寞高手,来看这篇文章吧; web前端研发工程师,在国内是一个朝阳职业,自07-08年正式有这个职业以来,也不过三四年的时间。这个领域没有学校的正规教育,没有行内成体系的理论指引,几乎所有从事这个职业的人都是靠自己自学成才。自学成才,一条艰辛的坎坷路,我也是这样一路走来。从2002年开始接触web前端研发至今已然有了9个年头,如今再回首,期间的走了很多弯路。推已及人,如果能让那些后来者少走些弯路,辛甚辛甚!
    

    很多年以前,当时颇有一些互联网公司们头疼于手上成千上万电子邮箱用户,但却都是免费的。他们盘算着怎么把免费的用户变为交费的客户,其中有一个环节很难跨越,那就是支付。

    一个邮箱收费不收费倒在其次,更让人纠结的问题是,一个月几块钱的费用,该通过什么方式得以简便支付。于是,就有公司打移动的主意,希望通过移动账单来收取这笔小额费用,方法是:短信订购。设想中的操作是这样的:你发一条包含有你邮箱地址的短信给一个指定号码,于是你到月底就通过移动账单去把这笔费用顺带给付了吧。

    这个流程听上去很方便,既方便邮箱服务提供商,也方便用户。而且似乎还开了一个小头,但迅速就被移动自己叫停。当时我在一个网络公司做事,我怎么也想不明白,送上门去的生意为什么移动不做(每笔费用都是短信的方式,所以移动会拿到一个扣率)。过了好多年,我才了解到,这个问题看上去只是一个买卖的简单流程,但却已经涉及到很深层次的问题,那就是“支付”。未经许可,移动是不能做代收费业务的。

    Mysql 4.0 开始就支持全文索引功能,但是 Mysql 默认的最小索引长度是 4。对于英文来说,这个设置是合理的,但是对于中文或者日文,这个设置就很不合理。so,修改mysql的配置(my.cnf文件):在 [mysqld] 后面加入一行fft_min_word_len = nn为小于4的数字。重启mysql即可。
    C语言作为大部分编程语言的基础,盛行三十多年不衰弱, 不论是是准备做 PHP/Java/Python/Golang 任何语言的开发学习,C语言都是基础的,我们很多基础很小的互联网运行的开源软件服务都是C语言构筑,所以,有个扎实的C语言基础,或者去学习C语言是非常有必要和帮助的。今天就简单列一些如果要做一个使用C语言来开发高性能后端网络应用的工程师,需要阅读那些书籍和学习那些资料。
    phpmailer设置使用utf-8编码发送邮件以后,已经能够正常的发送中文邮件了,当然你调用时传进去的中文参数必须也是utf-8编码才行,但是我发现,即使这样,发送中文文件名的附件的时候,附件名称不能正确的显示。比如我们要发送的附件是“测试.txt”,如果在添加附件的时候强制使用指定文件名的方式: $mail->AddAttachment($attach, $attach); 那么发送过去的附件文件名将会是乱码,如果不指定: $mail->AddAttachment($at...
【 ↑ 3】 CSS3圆角详解
CSS3圆角详解
CSS3圆角详解
CSS3圆角详解
CSS3圆角详解
    CSS3是样式表(style sheet)语言的最新版本,它的一大优点就是支持圆角。网页设计大师Nicholas Zakas的最新文章,详细解释了CSS3圆角的各个方面,非常值得学习。
    由于 JavaScript “弱语言”的性质,使得其在使用过程中异常的宽松灵活,但也极为容易“掉进陷阱”。这些陷进往往隐藏的很深,所以要多加小心。
设计公式:简单有效的竞品分析
    前两天,应某位老大的邀请,为产品策划们做了一次讲座。因为事先准备并不十分充分,讲得也有点急促,所以可能在很多同学听来,会有一些枯燥和不着边际。所以干脆大致的把讲义复述下来,供所有感兴趣的同学们批评指教。前言一个设计去给策划们讲课,多少也算是跨职业了,所以最终选定了一个对双方都比较简单而有效的方式――“竞品分析”――来做主题。说起来,设计和策划还是有一些共同点的。我们所从事的设计,其实可以称为狭...
    所谓兵马未动,粮草先行,准备将storm用在某个项目中做实时数据分析。无论任何系统,一定要有监控系统并存,当故障发生的时候你能第一个知道,而不是让别人告诉你,那处理故障就很被动了。 因此我写了这么个项目,取名叫storm-monitor,放在了github上 https://github.com/killme2008/storm-monitor 主要功能如下:1.监控supervisor数目是否正确,当supervisor挂掉的时候会发送警告。2.监控nimbus是否正常运行,monitor会尝试连接nimbus,如果连接失败就认为nimbus挂掉。3.监控topology是否正常运行,包括它是否正常部署,是否有运行中的任务。 当故障发生的时候通过alarm方法警告用户,开放出去的只是简单地打日志。因为每个公司的告警接口不一样,所以你需要自己扩展,修改alarm.clj即可。我们这儿就支
    Dennis Ritchie 过世了,他发明了C语言,一个影响深远并彻底改变世界的计算机语言。一门经历40多年的到今天还长盛不训的语言,今天很多语言都受到C的影响,C++,Java,C#,Perl, PHP, Javascript, 等等。但是,你对C了解吗?相信你看过本站的《C语言的谜题》还有《谁说C语言很简单?》,这里,我再写一篇关于深入理解C语言的文章,一方面是缅怀Dennis,另一方面是告诉大家应该如何学好一门语言。 首先,我们先来看下面这个经典...
    Google已经是一个非常成功的公司。除了Google搜索和AdWords的成功之外,Google还提供了许多其他突出的产品,包括Google地图、Google新闻、Google翻译、Google语音识别、Chrome和Android。 Google还大幅增强和扩展了通过购买小型公司(如YouTube)所获得的许多产品,并对各种开源项目做出了重大贡献。Google已经展示了一些尚未推出的惊人产品,例如自动驾驶汽车。 Google的成功有很多原因,包括开明的领导力,伟大的人才,高招聘标准,以及在迅速成长的市场中成功获利的财务实力。 但其中一个原因是Google摸索出了优秀的软件工程实践,帮助它成功。这些做法随着时间的推移,根据许多最有才华的软件工程师的积累和沉淀的智慧而演变而成。我们想与世界分享我们的做法,并分享我们从错误中学到的一些教训。 本文的目的是整理并简要介绍Google的关键软件工程实践。然后,其他组织和个人可以将它们与自己的软件工程实践进行比较和对比,并考虑是否自己应用这些实践中的一些。 许多作者都有分析Google的成功和历史的书籍或文章。但大多数主要涉及商业、管理和文化;只有那些的一小部分已经探索了软件工程方面的事情,并且大多数只探索一个方面;而且没有一篇文章提供了Google整体软件工程实践的简要概述,正如本文旨在做的那样。
    MVC(Model-View-Controller,模型―视图―控制器模式)用于表示一种软件架构模式。它把软件系统分为三个基本部分:模型(Model),视图(View)和控制器(Controller)。 MVC 由 Trygve Reenskaug 提出,最早被应用在 SmallTalk-80 环境中。模型―视图―控制器模式的目的是实现一种动态的程序设计,使后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能。除此之外此模式通过对复杂度的简化使程序结构更加直观。软...
推荐一些socket工具,TCP、UDP调试、抓包工具
    还记得我在很久很久以前和大家推荐的Fiddler和Charles debugger么?他们都是HTTP的神器级调试工具,非常非常的好用。好工具能让你事半功倍,基本上,我是属于彻头彻尾的工具控。
    Snoopy是一个php采集类,用来模拟浏览器获取网页内容和发送表单。下面是一些Snoopy特性: 容易抓取网页内容容易抓取页面文本(去除HTML标签)容易抓取网页内链接支持代理抓取支持基本的用户名、密码认证支持设置user-agent,referer,cookies和header内容支持浏览器转向,和控制转向深度能把页面中的链接转化成高质量的链接容易提交数据和获得返还值能追踪HTML框架支持重定向的时候传递Cookies Snoopy类,方法: fet...
    现在的linux内核中对于缓存的管理都是以page的形式进行的,也就是说在系统底层只存在各种page,这些page保存在不同的tree 中,buffer这个概念实际上已经过时了,但是为了保持对过往系统的兼容性,linux内核中还保留了这个概念,并仍然用它来代表文件系统中的一些所谓的元数据,但是由于已经没有buffer了,那么free该怎么显示buffers呢?内核巧妙的利用了一个特性,那就是文件系统在读取元数据的时候一般都是通过它所对应的块设备来进行,也就是说元数据存储的page一般都是保存在块设备对应的tree中,而一般文件的page  cache则是保存在它的宿主文件的tree中。有了这个假设,我们就可以通过统计所有在块设备的tree上的page来得出系统的buffers数量。
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1