![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
架构
文章平均质量分 92
林老师带你学编程
www.wolzq.com
展开
-
做了这个优化,我们系统性能提升了几倍
一、背景:我们的系统主要功能是从亚马逊获取数据,存入数据库中,最后做数据分析。这期间最大的一个问题是:跨境网络传输,网络不稳定,请求会发生大量的5**错误,导致某一些用户的数据获取不到,因为一直失败重试,又恶性导致触发亚马逊服务限流。二、第1版优化:当前系统架构:为了解决当前数据获取问题,需要将获取数据的服务迁移到美国地区,然后将获取到的数据传输回国内服务器,最终入库。不管怎么改架构,都要面临一个问题,都必须进行跨境数据传输,网络不稳定,带宽限制问题肯定会存在。所以最核心的问题.原创 2021-02-09 16:51:34 · 513 阅读 · 0 评论 -
分享一次险象迭生的系统迁移【真实案例】
一、背景因为系统数据量持续性增大,腾讯云的MySQL已经达到瓶颈,无法进行升级操作,如果自己搭建一个分库分表系统,速度和可靠性上面都会很差,综合各方面考虑,最后决定采用阿里云的PolarDB-X分布式数据库。但是迁移整个系统,工作量和流程不是简简单单就可以搞定,需要系统性的思考,完善的迁移方案,最后才可以实施。在开始今天的文章之前,童靴们可以自己思考一下,假如是你主持这场迁移,你需要考虑哪些内容。二、挑战挑战1:数据库确定了,但是又有一个大问题,因为腾讯云和阿里云不是同一个云服务商,所以原创 2021-02-09 16:49:55 · 547 阅读 · 1 评论 -
一分钟弄懂什么是分布式和微服务
简单的说,微服务是架构设计方式,分布式是系统部署方式,两者概念不同微服务是啥?这里不引用书本上的复杂概论了,简单来说微服务就是很小的服务,小到一个服务只对应一个单一的功能,只做一件事。这个服务可以单独部署运行,服务之间可以通过RPC来相互交互,每个微服务都是由独立的小团队开发,测试,部署,上线,负责它的整个生命周期。微服务架构又是啥?在做架构设计的时候,先做逻辑架构,再做...转载 2019-11-24 23:39:37 · 695 阅读 · 0 评论 -
SpringCloud声明式服务调用Feign
1.创建一个SpringBoot工程,这里命名为feign-consumer,然后在pom文件中添加依赖:<dependencies> ..... <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>...转载 2018-12-29 17:43:01 · 688 阅读 · 0 评论 -
HTTPS的加密过程
HTTPSHTTPS即加密的HTTP,HTTPS并不是一个新协议,而是HTTP+SSL(TLS)。原本HTTP先和TCP(假定传输层是TCP协议)直接通信,而加了SSL后,就变成HTTP先和SSL通信,再由SSL和TCP通信,相当于SSL被嵌在了HTTP和TCP之间。我们首先了解几个基本概念。共享密钥加密(对称密钥加密):加密和解密同用一个密钥。加密时就必须将密钥传送给对方,那么如何安...转载 2018-12-09 21:07:55 · 737 阅读 · 0 评论 -
【坑】接口等幂性实施策略
项目刚开始的时候,只关注于功能行开发,但是当功能开发完毕的时候,就会暴露很多问题出来,比如今天要讲的接口等幂性。今天会针对实际的应用场景和大家详情的介绍一下,接口是如何实现等幂性。场景应用积分兑换(调用第三方接口) 供应商入驻(表单重复提交) 供应商结算申请/运营平台结算审核(表单重复提交) 线下门店同步订单流水(对外接口) 多个用户同时注册同一个手机号(并发操作) 用户申请退款...原创 2018-10-20 22:10:23 · 1166 阅读 · 0 评论 -
高并发的核心技术 - 消息中间件(MQ)
高并发的核心技术 - 消息中间件(MQ) 什么是MQ 跨进程的消息队列,主要角色包括生产者与消费者。 生产者只负责生产信息,无法感知消费者是谁,消息怎么处理,处理结果是什么。 消费者负责接收及处理消息,无法感知生产者是谁,怎么产生的。 Mq能做什么? MQ 特性一般有异步,吞吐量大 ,延时低; 适合做: 投递异步通知。 限流,削峰谷。 可靠事件,处理数据一致性...转载 2018-10-22 22:19:41 · 1480 阅读 · 1 评论 -
高并发下的订单与库存的处理
问题:一件商品只有100个库存,现在有1000或者更多的用户来购买,每个用户计划同时购买1个到几个不等商品。如何保证库存在高并发的场景下是安全的。 1.不多发 2.不少发 下单涉及的一些步骤 1.下单 2.下单同时预占库存 3.支付 4.支付成功真正减扣库存 5.取消订单 6.回退预占库存 什么时候进行预占库存 方案一:加入购物车的时候去预占库存。 方案二...转载 2018-10-22 22:16:47 · 6172 阅读 · 1 评论 -
2017阿里技术年度精选集
说了一个礼拜的技术了,今天我们轻松一天。给大家介绍一下阿里出的一本书籍,名字叫做2017阿里技术年度精选集。讲的是阿里2017年这一年内技术革命和发展,书籍分为上下两册,第一册讲的是:数据库、运维、中间件、大牛观点,下一册讲的是:AI/算法、学术前沿、机器学习、大数据、基础架构、企业内部的IT应用。废话不多说大家快点下载书籍,来一场技术盛宴吧~那关键来了~如何获取书籍资源呢,快来关注我的订阅号...原创 2018-08-05 16:55:12 · 440 阅读 · 0 评论 -
分布式项目中Nginx应用场景研究
众所周知nginx一般有两个作用,一个是负载均衡、一个反向代理。但是自从接触了duubo+zookeeper(或者springcloud)之后,脑子里面就会有一个疑问,像基于duubo+zookeeper(或者springcloud)这种分布式项目,本身就可以实现负载均衡的功能,那我们还需要nginx来做负载均衡吗?答案是显而易见的,那我们不仅就要问:nginx的负载均衡和分布式中自带的负载均衡有...原创 2018-06-17 21:47:07 · 3797 阅读 · 0 评论 -
k8s+docker+Jenkins实现可持续集成、容器服务监控、平滑增加容器等功能
在项目日常开发过程中,我们需要可持续的集成项目。如果不是可持续集成的话,往往有新版本的时候才会在测试环境中重新部署。如果项目对迭代速度要求比较高的情况下,我们需要每次开发新增一个接口的时候,就马上把测试环境的代码也一样同步更新,然后重新部署。基于这种模式下面的话,我们不能再向以前传统的模式,将打包好的war或者jar上传到服务器种,然后重新部署运行。所以今天给大家介绍另外的一种模式。应用场景:问题...原创 2018-06-24 16:37:02 · 16952 阅读 · 2 评论 -
高并发商城实战系类
高并发商城实战系类,想要的可以加我公众号,发送“商城实战”关键字即可。对文章有什么疑问或者想要看更多文章可以加我订阅号,欢迎大家的踩踩~...原创 2018-05-10 20:37:56 · 885 阅读 · 0 评论