人人网的技术博客:http://ugc.renren.com/
InfoQ:我刚才跟那个黄晶老师交流的时候,黄晶老师提到,最近在做两个开源项目,这两个开源项目您给我们简单介绍一下吧?
黄:这两个项目其实也是我们在业务的需求下催生的,一个开源项目是分布式的key-value存储系统。这个项目其实有很多类似的开源项目,包括这个Cassandra等等,那么我们也是在经过需求分析之后,觉得这些项目多少都无法完全适合我们的场景,所以对于我们这个项目,我们把它做成一个比较灵活的,他下面的存储是可以用文件系统,可以用MySQL,也可以用Cassandra这样的系统,上层的管理要满足我们的需要,待会我会讲一下这个开源项目,我们也有这个开源项目的介绍,我们也有这个团队的一个博客,ugc.renren.com,大家感兴趣的话可以去看一下。另外一个我们打算开源的项目,是我们的一个Web开发框架,这个开发框架是Rest风格,比较简洁,比较适用于互联网的产品,它可以大大的减少开发controller这个层面的代码量,然后可以非常方便的去配置一些像O-R Mapping这样的机制,然后与它相结合。我们还有另外一个在Model层面的,很分散的、分片的大型数据库集群,当访问数据库的时候,也有和它结合很好的另外一个组件,将来如果是能够做的非常通用的话,可配置的话,我们也会考虑到开源。它是类似于MySQL Proxy访问数据库中间层的一个组件,它会负责把这些请求分发到数据库集群中。这几个结合起来,做比较规定规模的Web应用,应该是比较适合的。所以我们把这个项目开源,也是希望更多的人能够来使用和完善它,能够让更多的人在这个方面少走一些弯路,我们这几年探索过来,经过非常大量的重构。
对于分布式系统,有一个理论叫CAP理论,有的系统可能在C和P方面做的比较好,这CAP三个,一个是高可用性,一个是节点容错性,一个是一致性,很难做到三个同时满足的,必须有折中。有的时候,有些系统在不同的取舍方面会有一些区别,这个区别就导致可能有时并不是非常适合,我们自己也希望能够对一个系统做到足够熟悉,在需要的情况下,我们可以直接去改造它的核心部分。
分享到:
相关推荐
人人网技术架构的发展历程可以追溯到2006年,起初采用的是Resin Pro作为Web服务器,配合MySQL InnoDB的主从结构,以及单一的Storage+Squid架构。随着用户量的增长,架构在2007年开始升级,引入了LVS、Resin Web集群...
人人网,作为中国早期的社交网络平台,其架构的发展历程反映了互联网技术的迭代与变迁。从初期的小规模应用到后来应对亿级用户的挑战,人人网的架构经历了从简单到复杂,从单体到分布式,再到微服务的演进。这篇博文...
人人网架构发展 及人人网使用开源架构技术及特点。
在人人网工程师的访谈中,我们可以提炼出以下几个关于移动Web开发架构的关键知识点: 1. 移动终端的发展趋势:移动终端经历了四个阶段的发展,从最初的功能终端,到智能化终端,再到互联网和平台化终端,直至目前向...
【标题】"仿人人网安卓"指的是一个针对安卓平台开发的应用程序,它的设计和功能高度模仿了曾经流行的社会化网络平台——人人网。人人网在中国早期互联网时代是大学生和年轻人交流的主要平台,提供了包括个人主页、...
由于人人网的API(Application Programming Interface)是基于REST(Representational State Transfer)架构的,因此开发人员使用了人人网提供的REST API来构建代理器。REST API允许外部应用程序通过HTTP协议与人人...
总的来说,人人网服务化与架构变迁的过程是一个不断试错、学习和优化的历程,它涉及了服务化的理论基础、技术选型、问题识别与解决方案等多个层面,充分展示了大型互联网公司在面对业务挑战时的技术演进路径。
### 人人网数据服务平台:基于日志分析的数据系统架构 #### 背景与挑战 在互联网行业,数据成为驱动业务发展的核心力量。人人网,作为中国早期的社交网络服务提供商,面临着海量用户数据的管理和分析挑战。传统的...
【标题】:“(jsp)人人网的源码”是指基于JavaServer Pages(JSP)技术构建的、模仿人人网(原校内网)功能的网站源代码。这个项目旨在重现人人网的核心功能,如社交网络的基本操作,如用户注册、登录、发布状态、...
【标题】"安卓人人网客户端功能图全"指的是一个针对Android平台的人人网移动应用的完整功能展示。这个客户端可能是由开发者ysh0011创建并分享在CSDN(China Software Developer Network)上的开源项目,源码链接为:...
移动Web开发架构是当前互联网行业中一个非常重要的领域,特别是在社交网络平台如人人网这样的公司中。随着智能手机和平板电脑的普及,用户越来越依赖移动设备访问网页和服务,因此,构建高效、响应迅速且适应多平台...
### 2015人人网校园招聘知识点梳理 #### 一、招聘背景及概况 - **时间**: 2015年 - **公司**: 人人网 - **招聘对象**: 应届毕业生 - **涉及领域**: 计算机与网络 - **目标**: 吸纳优秀人才,加强产品开发和服务...
SNS的商业空间在于其分布式的技术架构,它允许用户利用个人设备的资源,形成强大的计算和通信能力,这挑战了传统互联网公司的中心化模式。随着SNS的普及,互联网的格局可能会发生改变,个人用户将拥有更多创造和控制...
【标签】"人人网源码"是一个关键点,它强调了这个项目是模仿人人网的实现,对于那些想要了解社交网络平台工作原理、开发流程以及技术选型的开发者来说,这是一个宝贵的资源。你可以从中学习到如何设计和实现一个社交...
### 人人网分布式存储研究陈臻解读NoSQL技术代表之作:深入解析Dynamo #### NoSQL技术背景与发展趋势 随着互联网应用的飞速发展,传统的关系型数据库在处理大规模、高并发的数据存储需求方面逐渐显现出局限性。...
Memcached作为纯内存的键值缓存系统,是人人网架构中的另一个重要组成部分。其高效、稳定和广泛的应用使得它成为必备工具。尽管它不自带分布式能力,但通过客户端实现分布,特别是使用一致性哈希进行键的分布。人人...
《安卓开源项目人人网客户端源码深度解析》 在当今移动互联网时代,Android作为主流的智能手机操作系统,其应用开发技术的探索与学习始终是开发者关注的焦点。本篇将深入剖析一个独特的开源项目——"安卓开源项目...
通过Java的网络编程接口,开发者可以轻松地创建客户端-服务器架构的应用程序,实现数据和服务的远程访问。 3. **安全性**:Java的安全模型允许应用程序在网络环境中安全地运行。Java虚拟机(Java Virtual Machine, ...
人人网客户端基于第三方API的开发是一个复杂而细致的过程,尤其在iOS平台上,它涉及到许多技术栈和最佳实践。本文将深入探讨如何在iOS应用中集成人人网的API,以实现客户端的功能。 首先,我们需要理解“API”是...