系统架构
文章平均质量分 81
無形的畫筆
这个作者很懒,什么都没留下…
展开
-
四层和七层负载均衡的区别
(一)简单理解四层和七层负载均衡:① 所谓四层就是基于IP+端口的负载均衡;七层就是基于URL等应用层信息的负载均衡;同理,还有基于MAC地址的二层负载均衡和基于IP地址的三层负载均衡。换句换说,二层负载均衡会通过一个虚拟MAC地址接收请求,然后再分配到真实的MAC地址;三层负载均衡会通过一个虚拟IP地址接收请求,然后再分配到真实的IP地址;四层通过虚拟IP+端口接收请求,然后再分配到真原创 2014-08-05 11:13:28 · 376 阅读 · 0 评论 -
大型网站架构系列:负载均衡详解(4)
本文是负载均衡详解的第四篇,主要介绍了LVS的三种请求转发模式和八种负载均衡算法,以及Haproxy的特点和负载均衡算法。具体参考文章,详见最后的链接。 三、LVS负载均衡LVS是一个开源的软件,由毕业于国防科技大学的章文嵩博士于1998年5月创立,用来实现Linux平台下的简单负载均衡。LVS是Linux Virtual Server的缩写,意思是Linux虚拟服务器。转载 2016-02-25 17:24:26 · 383 阅读 · 0 评论 -
大型网站架构系列:分布式消息队列(一)
以下是消息队列以下的大纲,本文主要介绍消息队列概述,消息队列应用场景和消息中间件示例(电商,日志系统)。本次分享大纲消息队列概述消息队列应用场景消息中间件示例JMS消息服务(见第二篇:大型网站架构系列:分布式消息队列(二))常用消息队列(见第二篇:大型网站架构系列:分布式消息队列(二))参考(推荐)资料(见第二篇:大型网站架构系列:分布式消息队列(二))本次分享总结(见第二篇:大型转载 2016-02-25 17:26:13 · 443 阅读 · 0 评论 -
大型网站架构系列:消息队列(二)
本文是大型网站架构系列:消息队列(二),主要分享JMS消息服务,常用消息中间件(Active MQ,Rabbit MQ,Zero MQ,Kafka)。【第二篇的内容大部分为网络资源的整理和汇总,供大家学习总结使用,最后有文章来源】本次分享大纲消息队列概述(见第一篇:大型网站架构系列:分布式消息队列(一))消息队列应用场景(见第一篇:大型网站架构系列:分布式消息队列(一))消息中间件转载 2016-02-25 17:28:04 · 420 阅读 · 0 评论 -
Apache Kafka:下一代分布式消息系统
简介Apache Kafka是分布式发布-订阅消息系统。它最初由LinkedIn公司开发,之后成为Apache项目的一部分。Kafka是一种快速、可扩展的、设计内在就是分布式的,分区的和可复制的提交日志服务。Apache Kafka与传统消息系统相比,有以下不同:它被设计为一个分布式系统,易于向外扩展;它同时为发布和订阅提供高吞吐量;它支持多订阅者,当失败时能自转载 2016-07-20 16:40:02 · 416 阅读 · 0 评论 -
kafka windows环境的搭建之路
简介:kafka是一个分布式的、可分区的、可复制的消息系统,它常常用于处理日志信息,是Apache下的一个开源项目(觉得Apache简直太牛逼了。。) (一)基本的消息术语: Kafka将消息以topic为单位进行归纳。 将向Kafka topic发布消息的程序成为producers. 将预订topics并消费消息的程序成为consumer. Kafka以集群的转载 2016-07-21 21:53:13 · 554 阅读 · 0 评论 -
京东11.11:商品搜索系统架构设计解密
刘尚堃,京东推荐搜索部技术总监,有丰富的团队管理经验以及推荐、搜索、广告产品研发经验。一、 京东商品搜索简介京东商品搜索引擎是搜索推荐部自主研发的商品搜索引擎,主要功能是为海量京东用户提供精准、快速的购物体验。虽然只有短短几年的时间,我们的搜索引擎已经经过了多次618店庆和双11的考验,目前已经能够与人们日常使用的如谷歌、百度等全文搜索引擎相比,我们的产品与其有相通之处,比如涵转载 2017-01-04 14:23:27 · 1624 阅读 · 0 评论 -
Cassandra+Akka+Spark分布式机器学习架构
目前基于Mesos的 Spark, Akka, Cassandra 和 Kafka (简称SMACK)架构将机器学习 大数据分析 快数据实时流处理和集群自动化管理结合一起,形成大数据领域的主流架构。数据分为快数据和大数据;快数据包括相关的最新信息以及提供可操作的事件。大数据是有关分析与模型和学习,聚类,分类以及组织事实。下图是展示对大数据和快数据分别进行批处理和流处理以后,进入转载 2017-01-04 16:32:51 · 829 阅读 · 0 评论 -
让并发和容错更容易:Akka示例教程
写并发程序很难。程序员不得不处理线程、锁和竞态条件等等,这个过程很容易出错,而且会导致程序代码难以阅读、测试和维护。所以,很多人不倾向于使用多线程编程。取而代之的是,他们使用单线程进程(译者注:只含有一个线程的进程),依赖外部服务(如数据库、队列等)处理所需的并发或异步操作。虽然这种方法在有些情况下是可行的,但还有很多其他情况不能奏效。很多实时系统——例如交易或银行业务应用,或实时游戏——转载 2017-01-04 17:11:57 · 759 阅读 · 0 评论 -
大型网站架构系列:负载均衡详解(3)
本次分享大纲软件负载均衡概述Ngnix负载均衡Lvs负载均衡Haproxy负载均衡本次分享总结一、软件负载均衡概述硬件负载均衡性能优越,功能全面,但是价格昂贵,一般适合初期或者土豪级公司长期使用。因此软件负载均衡在互联网领域大量使用。常用的软件负载均衡软件有Nginx,Lvs,HaProxy等。本文参考大量文档,部分为直接拷贝,参考出处见负载均衡详解(4)。二、Ng转载 2016-02-25 17:23:07 · 484 阅读 · 0 评论 -
大型网站架构系列:负载均衡详解(2)
本文是负载均衡详解的第一篇文章,介绍负载均衡算法, 硬件负载均衡。部分内容摘自读书笔记。三、负载均衡算法常用的负载均衡算法有,轮询,随机,最少链接,源地址散列,加权等方式;3.1 轮询将所有请求,依次分发到每台服务器上,适合服务器硬件同相同的场景。优点:服务器请求数目相同;缺点:服务器压力不一样,不适合服务器配置不同的情况;3.2 随机转载 2016-02-25 17:21:48 · 338 阅读 · 0 评论 -
dubbo的安装和使用
背景(#)随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进。单一应用架构当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本。此时,用于简化增删改查工作量的 数据访问框架(ORM) 是关键。垂直应用架构当访问量逐渐增大,单转载 2014-10-22 12:12:08 · 641 阅读 · 0 评论 -
以操作系统的角度述说线程与进程
什么是线程什么是线程?线程与进程与有什么关系?这是一个非常抽象的问题,也是一个特别广的话题,涉及到非常多的知识。我不能确保能把它讲的话,也不能确保讲的内容全部都正确。即使这样,我也希望尽可能地把他讲通俗一点,讲的明白一点,因为这是个一直困扰我很久的,扑朔迷离的知识领域,希望通过我的理解揭开它一层一层神秘的面纱。任务调度线程是什么?要理解这个概念,须要先了转载 2015-10-27 09:12:37 · 264 阅读 · 0 评论 -
互联网协议入门
我们每天使用互联网,你是否想过,它是如何实现的?全世界几十亿台电脑,连接在一起,两两通信。上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了,两者实际上根本不知道对方的物理位置,你不觉得这是很神奇的事情吗?互联网的核心是一系列协议,总称为”互联网协议”(Internet Protocol Suite)。它们对电脑如何连接和组网,做出了详尽的规定。理解了转载 2016-01-13 09:17:49 · 364 阅读 · 0 评论 -
大型网站架构系列:20本技术书籍推荐
学习是技术人员成长的基础,本次分享20本技术方面的书籍,这些书不是每一本都是经典,但是每一本都有其特点。以下20本大部分本人都看过,因此推荐给大家。(本次推荐的20本只是一个参考,比如像Head First,Java编程思想等经典书籍是大家都知道,因此不在推荐之列)本次分享大纲大型网站架构系列分布式系统系列BAT技术文学系列架构设计系列本次分享总结一、大型网站架构系列转载 2016-02-25 17:11:08 · 407 阅读 · 0 评论 -
大型网站架构系列:电商网站架构案例(1)
大型网站架构是一个系列文档,欢迎大家关注。本次分享主题:电商网站架构案例。从电商网站的需求,到单机架构,逐步演变为常用的,可供参考的分布式架构的原型。除具备功能需求外,还具备一定的高性能,高可用,可伸缩,可扩展等非功能质量需求(架构目标)。根据实际需要,进行改造,扩展,支持千万PV,是没问题的。本次分享大纲电商案例的原因电商网站需求网站初级架构系统容量估算网站架构分析网站架转载 2016-02-25 17:13:39 · 662 阅读 · 0 评论 -
大型网站架构系列:电商网站架构案例(2)
电网网站架构案例系列的第二篇文章。主要讲解网站架构分析,网站架构优化,业务拆分,应用集群架构,多级缓存,分布式Session。五、网站架构分析根据以上预估,有几个问题:需要部署大量的服务器,高峰期计算,可能要部署30台Web服务器。并且这三十台服务器,只有秒杀,活动时才会用到,存在大量的浪费。所有的应用部署在同一台服务器,应用之间耦合严重。需要进行垂直切分和水平切分。大量应转载 2016-02-25 17:17:13 · 613 阅读 · 0 评论 -
大型网站架构系列:电商网站架构案例(3)
本文章是电商网站架构案例的第三篇,主要介绍数据库集群,读写分离,分库分表,服务化,消息队列的使用,以及本电商案例的架构总结。6.5数据库集群(读写分离,分库分表)大型网站需要存储海量的数据,为达到海量数据存储,高可用,高性能一般采用冗余的方式进行系统设计。一般有两种方式读写分离和分库分表。读写分离:一般解决读比例远大于写比例的场景,可采用一主一备,一主多备或多主多备方式。转载 2016-02-25 17:18:30 · 828 阅读 · 0 评论 -
大型网站架构系列:负载均衡详解(1)
面对大量用户访问、高并发请求,海量数据,可以使用高性能的服务器、大型数据库,存储设备,高性能Web服务器,采用高效率的编程语言比如(Go,Scala)等,当单机容量达到极限时,我们需要考虑业务拆分和分布式部署,来解决大型网站访问量大,并发量高,海量数据的问题。从单机网站到分布式网站,很重要的区别是业务拆分和分布式部署,将应用拆分后,部署到不同的机器上,实现大规模分布式系统。分布式和业务拆分转载 2016-02-25 17:20:52 · 424 阅读 · 0 评论 -
系统设计 -- 并发用户数与吞吐量
在做系统设计时,架构师希望建立一套高性能的系统,而吞吐量(TPS)则作为衡量系统性能的重要指标。在做性能测试的时候,测试人员需要了解系统并发用户数、系统吞吐量、以及响应时间等,下面就按照这几者之间的关系简单整理如下。1、响应时间:对请求作出响应所需要的时间网络传输时间:N1 + N2 + N3 + N4应用服务器处理时间:A1 + A3数据库服务器处理时间:A2则响应时间 = N1 + N2 + ...原创 2018-05-11 14:07:05 · 835 阅读 · 0 评论