尘埃落定

每一个可以努力的日子,都是一份厚礼。

Follow me on TwitterRSS订阅

  • 首页
  • Unblock Youku
  • 实验室
    • 视觉设计
    • 开源程序
  • 文章归档
    • 精选文章
    • 全部文章
  • 友链
  • 关于我

计算圆周率Approximating Pi – Map Reduce Program

2011 4 月 11th

由lovelucy发表在编程 | 10,816 次围观

没有评论

MapReduce主要应用于大规模数据处理,特别是在搜索引擎中各种链接的访问统计,进而影响到页面关键词排名等等。今天这个例子却是讲的利用MapReduce来对圆周率Pi进行近似计算。考虑下面这张图:

计算圆周率pi

我们知道,正方形的面积 As = (2r)2 也就是 4r2. 内嵌圆形的面积 Ac = pi * r2. 于是 更多 >

MapReduce, 分布式

大型网站的后端架构设计

2011 4 月 7th

由lovelucy发表在后端架构 | 16,516 次围观

4个评论

对于像我这样的小博客网站来说,日访问量仅百余,找个普通的主机托管完全可以满足需要,实在是不必过多考虑后端的问题。然而,腾讯网易这样的门户网站、淘宝这样的购物交易网站、人人网新浪微博等主要流行的社交网络应用,则不得不运用多种技术设计后端架构,才能支撑起百万甚至上亿级别的访问。

这里我在一个high level例举我所了解到的提升服务性能的相关技术,其中的每一项都可以展开讨论,有空我会专门详细整理一下和大家探讨。 更多 >

分布式, 大规模, 性能优化, 架构

Hello world!

2011 3 月 31st

由lovelucy发表在生活随笔 | 15,194 次围观

7个评论

大家好,我搬到自己的新窝来了。

这里是我的个人博客,主要记录IT相关技术以及自己的成长历程。《深入浅出MFC》的作者侯俊杰曾经提到过“带艺术气息的软件创造行为”,颇有些理想主义。我是个追求完美的人,甚至在一些细枝末节的问题上思来想去,在写日志的时候我会一遍遍地检查以防出现错别字,在写代码的时候我会看变量命名是否规范代码缩进是否对齐。表面上看我很实在,实际骨子里是一个理想主义者。

Code is poetry. 在别人评价我闷骚的时候,我都会像周星驰那般严肃地纠正道:“其实,我是一个文学青年。”

本科的时候在一群大牛的布道下开始使用Linux,一开始沉溺于展现各种amazing的桌面特效和倒腾各种有趣的应用软件,随后顿悟,这些都是浮云,只是引导兴趣以及用于在mm们面前炫耀。于是开始务实地使用server版系统,学会vim、gcc、gdb并在它们的陪伴下完成了诸多课程设计。

大四应该是最充实的时候,我加入了Z教授的实验室,结识了一群来自五湖四海的研究生并和大家打得火热。在L老师和S老师的带领下完成了某军方软件(分布式系统)的研制,熟悉了整套软件开发流程。而后又参与了另一个J2EE项目的前期工作,随后因毕业不得不退出这个带给我成长和快乐的团队。毕业论文也在这个时期完成,最后居然还混了个省级优秀。

此时的我只能说才刚刚上道,很多技术泛而不精,我意识到一定要找一个自己感兴趣的方向深入研究。感谢Z教授给我写推荐信,使得我有机会在香港中文大学继续求学。来到香港,在经历了一番短暂的culture shock后,开始适应这边国际化的教育模式。全英文授课,全英文report & presentation,全英文考试。讲授的课程也都是云计算这类业界前沿领域,教授们都是大牛级别,不是ACM IEEE院士就是国际顶级学术会议审稿人。

其实我为是走学术路线还是工程路线踌躇犹豫了很久。在实验室的日子逐渐了解到国内复杂的学术生态环境,科研,早已成为功利主义下的牺牲品。我热爱我的祖国,IT的未来也在中国。身处墙外接受了很多技术熏陶,我开始迫不及待地想要大展拳脚。

了解更多个人信息,或者你有一份好的职位推荐,欢迎联系我。

欢迎订阅我的博客哦~

社交网络

C/C++反序输出字符串总结

2011 3 月 21st

由lovelucy发表在编程 | 13,029 次围观

没有评论

2年前去T公司面试,面试官给了我一张纸一支笔,说写个程序吧,输入一个字符串然后反序输出。我问输入输出是用函数参数呢还是系统I/O,面试官说随你便,写完了说说各有什么优缺点吧。当时我大三,没有参加过ACM没有实验室经历除了课程设计也没写过什么程序,完全小白。当然至今也仍然是菜鸟一只,不堪回首啊。

方法一:据说有库函数strrev()啊 更多 >

C, 反序, 字符串

学习MapReduce分布式程序设计方法

2011 2 月 9th

由lovelucy发表在编程 | 10,811 次围观

没有评论

MapReduce是Google提出的一个编程框架,用于大规模海量数据处理,其主要思想就是分治(divide and conquer)。我们希望程序有并行处理能力,于是就可以使用多台机器同时处理加快速度。

然而,怎样分派任务给不同的计算机?如果任务单元的数量大于可执行任务的计算机的数量怎么办?计算需要使用到一些中间结果怎样处理?如果某些计算机在处理任务时中途死掉了呢?怎样才能知道任务已经处理完毕?问题主要来自于任务处理节点的交流(比如状态信息),以及对共享资源(数据)的访问。要解决这些棘手的问题,我们需要有一套完整的同步机制:同步锁信号量、条件变量(等待、通告、广播)等等。

现有的一些编程模型有共享内存(pthread)、消息传递(MPI)等,架构的设计模式有主从式(Master-Slaves)、生产者消费者流式(Producer-consumer flows)等。Map Reduce结合了函数式编程语言的思想,使用key-value对作为输入和输出。开发者只需要实现map(key, value)和reduce(key, value)两个功能。map()会产生中间结果作为输出,而这正是reduce()的输入。中间结果经过reduce()产生最终结果。类似以下模型:

map (in_key, in_value) ->
(out_key, intermediate_value) list

reduce (out_key, intermediate_value list) ->
out_value list

具体的原理可以参看Google发表的关于MapReduce的论文。从应用开发的角度,本站的MapReduce分类下有一些python示例,可以作为初步入门学习。最简单的方法就是利用管道来进行代码测试,例如: 更多 >

MapReduce, 分布式

反向索引Inverted Index – Map Reduce Program

2011 1 月 4th

由lovelucy发表在编程 | 11,630 次围观

没有评论

Inverted Index (反向索引)是搜索引擎需要做的一件经常性工作。在Google提出Map Reduce分布式编程框架中,这是一件很容易完成的事情。下面就是一个python写的示例。 更多 >

MapReduce, Python, 分布式

单词统计Word Count – Map Reduce Program

2011 1 月 4th

由lovelucy发表在编程 | 12,007 次围观

2个评论

在学习Map Reduce方法时,Word Count(单词统计)程序是最基础的入门训练。不同的写法会有不同的执行效率,下面是用python写的一个示例。 更多 >

MapReduce, Python, 分布式

Amazon EMR 云计算服务编程实践

2011 1 月 4th

由lovelucy发表在云计算 | 13,757 次围观

没有评论

EMR是Amazon亚马逊云计算平台提供的一项服务,用户可以在此平台使用亚马逊强大的计算资源执行Map Reduce程序。由于Map Reduce很多情况下都是做的海量数据文本统计类的并行计算任务,需要耗费很多时间,使用云计算则可以大大加快执行速度。

EMR建立在Amazon S3和Amazon EC2的基础上。用户提交一个map程序和一个reduce程序,同时提交需要处理的数据文件作为输入。这些都上传到Amazon S3云端存储平台,在EMR中指定相应的S3路径,就可以开始做数据处理了。EMR会根据用户指定的规模配置,开启一个EC2集群,在每个节点上运行Hadoop。运行结束后用户可以从S3获取结果数据。下面以word count单词统计任务为例,介绍具体操作过程。 更多 >

Amazon Cloud, MapReduce, 云计算

Amazon S3 云存储服务Cloud Storage编程实践

2011 1 月 4th

由lovelucy发表在云计算 | 24,819 次围观

6个评论

Amazon Simple Storage Service (S3) 是一个云端存储平台,这是现在蓬勃发展的云计算的典型应用之一。用户可以将自己的数据上传到云端服务器,便可以随时随地地访问到这些数据,灵活高效。它按需收费,也就是说使用相应容量的存储空间,就花相应的钱。这里有具体的资费标准。对于企业用户来说,使用这项服务实际上可以大大降低成本,这些成本不仅仅包括自己购置服务器硬件、软件成本,还包括电力、为IT设施维护而雇佣的人力成本等等。

在Amazon S3中有如下几个概念,通过分别介绍,我们可以大致理解云存储的基本原理。

Buckets:一个bucket是一个用于存储的容器,我们可以不太恰当地理解为就是云端的文件夹。文件夹要求一个独特唯一的名字,这和注册邮箱名差不多,可以加前缀或者后缀来避免重名。bucket使得我们在一个高层级上组织命名空间,并在数据的访问控制上扮演重要角色。下面举个例子,假设一个名为photos/puppy.jpg的文件对象存储在名为johnsmith的bucket里,那么我们就可以通过这样一个url访问到这个对象:http://johnsmith.s3.amazonaws.com/photos/puppy.jpg
更多 >

Amazon Cloud, Python, 云存储

RSA读取密钥——使用openssl编程

2011 1 月 4th

由lovelucy发表在信息安全 | 19,197 次围观

1个评论

RSA是基于数论中大素数的乘积难分解理论上的非对称加密法。在此密码术中,使用公钥(public key)和私钥(private key)两个不同的密钥:公钥用于加密,它是向所有人公开的;私钥用于解密,只有密文的接收者持有。

举例:小红希望安全地发送一条消息给小明,消息明文为m,小明的公钥为K+,小明的私钥为K-。通信过程为,小红使用K+加密m,成为密文K+(m),传送给小明,小明收到后使用K-解密这个密文得到原始消息明文,即m = K-(K+(m))。

具体的密钥生成算法如下。随机选择两个大素数p和q(比如每个都是1024 bit),计算n = pq, n’ = (p-1)(q-1). 选择一个e (e小于n) 与n’互质。计算d使得ed = 1 mod n’.则公钥为(n, e),私钥为(n, d). 注意p和q都应该保密。

加密过程为c = m^e mod n
解密过程为m = c^d mod n

以上为原理简介。下面是openssl API编程应用读取密钥文件的示例源代码: 更多 >

C, openssl, RSA
« 第一页...«910111213»...最后一页 »
  • 微信订阅

    • 最新评论
    • 热门文章
    • 标签
    • 分类
    • IT观察 (7)
    • Linux (13)
    • 云计算 (13)
    • 信息安全 (12)
    • 前端开发 (15)
    • 后端架构 (5)
    • 生活随笔 (46)
    • 瞎折腾 (4)
    • 编程 (25)
    • 网络 (11)
    Amazon Cloud bootstrap bug C Chrome Facebook Google HTML5 Java JavaScript jQuery Lucy Mac MapReduce MySQL Nginx openssl PHP Python RSA server shell Sina App Engine Unblock Youku WordPress 云计算 分布式 创业 回忆 字符串 年度总结 性能优化 排名 操作系统 数据库 架构 模型 武大 爱情 社交网络 虚拟机 软件工程 配置 阅读 香港
    • 在 iPad 上使用 Unblock Youku 观看大陆网站影片 (613)
    • 使用 Unblock Youku 插件观看中国大陆优酷土豆网络视频 (354)
    • Unblock Youku 在 Chrome Web Store 下架 (137)
    • Firefox 版 Unblock Youku 插件终于发布啦! (95)
    • 利用Sina App Engine翻墙回国内看优酷土豆等网络视频 (76)
    • 在 Android 上使用 Unblock Youku 观看国内视频 (59)
    • AngularJS 最佳实践 (58)
    • Redhat OpenShift 云计算平台试用小记 (37)
    • 利用新浪 SAE 搭建免费 CDN 加速网站 (26)
    • 使用 GitHub / GitLab 的 Webhooks 进行网站自动化部署 (25)
    • 逆天西瓜: 港ICP备?这是香港的备案号吗 :neutral:
    • iMJMJ: 学习了,涨姿势啊!!
    • AmbroseRen: 博主还更新吗?我看最近的就16有啊
    • AmbroseRen: 你这写的四个场景简直是我现在的真是写照啊(我都怀疑你装了摄像头)
    • AmbroseRen: 入得山中,出得山来,我想是有区别的
    • VPS主机防攻击应对CC和DDOS的基本思路-防扫描防火墙阻止策略 - vps咨询: […] 文章出自:挖站否 https://wzfou.com/vps-cc-ddos/,部分内容参考自:小Z博客  、开源中国、lovelucy.info、yzs.me版权所有。本站文章除...
    • Andy: Traceback (most recent call last): File "C:/Users/Administrator/Desktop/爬虫.py", line 1, in im...
    • 电脑vpn翻墙回大陆ip方法方案汇总2020 - 微跨境: […] 以 Unblock Youku 为...
  • 用户登录






    • 注册
    • 忘记你的密码?
  • 访问统计

  • 赞助商链接

由digitalnature提供主题Mystique | 由WordPress强力驱动 | 自由转载-非商用-保持署名 © 2026 尘埃落定
港ICP备00000001号