随笔分类 - 架构
1
摘要:在大学几年我最常用的编程语言就是java。众所周知,Java需要运行在jvm虚拟机上。虽然编程常用到jvm。但是我一点也不了解jvm。通过阅读这篇文章使我对jvm有了更加深入的了解。 Jvm不仅可以运行java,还可以运行其他语言。JVM可以使程序“一次编译到处执行”和自动回收。Java文本文件需要
阅读全文
摘要:这篇文章讲述了架构设计的思维是怎样的,对我这学期的软件体系架构有了一个概括的描述。一个经典的架构设计过程模型,沿用了RUP中迭代增量的思想,由分析、描述、选择、构造和组合5个阶段组成,如图: 这个过程模型看似很流畅,但是,架构师在设计时很难把握他的正确性和精准性,而且用它架构的系统是否对后续设计开发
阅读全文
摘要:在京东618店庆和双11等大规模的促销活动时,因为用户抢购、促销和恶意攻击会影响电商流量峰值。这时京东系统高流量,高并发,这时如果保证系统的可靠性和稳定性成了研发团队需要面临的难题。 京东电商系统的设计是围绕系统稳定性、可靠性、高并发和可扩展性为核心开展的。京东系统的特点:业务种类繁多;内部系统容纳
阅读全文
摘要:支付是我们常用的一个功能,支付对账系统是整个支付清结算体系中具体基础性意义的一个环节,是确保支付平台与各类第三方支付渠道数据一致性的关键系统,是商户资金结算、资金划拨、资金报表等逻辑准确运行的重要前提。 对于公司自建支付系统来说,一般会根据业务的复杂程度不同,对接多个支付渠道。不同渠道的账单数据格式
阅读全文
摘要:作者先写了架构方面的关注点。极简缓存架构将框架定义为客户端层、缓存提供层、缓存管理层、缓存存储层。其中缓存存储层又分为基本存储层、LRU存储层和Weak存储层。缓存系统主要消耗的是服务器的内存,因此,在使用缓存时必须先对应用需要缓存的数据大小进行评估,包括缓存的数据结构、缓存大小、缓存数量、缓存的失
阅读全文
摘要:最近阅读文章经常看到分布式架构,今天我看到的这篇文章全面地讲述了分布式架构知识。 分布式架构是 分布式计算技术的应用和工具,目前成熟的技术包括J2EE, CORBA和.NET(DCOM)。SOA面向服务架构是由于业务发展到一定层度后,需要对服务进行解耦,进而把一个单一的大系统按逻辑拆分成不同的子系统
阅读全文
摘要:现在微服务有很多人用。我以前写项目都是用的单体架构,简单方便。但是前几天我和小伙伴参加一个比赛要求使用微服务架构,当时对微服务架构一点也不了解。后来在github上查找代码时发现许多人已经开始使用微服务架构开始搭建日常的一些项目了。在这篇文章中作者介绍了现在常用的三种架构:微服务、消息队列和定时任务
阅读全文
摘要:前几天我和我的小伙伴在做软件杯大的才赛题目作品的时候使用到了线程。其中有一个一边运行其他程序一边要计时来判断是否让其他程序停止或开始运行。但是我弄了两天,并没有弄出来,或者说弄出来的效果特别不好。最近我看了《解密线程池工作原理》使我收获很多。 线程池是怎么由来的呢?线程也是一种宝贵的资源,并且也是一
阅读全文
摘要:作者现象我们介绍了分布式架构中几个术语的解释:域是一个虚拟的分类,几个系统属于某一个域,例如网上银行和手机银行都属于电子渠道领域。传统的单体应用,指的就是系统,在微服务架构下,单体应用采用前后端分离模式,前端一般使用 Nginx,Ngnix 进程间采用主备模式,系统的后端可以分为多个应用,每个应用有
阅读全文
摘要:我们平时在通过App购物时支付的一瞬间实际上要经历很复杂的流程,比如点外卖支付的过程:用户在点外卖的过程中选择微信支付后,App会将支付请求发送给外卖后台系统。支付系统处理外卖平台业务后台发送过来的支付请求,记录其业务订单号并生成对应支付系统自身的支付流水号。支付系统调用微信统一下单接口进行预支付,
阅读全文
摘要:支付系统是连接消费者、商家(或平台)和金融机构的桥梁,管理支付数据,调用第三方支付平台接口,记录支付信息(对应订单号,支付金额等),金额对账等功能。当用户产生支付行为时,资金从用户端流向支付系统,退款时则相反,从支付系统回流至用户端。因此在整个交易过程中用户端与支付系统是双向资金的流动方式。对于支付
阅读全文
摘要:作者在这篇文章中讲了:架构设计思维-集成.作者按应用架构演变顺序先后将我们讲解了单体架构,SOA架构,微服务架构。 (1)单体架构是指:在Web应用程序发展的早期,在开发服务端企业应用时,应用需要支持各种不同类型的客户端,比如桌面浏览器、移动浏览器以及原生移动应用。应用还需要向第三方提供可访问的AP
阅读全文
摘要:现在有许多互联网项目都是采用分布式结构进行部署。而cap定理是分布式系统中最近出的原则。所以对于哦我们来说,学习cap非常重要。CAP定理又称为布鲁尔定理。CAP定理是指对于一个分布式系统,不能同时满足一致性,可用性,分区容错性。 一致性(Consisteny)是指,对于任何客户端来说,每次的读操作
阅读全文
摘要:针对淘宝网为例,以一次完整的购物流程为背景,我们分析了在淘宝网中的一些易用性的体现,主要场景如下图所示: 在本场景中,新用户下载淘宝app时,第一次打开应用,淘宝app会出现新手指引,教会用户如何购物,极大方便了用户,使用户可以简单上手,开启自己的购物之旅。 在用户登录时,淘宝网从用户的角度出发,在
阅读全文
摘要:用“给飞机换引擎”来说明了架构改造的复杂性和重要性。一般来说重构分为这样几种:(1)彻底重新做,直接从前到后抛弃老系统(2)大规模重构,保留对用户的这层皮,后面从服务到数据全部替换。(3)小规模重构,保留对用户的这层皮以及数据结构,逐一替换核心逻辑到微服务。 在重构设计时需要考虑这几个现实的情况:(
阅读全文
摘要:质量属性包括六个方面: 可用性、可修改性、性能、安全性、可测试性、易用性。 一、可用性 可用性关注的问题 :如何检测故障 、发生故障的频度、 出现故障时的现象、 系统故障排除的时限 、如何防止故障的发生 、发生故障时的处理 因为是我自己写的网站,除了平时运行时可以出检测故障(修改故障处),不能专门检
阅读全文
摘要:在使用淘宝时发现搜索框很神奇,它可以将将我们想要的商品全部查询出来,但是我们并感觉不到数据库查询的过程,速度很快。通过阅读这篇文章让我知道了搜索框背后包含着很多技术,对我以后的学习可能很有借鉴。 平时都常用搜索框,应该用的都是在线搜索,应该是在数据库中查询信息。但什么是离线搜索呢?在阿里工程中把“将
阅读全文
摘要:常见的质量属性共有6个方面: 可用性,可修改性,性能,安全性,可测试性,易用性 刻画质量属性的手段,6部分组成: 刺激源,刺激 ,环境 ,制品 ,响应, 响应度量 1.可用性 可用性就是系统应能长期稳定地提供服务,近似7 X 24小时工作强度; 在负载过重或是系统崩溃的情况下,能保证用户请求不丢失;
阅读全文
摘要:这篇文章是以支付宝和蚂蚁花呗为例来向我们介绍技术架构。在这个案例中,作者2并没有像教科书式的介绍架构的定义概念,而是通过案例生动形象地向我们介绍了利用架构支付宝来度过双十一的购物浪潮考验。 支付宝目前的架构分为三层: 1.业务平台上 随时随地可用的支付服务 安全,易用的开放支付应用开发平台 2.技术
阅读全文
摘要:1.架构的定义 (1)根据要解决的问题,对目标系统的边界进行界定。 (2)并对目标系统按某个原则的进行切分。切分的原则,要便于不同的角色,对切分出来的部分,并行或串行开展工作,一般并行才能减少时间。 (3)并对这些切分出来的部分,设立沟通机制。 (4)根据(3),使得这些部分之间能够进行有机的联系,
阅读全文
1

浙公网安备 33010602011771号