自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

张伟光

好玩的不是技术,好玩的是用技术玩转业务

  • 博客(5)
  • 收藏
  • 关注

原创 分库分表实战问题

1.分库分表中水平拆分和垂直拆分的区别?水平拆分:将表数据拆分到不同的数据数据库中。垂直拆分:把一个大表拆成多个小表。字段进行拆分。分表:是指的是把表数据拆分到多张表里面。range分发:每个月生成一个新表。如果访问新的数据还好,但是访问旧的数据就麻烦一些。hash分发:平均分配,但是扩容的话会比较麻烦。2.如何让未分库分表的系统,设计成分库分表的系统?1)停机迁移方案2)双写迁移方案修改系统中所有写库的代码,同时让他写老库和新的分库分表的库。单表的数据中取数据,同步

2020-07-21 21:46:18 242

原创 分布式系统常见实战问题解决方案

1.dubbo工作原理1)service层:接口层,给服务提供者和消费者来实现。2)config层:配置层,主要是对dubbo进行配置的3)proxy层:代理层,透明生成生成客户端的stub和服务单的skeleton4)registry层:服务注册层,负责服务的注册和发现5)cluster层:集群层,封装多个服务提供者的路由以及负载均衡,将多个实例组合成一个服务6)monitor层:监控层,对rpc接口的调用次数和调用时间进行监控7)protocol层:远程调用层,封装rpc调用

2020-07-21 20:10:27 506

原创 项目中常见的缓存问题实战

1.redis的线程模型是什么?为什么单线程的redis比多线程的memcached效率要高得多(为什么redis是单线程的但是还可以支撑高并发)?[redis线程模型]redis的server端会有server socket来接收客户端的请求,当准备完毕会放入io多路复用程序,然后通过io多路复用程序压入一个对列中,然后通过文件事件分派器给到链接应答处理器。这时候发送set命令接着放到io多路复用程序,也会压入队列中,同时会有一个wating状态来去监听io多路复用程序,然后上面发送命令的请求从队

2020-07-13 20:01:04 514

原创 分布式引擎-es

1.es的分布式架构原理能说一下么(es是如何实现分布式的啊)?存储数据的基本单位是索引,比如你现在在es中存一些订单数据,你就应该在es中创建一个索引,order_idx,一个索引差不多就是相当于mysql中的一张表。index -> type -> mapping -> document -> field。index:mysql里面一张表type:详单于订单分类。例如一个是实物商品订单type,一个是虚拟商品订单type;很多情况下,一个index里可能就一个type

2020-07-12 17:07:46 307

原创 消息队列常见实战问题

1.如何保证消息队列的高可用?一、rabbitmq的高可用a.单机模式b.普通集群模式(无高可用性) 【连接获取数据方式】创建的queue只会放到一个mq上,消费的时候如果连接的另一个实例。那么需要去存放数据的queue拉取数据。 【设置连接方式】 1)随机 的获取实例连接所有的queue。缺点:有拉取数据的性能问题 2)指定到有queue的mq上。缺点:单实例的性能瓶颈 【事故处理方式】存放了queue的实例宕机了,未开启...

2020-07-12 15:45:38 403

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除