正文内容加载中...
posted @ 2014-06-26 21:31 EE_NovRain 阅读(55345) 评论(17) 编辑
摘要: 这段时间组里在有计划地学习书籍PRML (Pattern Recognition and Machine Learning),前两天自己做了一个里面第三章linear regression的分享,这里把当时做的这个ppt分享给大家。 对于线性回归这一章,首先列一下我认为比较重要的几个问题(ppt ...阅读全文
posted @ 2014-06-08 21:27 EE_NovRain 阅读(1709) 评论(2) 编辑
摘要: 这边之前的大多数项目都用的java,而自己用的c++,等到快要上线的时候才发现线上机器的gcc和libc的版本都巨低,跟自己测试开发用的环境不兼容,编译出的c++可执行文件没法运行。解决c++程序的移植问题费了挺大周章,如下是一个具体记录:1、问题描述 如上所述,线上机器与开发机环境不兼容,需要做c++程序的移植。2、表现 细节不表,总之就是程序没法运行,找不到对应的库。如下给出几个跟gcc有关的错误提示:/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.9' not found/lib64/libc.so.6: version `GLIB阅读全文
posted @ 2013-11-14 17:46 EE_NovRain 阅读(5209) 评论(3) 编辑
摘要: 前段时间搞了搞Redis集群,想用做推荐系统的线上存储,说来挺有趣,这边基础架构不太完善,因此需要我们做推荐系统的自己来搭这个存储环境,就自己折腾了折腾。公司所给机器的单机性能其实挺给力,已经可以满足目前的业务需求,想做redis集群主要有以下几点考虑: 1、扩展性,scale-out,以后数据量...阅读全文
posted @ 2013-11-02 16:25 EE_NovRain 阅读(5353) 评论(5) 编辑
摘要: 这段时间在做一些web方面开发的事情,用的Nginx+fast-cgi,计划深入看一下Nginx的内部实现和架构,以方便理解和调优。后面准备写一篇有关Nginx介绍和深度解析的文章,要深入理解web服务器的工作原理,网络编程的基本概念和知识不可或缺。这篇文章先对于网络编程中比较容易混淆的几个问题做一个复习和总结,主要参考自《unix网络编程》这本书。 首先,简单总结一下传输层tcp协议的两个琐碎的点。 1、TIME_WAIT状态问题:tcp三次握手建立连接,四次挥手来释放连接,这个大家都熟悉。在释放连接时,主动发起关闭连接的一方的一方会在发送最终确认ack后会有一个TIME_WAIT的...阅读全文
posted @ 2013-08-27 19:31 EE_NovRain 阅读(755) 评论(0) 编辑
摘要: 前些天看到一篇不错的文章[1],讲的是网站架构的发展历史,这种综述的文章往往很难得,这里进行一个简化诉述和我个人的解读,详细的信息可以参看Ref的连接。首先,我先给一个通俗的理解,网站架构发展的驱动力是用户数和数据量的膨胀,压力瓶颈在websever连接和database之间来回切换,解决问题的三板斧:加缓存(精益求精地做缓存。。。)、加机器(多搞搞分布式,一台不行多台)和功能分离(读写分离、业务分离、动静分离等等)。下面是所读那篇文章的主要思路。 网站架构的演变主要经历了如下几个阶段: 1、物理分离webserver和数据库 比较直观,不再赘述。 2、增加页面缓存 目的是减小数据库连接的资.阅读全文
posted @ 2013-08-26 19:30 EE_NovRain 阅读(339) 评论(0) 编辑
摘要: Thrift是facebook的一个技术核心框架,07年四月开放源码,08年5月进入apache孵化器。 简言之,开发者可以通过写一个.thrift文件,定义相应的数据结构和服务接口,该thrift文件会由Thrift相应的解释器解释生成指定的类型(C++,java等等)代码,然后用户在客户端和服务器端,分别在生成的代码里编写相应的服务接口函数,并做相应配置选择,就可以实现跨平台的rpc调用。 这里给出一个使用的简单例子,之中牵扯到了一些编译方面的细节问题。 定义数据结构的.thrift文件book.thrift://book.thriftnamespace cpp examplestruc.阅读全文
posted @ 2013-08-20 19:16 EE_NovRain 阅读(522) 评论(0) 编辑
摘要: 我这段时间在用redis,感觉挺方便的,但比较疑惑在选择内存数据库的时候到底什么时候选择redis,什么时候选择memcache,然后就查到下面对应的资料,是来自redis作者的说法(stackoverflow上面)。 You should not care too much about performances. Redis is faster per core with small values, but memcached is able to use multiple cores with a single executable and TCP port without help ..阅读全文
posted @ 2013-08-19 18:57 EE_NovRain 阅读(13533) 评论(0) 编辑
摘要: 这里对近来看的部分NoSQL资料做一个汇总记录,主要包括简史、粗略分类及数据库选择的考虑事项。NoSQL常见的解释是“non-relational”,有时也称作Not Only SQL。 1、数据库发展的简单历史,个人感觉这篇文章(Ref:[2])讲得挺好的,知道过去才能把握未来: 在90年代,一个网站的访问量一般都不大,用单个数据库完全可以轻松应付。在那个时候,更多的都是静态网页,动态交互类型的网站不多。 到了最近10年,网站开始快速发展。火爆的论坛、博客、sns、微博逐渐引领web领域的潮流。在初期,论坛的流量其实也不大,如果你接触网络比较早,你可能还记得那个时候还有文本型存储的论...阅读全文
posted @ 2013-08-19 18:50 EE_NovRain 阅读(599) 评论(0) 编辑
摘要: 源地址:http://www.cnblogs.com/hanyan225/archive/2011/07/29/2120658.html虚拟文件系统,也不知道大家听过没有,反正我是听过了!我们知道在计算机行业,很多东西都不是一定有个官方说:朋友,我最大,你们做的东西,都要是这个样子,否则是非法的。事实上,很多东西都是靠的一种实力,通过实力来慢慢在人们心中成为既定事实。这个事实同样是没有官方的。好了,问题来了,没有官方,就没有标准,没有标准就没有统一,没有统一那就是三国时代,混战当道也! 怎么办?特别是百花争鸣的文件系统,这时linux的内核开发者们想到了VFS(虚拟文件系统)。VFS使得用户可阅读全文
posted @ 2012-07-31 14:03 EE_NovRain 阅读(272) 评论(0) 编辑