本篇文章是关于信息架构的碎碎念,一篇有些像茶的小文,而不那么像冰咖啡。下面进入译文:什么是信息架构?简单来讲,信息架构指的是app或网站当中全部信息的组成结构。经过认真梳理的信息架构可以使产品更加易于理解和导航。这有些类似于作家在动笔之前首先拟出故事的大纲,或是建筑师需要以精准的蓝图作为一切工作的基础。本质上讲,任何数字化产品,包括网站、app等等,都是信息 ......
399
0
0
2022-05-26
现实生活中,我们能经常听到别人说,通过搭建机器集群来抗住大流量和大用户量。如何组织机器集群和服务集群对大量流量请求进行高效服务是一个有挑战的问题。负载均衡器就是用来解决针对流量请求分配机器集群和服务集群的利器。一、什么是负载均衡?我们从一个实际的工作需求开始讲述负载均衡器吧。有一天,领导给你分配一个需求,你兴高采烈地去写代码,当写到一半时发现要依赖另一个模块 ......
394
0
0
2022-05-26
489034603从2003年Google公布自家分布式文件系统相关技术(论文The Google File System)后,便涌现出众多的开源实现,包括HDFS、Quantcast File System(QFS)、MooseFS等,都采用了类似GFS分块的架构,但确有各自的不同特性,如HDFS发展最快,但只支持append-only写,不支持随机写,而 ......
302
0
0
2022-05-24
由于大数据的迅猛发展,数据呈几何倍数增长,大家不得不讨论关于系统性能的优化问题,而谈到性能优化,势必要谈到缓存架构的设计与使用。几乎是所有人都知道缓存的威力,但是知道终归只是知道,如何真正合理的在自己的项目中进行使用,又是另外一回事了,还是用几个问题来探讨一下,让正在学习大数据的小伙伴更好的了解缓存技术。在哪些地方可以使用缓存?这里用一个图可能表述的更加清楚 ......
362
0
0
2022-05-22
继续整理诸葛io创始人&CEO孔淼在AWS技术峰会2017上的演讲《 数据驱动企业商业价值增长》下篇,上篇传送门今天重点解读诸葛io技术架构的优势以及大数据分析模型。1、“多租户”式平台同时支持很多百亿级大型应用,直面高并发面临的挑战且保证高速响应,实时准确。2、找到用户与设备的关系,透过设备来追踪背后真正的用户3、真实的用户会话采集,绝非通过规则“ ......
435
0
0
2022-05-18
早期的网站为了节省成本一般会设计成集中式系统,应用程序、数据库等都部署在一台服务器上。 但随着业务的快速度发展,逐渐出现瓶颈,按一定原则**(应用拆分、服务拆分、数据拆分、应用解耦)**,向分布式系统转型,涉及到以下环节改造。主要环节业务拆分:将整个网站业务拆分成不同的应用,每个应用独立部署维护,应用之间通过RPC或消息队列通信。集群化(应用服务器;基于RP ......
353
0
0
2022-05-03
接入层端到接入层,最好通过域名,而不是ip直连。当提供服务的ip,不可用时,可以通过切换dns更换入口。接入层冗余部署,nginx通过统一的ip(虚拟ip)对外服务,多台Nginx采用keepalive检测,当对外提供服务的nginx挂了,通过把ip切换给备用机器,实现故障转移。接入层到ui层接入层到ui层也是通过部署冗余的ui层服务实现,接入层nginx上 ......
386
0
0
2022-04-24
今天的分享和 API 架构相关,饿了么 API Everything 框架建设是一个不断演进的过程。什么是 API Everything?先简单介绍一下 API,就是相当于前端比如 Web 访问到后端的服务接口,这中间有一个隔离,适配给外部各端进行访问,隔离是起到安全性的考虑,还有一个协议转换的考虑。当然,基于这一块我们还有很多其他的考虑。在饿了么初期发展阶 ......
398
0
0
2022-04-22
在实践中,人们总结出了一些常用的软件系统结构高层模式,以供应用系统设计时参考。这些模式包括:单服务两层/多层C/S;MVC结构;面向服务的SOA与多服务集合;数据交换总线等。1. 单机应用系统(Standalone)  准确地讲,单机应用系统是最简单的软件结构,是指运行在一台物理机器上的独立应用程序。当然,该应用可以是多进程或多线程的。  在信息系统普及之前 ......
536
0
0
2022-04-21
什么是秒杀秒杀场景一般会在电商网站举行一些活动或者节假日在12306网站上抢票时遇到。对于电商网站中一些稀缺或者特价商品,电商网站一般会在约定时间点对其进行限量销售,因为这些商品的特殊性,会吸引大量用户前来抢购,并且会在约定的时间点同时在秒杀页面进行抢购。秒杀系统场景特点秒杀时大量用户会在同一时间同时进行抢购,网站瞬时访问流量激增。秒杀一般是访问请求数量远远 ......
393
0
0
2022-04-21
web架构演化历史就像中国历史上下5000年一样精彩,先来了解一下大型网站有哪些特点呢。1、高并发,大流量2、高可用3、海量数据4、用户分布广泛,网络情况复杂5、安全环境恶劣6、需求快速变更,发布频繁,产品发布频率是极高的7、渐进式发展。好的互联网产品都是慢慢运营出来的,不是一开始就开发好的。1、演化过程初始阶段一台服务器就绰绰有余,服务器操作系统用Linu ......
480
0
0
2022-04-21
一、一般高并发web系统这里的一般指的是秒杀之类的电子商务系统,比如说小米抢购、淘宝双十一、秒杀活动等等,12306订票网站与其有本质区别,下面会有说到。系统架构图下图是我调查众多资料总结出的系统架构图,当然这也不能作为通用的解决方案,首先像淘宝等企业公布的资料肯定不是最先进或者是性能最好的,其次具体情况还需具体分析。 架构图核心技术点前端优化 前端优化主要 ......
526
0
0
2022-04-20
服务降级,自动屏蔽非核心分支异常对于一次礼包领取请求,在我们的后端CGI会经过10多个环节和服务的逻辑判断,包括礼包配置读取、礼包限量检查、登陆态校验、安全保护等等。而这些服务中,就有不可以跳过的核心环节,例如读取礼包配置的服务,也有非核心环节,例如数据上报。对于非核心环节,我们的做法,就是设置一个比较低的超时时间。例如我们其中一个统计上报服务,平均耗时是3 ......
414
0
0
2022-04-20
架构设计中的基本原则有哪些呢,我们学习一下。1、单一职责原则(Single Responsibility Principle)说到单一职责原则,很多人都会不屑一顾。稍有经验的程序员即使从来没有读过设计模式、从来没有听说过单一职责原则,在设计软件时也会自觉的遵守这一重要原则,因为这是常识。在软件编程中,谁也不希望因为修改了一个功能导致其他的功能发生故障。而避免 ......
420
0
0
2022-04-20
1:缓存技术和框架的重要性互联网的一些高并发,高性能的项目和系统中,缓存技术是起着功不可没的作用。缓存不仅仅是key-value的简单存取,它在具体的业务场景中,还是很复杂的,需要很强的架构设计能力。我曾经就遇到过因为缓存架构设计不到位,导致了系统崩溃的案例。2:缓存的技术方案分类1)是做实时性比较高的那块数据,比如说库存,销量之类的这种数据,我们采取的实时 ......
459
0
0
2022-04-19