一、什么是分布式锁?什么是分布式锁?对于这个问题,相信很多同学是既熟悉又陌生。随着分布式系统的快速发展与广泛应用,针对共享资源的互斥访问也成为了很多业务必须要面对的需求,这个场景下人们通常会引入分布式锁来解决问题。我们通常会使用怎么样的分布锁服务呢?有开源的MySQL,Redis,ZooKeeper,Etcd等三方组件可供选择,当然也有集团内自研的Tair,Nuwa等分布式锁服务提供方。总的来看,我们对分布式锁的需求可以大体划分为以下两类应用场景:实现操作原子性:在单机环境中,为了实现多进程或多线程对共享资源操作过程的原子性,我们可以借助内核提供的SpinLock或Mutex机制,保证只有
hi,大家好,我是大D。今天继续了解下HBase是如何写入数据的,然后再讲解一下一个比较经典的面试题。RegionServer寻址HBaseClient访问ZooKeeper;获取写入Region所在的位置,即获取hbase:meta表位于哪个RegionServer;访问对应的RegionServer;获取hbase:meta表,并查询出目标数据位于哪个RegionServer中的哪个Region中。并将该table的Region信息以及meta表的位置信息缓存在客户端的metacache,方便下次访问;写HlogHBaseClient向RegionServer发送写Hlog请求;Regio
hi,大家好,我是大D。今天继续了解下HBase是如何写入数据的,然后再讲解一下一个比较经典的面试题。RegionServer寻址HBaseClient访问ZooKeeper;获取写入Region所在的位置,即获取hbase:meta表位于哪个RegionServer;访问对应的RegionServer;获取hbase:meta表,并查询出目标数据位于哪个RegionServer中的哪个Region中。并将该table的Region信息以及meta表的位置信息缓存在客户端的metacache,方便下次访问;写HlogHBaseClient向RegionServer发送写Hlog请求;Regio
一、什么是httpshttps是http的升级,因为http是明文传输的,所以非常不安全,https在http的基础上进行了数据加密。 二、https的加密方式1.对称加密服务端会给客户端发送一个key,客户端利用key来进行数据加密,传输给服务端,服务端再用key进行解密。但是这样黑客依然可以利用劫持key来或者数据2.非对称加密非对称加密是有一个私钥和一个公钥,服务器会把私钥发给客户端,客户端用来加密传输给服务器,服务器利用公钥进行解密,这样黑客即便是劫持了私钥,也不能解密数据三、https会同时使用对称和非对称加密方式原因是为了节省成本先看看两种加密的运行方式:1.服务器会先利用非对称方
一、什么是httpshttps是http的升级,因为http是明文传输的,所以非常不安全,https在http的基础上进行了数据加密。 二、https的加密方式1.对称加密服务端会给客户端发送一个key,客户端利用key来进行数据加密,传输给服务端,服务端再用key进行解密。但是这样黑客依然可以利用劫持key来或者数据2.非对称加密非对称加密是有一个私钥和一个公钥,服务器会把私钥发给客户端,客户端用来加密传输给服务器,服务器利用公钥进行解密,这样黑客即便是劫持了私钥,也不能解密数据三、https会同时使用对称和非对称加密方式原因是为了节省成本先看看两种加密的运行方式:1.服务器会先利用非对称方
时间在走,环境在变,互联网有点卷不动了;01捋一捋最近互联网上关于职场的热点:裁员,优化,毕业,向社会输送人才,求职;你方唱罢他方登场,持续横跳热搜;年初到现在五月底,身边已经有好几个朋友收到裁员通知,而且是没有给任何的心理预期;基本上人事谈话结束,就可以收拾东西离开的节奏,不拖泥带水;后续求职周期在两周之内可以完成,薪水也在正常的上涨区间内;当裁员成为大小各厂过冬的手段,当搬砖人的职场情绪处于迷茫,有些事就需要细细的思考一下;02最近几年,裁员的新闻已经见多不怪,本质原因并不复杂,无非是公司生存发展有压力,需要开源节流;互联网寒冬的风声由来已久,实际上个人的心里更倾向于环境变化的说法,市场下
时间在走,环境在变,互联网有点卷不动了;01捋一捋最近互联网上关于职场的热点:裁员,优化,毕业,向社会输送人才,求职;你方唱罢他方登场,持续横跳热搜;年初到现在五月底,身边已经有好几个朋友收到裁员通知,而且是没有给任何的心理预期;基本上人事谈话结束,就可以收拾东西离开的节奏,不拖泥带水;后续求职周期在两周之内可以完成,薪水也在正常的上涨区间内;当裁员成为大小各厂过冬的手段,当搬砖人的职场情绪处于迷茫,有些事就需要细细的思考一下;02最近几年,裁员的新闻已经见多不怪,本质原因并不复杂,无非是公司生存发展有压力,需要开源节流;互联网寒冬的风声由来已久,实际上个人的心里更倾向于环境变化的说法,市场下
单例模式单例模式一般用于全局只需要一个唯一的实例的情况。例如说,日志读写的功能,一般来说全局只需一个日志读写实例,然后其他的类实例去获取这个实例进行日志读写。又例如说,有一个协作的功能,需要各个模块发送给主控制器,主控制器需要做成单例,这样子模块之间操作控制器就是操作实际主控制器的内容。怎么写一个单例模式C语言编写一个单例模式先从最简单的C语言开始,一般我们说到单例模式是指面向对象的单例模式,因为一个类生成一个实例对象就是单例模式。那么落到C语言,就是结构体了,我们用结构体创建单个实例。#include#include#includetypedefstruct_Data{void*pData;
单例模式单例模式一般用于全局只需要一个唯一的实例的情况。例如说,日志读写的功能,一般来说全局只需一个日志读写实例,然后其他的类实例去获取这个实例进行日志读写。又例如说,有一个协作的功能,需要各个模块发送给主控制器,主控制器需要做成单例,这样子模块之间操作控制器就是操作实际主控制器的内容。怎么写一个单例模式C语言编写一个单例模式先从最简单的C语言开始,一般我们说到单例模式是指面向对象的单例模式,因为一个类生成一个实例对象就是单例模式。那么落到C语言,就是结构体了,我们用结构体创建单个实例。#include#include#includetypedefstruct_Data{void*pData;
打破常规,重立新规;01开始想聊这个话题的时候,我是打算放弃的;因为这个话题涉及范围之广,内容之多,让我犯怵;近几年,待过两家公司;一家经历过重构,另一家也打算重构......其实要下定决心,推翻重来,是一个很有勇气的决定;归根结底,不到万不得已,谁想这么玩,谁愿意花费大精力去做这些脏活、累活;所以究其原因,也只能说是一种综合因素吧,就像古话说的,天时、地利、人和;至于为什么这是个很有勇气的决定,因为做重构这事的团队风险极高;上至业务高层,下至底层码农,都有可能一个不小心就被刀;我曾经待过的一个团队,经历过一次重构,不过那是一次失败的经历;开发预估了两个多月的时间,业务大佬决定,期间直接对新需