随笔分类 - [20]DesignAnalysis设计分析
-
微服务框架
摘要:一个微服务框架的情节 一个微服务框架的情节 一个微服务框架的情节 一个微服务框架的情节 记得14年初下定决心重构系统的那一刻 ,“一切从简”的欲望尤为强烈,只因事情已经被“复杂”堵得水泄不通,其实归根到底还是过往自身的工具化思维局限了问题“最优解”的选择。对于一个“入世未深”的小伙来说,“简单”仅仅 阅读全文
-
UI层实现
摘要:领域驱动设计实践 —— UI层实现 目录 1. User Interface 2. Controller 3. DTO 4. infrastructure层的公共组件 5. UI层类图 6. 代码示例 正文 前面几篇blog主要介绍了DDD落地架构及业务建模战术,后续几篇blog会在此基础上,讲解具 阅读全文
-
电商网站架构
摘要:如何打造一个小而精的电商网站架构 前面写过一些电商网站相关的文章,这几天有时间,就把之前写得网站架构相关的文章,总结整理一下。把以前的一些内容就连贯起来,这样也能系统的知道,一个最小的电商平台是怎么一步步搭建起来的。对以前的文章感兴趣的朋友可以看这个,http://www.cnblogs.com/z 阅读全文
-
服务治理框架
摘要:美团.点评服务治理框架 7年前我飞去厦门帮男神做项目,得到的结果他们老板惊呆了,真是大牛啊。说一定要意思一下,不能让大牛白做,结果还是什么也没给,所以我衷心祝福那个老板尽快破产。但是男神却很鄙视我,鄙视了很多年。因为他看到了我的过程,觉得没有技术含量。事情是这样:当时男神做了一个extjs框架的管理 阅读全文
-
API 网关
摘要:使用 API 网关 链接:https://github.com/oopsguy/microservices-from-design-to-deployment-chinese译者:Oopsguy 本书的七个章节是关于设计、构建和部署微服务。第一章介绍了微服务架构模式。它阐述使用微服务的优点与缺点,以 阅读全文
-
数据异构解决方案缓存一致性和跨服务器查询
摘要:缓存一致性和跨服务器查询的数据异构解决方案canal 当你的项目数据量上去了之后,通常会遇到两种情况,第一种情况应是最大可能的使用cache来对抗上层的高并发,第二种情况同样也是需要使用分库 分表对抗上层的高并发。。。逼逼逼起来容易,做起来并不那么乐观,由此引入的问题,不见得你有好的解决方案,下面就 阅读全文
-
高CPU业务
摘要:高CPU业务 Gearman是当年LiveJournal用来做图片resize的,大家也明白图片resize是一个高CPU的操作,如果让web网站去做这个高CPU的功能,有可能会拖垮你的 web应用,那本篇我们来看看gearman是如何解决这个问题的,它的架构图类似下面这样: 从上面这张图,你应该会 阅读全文
-
NET平台微服务
摘要:.NET平台微服务项目汇集 最近博客园出现了一篇文章《微服务时代之2017年五军之战:Net PHP谁先死》,掀起了一波撕逼,作者只是从一个使用者的角度来指点江山,这个姿势是不对的。.NET Core就是专门针对模块化的微服务架构而设计,在微服务架构这方面Java的Spring Cloud具有非常高 阅读全文
-
OAuth2.0
摘要:OAuth2.0 1、引言 本篇文章是介绍OAuth2.0中最经典最常用的一种授权模式:授权码模式 非常简单的一件事情,网上一堆神乎其神的讲解,让我不得不写一篇文章来终结它们。 一项新的技术,无非就是了解它是什么,为什么,怎么用。至于为什么,本篇文章不做重点探讨,网上会有各种文章举各种什么丢钥匙、发 阅读全文
-
分布式系统中的最终一致性
摘要:分布式系统中的最终一致性 前言 很多同学可能对于CAP这个项目想有更一步的了解,包括她的工作原理以及适用的场景,所以博主就准备了一场直播给大家讲解了一下,这个视频是直播的一个录像。 由于我这次直播本来是没有打算对外的,所以也是没有怎么准备的,所以在直播的过程中出现了一些讲解不到位或者是意外的情况,还 阅读全文
-
应用服务&领域服务
摘要:应用服务&领域服务 DDD理论学习系列——案例及目录 1. 引言 单从字面理解,不管是领域服务还是应用服务,都是服务。而什么是服务?从SOA到微服务,它们所描述的服务都是一个宽泛的概念,我们可以理解为服务是行为的抽象。从前缀来看,根据DDD的经典分层架构,它们又隶属于不同的层,应用服务属于应用层,领 阅读全文
-
Disruptor
摘要:高性能队列Disruptor系列2--浅析Disruptor 目录 1. Disruptor简单介绍2. 为什么Disruptor如此之快3. Disruptor结构分析 1. Disruptor简单介绍 Disruptor是一个由LMAX开源的Java并发框架。LMAX是一种新型零售金融交易平台, 阅读全文
-
实体
摘要:实体 DDD理论学习系列——案例及目录 1.引言 实体对应的英语单词为Entity。提到实体,你可能立马就想到了代码中定义的实体类。在使用一些ORM框架时,比如Entity Framework,实体作为直接反映数据库表结构的对象,就更尤为重要。特别是当我们使用EF Code First时,我们首先要 阅读全文
-
微服务框架
摘要:微服务框架的故事 微服务框架的故事 微服务框架的故事 微服务框架的故事 6年前,我们奋战了3天3夜,把一个从0到1的系统成功上线...... 当应用系统正常运行那一刻,我似乎已经忘记了自己待在客户现场到底有多长时间了。不要紧,因为时间已经在系统运行的那一瞬间凝固且永久存留。 5年前,在推广过程中我们 阅读全文
-
事件总线(Event Bus)
摘要:事件总线(Event Bus)知多少 源码路径:Github-EventBus简书同步链接 1. 引言 事件总线这个概念对你来说可能很陌生,但提到观察者(发布-订阅)模式,你也许就很熟悉。事件总线是对发布-订阅模式的一种实现。它是一种集中式事件处理机制,允许不同的组件之间进行彼此通信而又不需要相互依 阅读全文
-
性能优化—线程池
摘要:性能优化—线程池相关问题 目录: 1.环境介绍 2.症状 3.诊断 4.结论 5.解决 6.对比java实现 废话就不多说了,本文分享下博主在5.28大促压测期间解决的一个性能问题,觉得这个还是比较有意思的,值得总结拿出来分享下。 博主所服务的部门是作为公共业务平台,公共业务平台支持上层所有业务系统 阅读全文
-
领域模型
摘要:领域模型 DDD理论学习系列目录 1.引言 我们还是先来拆词理解,领域模型可以拆为“领域”和“模型”二词。 领域:按照我们之前的文章的理解,DDD中的领域是指软件系统要解决的问题,如我们的办公设备公众号在线商城就是为了解决电商问题,对应的就是电商领域。 模型:百度百科解释为对于某个实际问题或客观事物 阅读全文
-
高可用可伸缩架构
摘要:移动互联网、云计算和大数据的成熟和发展,让更多的好想法得以在很短的时间内实现为产品。此时,如果用户需求抓得准,用户数量将很可能获得爆发式增长,而不需要像以往一样需要精心运营几年的时间。然而用户数量的快速增长(尤其是短时间内的爆发式增长),通常会让应用开发者有些吃不消,不得不面临一些严峻的技术挑战:如 阅读全文
-
架构设计-高并发秒杀系统
摘要:高并发秒杀系统架构设计 · 抢购、微信红包、一元夺宝 IT界最会讲故事的男同学 秒杀业务与难点 秒杀业务在各业务中已然非常流行,这里我将互联网行业中的秒杀定义为:在非常短的时间内,将一件商品分成多份进行购买的行为。微信抢红包、一元夺宝、双11大促抢购等业务本质上都可视作秒杀业务。而最近大热的抢红包的 阅读全文
-
限界上下文
摘要:限界上下文 1. 引言 限界上下文可以拆分为两个词,限界和上下文。限界:是指一个界限,具体的某一个范围。上下文:个人理解就是语境。 比如我们常说的段子: “我想静静。”这个句子一般是想表达“我想静一静”的意思。但是我们却把它玩笑成“静静是谁?”。可见上下文语境很重要。 这个例子只是个开胃菜,我们接着 阅读全文