架构
文章平均质量分 70
qq_31443653
这个作者很懒,什么都没留下…
展开
-
一个做过的项目的小总结
项目简介项目主要是针对品牌广告迁移至竞价广告平台,在竞价平台实现品牌广告下单,取代以前品牌广告复杂的交互,降低品牌广告主的准入门槛。涉及系统上游(S):广告平台前端(S1),以及广告平台后端(S2)订单中心(C)下游(X): 库存平台(X1),类似于商品库; 结算平台(X2),类似于生成发票; 计费平台(X3),实时扣除账户余额落库记录:库存平台记录(R1),结算平台记录(R2),订单中心记录(R3),广告平台记录(R4),计费平台记录(R5)流程:在广告前端页面(S1)发起一次创建,原创 2022-02-07 18:24:12 · 372 阅读 · 0 评论 -
项目性能评估
项目性能评估1 无单点 (服务层面)服务节点无状态,支持集群部署;在定时任务调度等单节点调度场景中,可使用分布式锁、分布式任务调度平台实现无单点,多节点集群部署;2 熔断能力 (服务层面)服务间调用支持达到一定阈值后自动熔断,并且具备熔断后自动恢复的能力;3 限流能力 (服务层面)设置服务能承载的流量负载阈值,支持过载保护;例如对外提供服务的高频接口,提供方限流;调用公共服务接口时,除公共服务提供方限流外,调用方也应该限流;4 降级能力 (服务层面)当依赖服务不可用,或系统负载比较高时,支持系统、原创 2020-08-27 16:16:43 · 312 阅读 · 0 评论 -
redis分布式限流,计数器,令牌桶
分布式限流方案计数:简单,双倍临界情况漏桶:恒定速度,不能应对峰值令牌桶:允许一定突然,丢掉部分请求有待商榷,令牌桶普遍用得多一些成熟方案可见,阿里Sentinel:https://sentinelguard.io/zh-cn/docs/basic-implementation.html令牌桶方案实现方案一、在提供给业务方的Controller层进行控制。1、使用guava提供工具库...转载 2020-03-26 21:33:13 · 909 阅读 · 4 评论 -
sprinboot系列六——整合swagger
配置pom:<!-- swagger RESTful API 文档 --><dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.2.2<...原创 2019-04-03 17:49:28 · 196 阅读 · 0 评论 -
sprinboot系列二——多环境打包
思路为,先排除所有版本的文件,然后在根据命令动态加载其中一个或者多个多环境结构最外层propertise如下(activatedProperties 以下三处需一致):# 指定执行环境#app#<!-- activatedProperties1 -->spring.profiles.active=@activatedProperties@sit的properties如...原创 2019-04-01 15:50:09 · 188 阅读 · 0 评论 -
sprinboot系列一——搭建并发布多模块springboot应用
1,创建maven的project,maven选quickstart2,创建子module,maven选quickstart,添加相互依赖添加模块是报错,改父pom文件的packaging属性,jar改为pom即可pom.xml <packaging>pom</packaging>创建成功后,项目层级如下:service涉及其他模块依赖,在service模块...原创 2019-03-30 18:36:46 · 277 阅读 · 0 评论 -
disruptor 框架使用以及ringbuffer原理解析
Disruptor概述子主题 1生产者消费组框架子主题 2使用子主题 11.建Event类(数据对象)2.建立一个生产数据的工厂类,EventFactory,用于生产数据;3.监听事件类(处理Event数据)4.实例化Disruptor,配置参数,绑定事件;5.建存放数据的核心 RingBuffer,生产的数据放入 RungBuffer。ringbuffer它...原创 2018-10-29 09:57:05 · 6415 阅读 · 0 评论 -
mycat初步认识
mycat原理主要根据对sql的拦截,然后经过一定规则的分片解析、路由分析、读写分离分析、缓存分析等,然后将SQL发给后端真实的数据块,并将返回的结果做适当处理返回给客户端。子主题 2分片拆分水平拆分要把一个表按照某种规则把数据划分到不同表或数据库里常用规则*ID*日期*特定字段取模优点*拆分规则抽象好,join操作基本可以数据库内完成*不存在单库大数据,...原创 2018-10-23 14:33:18 · 183 阅读 · 0 评论 -
storm简介
Storm是一个分布式的,可靠的,容错的数据流处理系统。Storm集群的输入流由一个被称作spout的组件管理,spout把数据传递给bolt, bolt要么把数据保存到某种存储器,要么把数据传递给其它的bolt。一个Storm集群就是在一连串的bolt之间转换spout传过来的数据。Stormnimbus(主节点) 监控节点运行,分配给从节点具体任务Nimbus的主要工作是运行Storm拓...原创 2018-10-09 14:45:50 · 1727 阅读 · 0 评论 -
Java架构师知识体系
Java编程 今天 一、源码分析源码分析是一种临界知识,掌握了这种临界知识,能不变应万变,源码分析对于很多人来说很枯燥,生涩难懂。源码阅读,我觉得最核心有三点:技术基础+强烈的求知欲+耐心。我认为是阅读源码的最核心驱动力。我见到绝大多数程序员,对学习的态度,基本上就是这几个层次(很偏激哦):下图是我总结出目前最应该学习的源码知识点: 二、分布式架构分布式系统是一个复杂...转载 2018-06-05 10:10:04 · 1698 阅读 · 2 评论 -
MDC+log4j+uuid简单使用
MDC介绍 MDC(Mapped Diagnostic Context,映射调试上下文)是 log4j 和 logback 提供的一种方便在多线程条件下记录日志的功能。某些应用程序采用多线程的方式来处理多个用户的请求。在一个用户的使用过程中,可能有多个不同的线程来进行处理。典型的例子是 Web 应用服务器。当用户访问某个页面时,应用服务器可能会创建一个新的线程来处理该请求,也可能从线程池中复...原创 2018-03-15 19:25:08 · 2820 阅读 · 1 评论 -
学习链接
nginxNginx配置说明:http://www.jb51.net/article/79216.htm; Nginx+Tomcat搭建高性能负载均衡集群:http://blog.csdn.net/wang379275614/article/details/47778201; 常用命令: nginx -s stop 强制关闭 nginx -s quit 安全关闭 nginx -s re原创 2017-10-20 15:19:56 · 251 阅读 · 0 评论 -
【转载】浅谈微服务基建的逻辑
转载于洞见 张玳这篇文章主要目的是面向初接触微服务的朋友简单介绍微服务基础建设所需要的各个模块以及缘由。起点 首先,我们得有一个“服务”。根据定义,我们可以把每个服务实例都视作一个黑盒。这个盒子有着明确的输入点和输出点,并且(理想情况下)仅通过这些输入和输出点和外界产生关联。每个服务实例会拥有专属的网络地址、独立的计算资源,并且独立部署。客户端通过访问服务实例的地址来调用服务 API。不同服务也转载 2017-12-19 17:49:11 · 259 阅读 · 0 评论 -
dubbo 简单使用
dubbo:原创 2017-11-15 17:05:50 · 183 阅读 · 0 评论 -
mycat+mysql分片
下载mycat完成环境变量配置:server,rule的xml文件为默认mycat配置和分片规则,主要配置schamal:<?xml version="1.0"?><!DOCTYPE mycat:schema SYSTEM "schema.dtd"><mycat:schema xmlns:mycat="http://io.mycat/"> <schema name="TESTDB&q原创 2017-09-30 17:43:12 · 420 阅读 · 0 评论 -
restful笔记
使用客户/服务器模型。客户和服务器之间通过一个统一的接口来互相通讯。层次化的系统。在一个REST系统中,客户端并不会固定地与一个服务器打交道。无状态。在一个REST系统中,服务端并不会保存有关客户的任何状态。也就是说,客户端自身负责用户状态的维持,并在每次发送请求时都需要提供足够的信息。可缓存。REST系统需要能够恰当地缓存请求,以尽量减少服务端和客户端之间的信息传输,以提高性能。统一的接口。一个R转载 2017-09-23 20:47:12 · 228 阅读 · 0 评论 -
springMVC+jetty+swagger 简单配置
jetty配置:<properties> <jettyVersion>9.3.0.RC1</jettyVersion> <swaggerVersion>2.8.5</swaggerVersion> </properties> <dependency> <groupId>jetty</groupId>原创 2017-09-23 18:46:50 · 1169 阅读 · 0 评论 -
nginx+tomcat 初学
一、 工具 nginx-1.8.0 apache-tomcat-6.0.33二、 目标 实现高性能负载均衡的Tomcat集群:三、 步骤 1、首先下载Nginx,要下载稳定版: 2、然后解压两个Tomcat,分别命名为apache-tomcat-6.0.33-1和apache-tomcat-6.0.33-2: 3、然后修改这两个转载 2017-09-13 11:35:43 · 347 阅读 · 0 评论