草庐IT

浅聊我和一些编程语言的缘分

初识DEVC++首先小胡同学自己并不是科班出身,不是计算机或者互联网相关专业的的学生,我本科期间是车辆工程专业,偏机械一点。本科期间对编程语言的唯一认识就是C,其实也不算是,准确的是DEVC++,但大家都懂得,本科的通识课是可以忽略不计的。再之后就到了研究生学校这边,考研的时候就想着能跳出老专业的限制,去见识一些新的东西,因为四年的大学生活,让我明白如果毕业之后,还是找一份画三维图的工作的话,我可能会疯掉~阴差阳错就来了我现在导师这边,说是做的嵌入式,但实际上更多是电子相关的东西,或者说单片机。又遇Java+Mysql数据库还记得去年暑假,导师给我安排的第一个任务居然是做一个安卓的APP。我是

聊一聊js中元素定位的方法

在做seleniumweb自动化的时候,有时通过selenium定位不到,或无法操作元素,这个时候就需要通过js来定位/操作元素,然后通过selenium自带的execute_script()方法去执行js语句。下面介绍几种js的定位方法。一.IDid的值都是唯一的,所以当存在id字段时可优先使用DOCTYPEhtml>htmllang="en">head>metacharset="UTF-8">title>Titletitle>head>script>functiona(){alert(document.getElementById("button_id").style.display='b

聊一聊js中元素定位的方法

在做seleniumweb自动化的时候,有时通过selenium定位不到,或无法操作元素,这个时候就需要通过js来定位/操作元素,然后通过selenium自带的execute_script()方法去执行js语句。下面介绍几种js的定位方法。一.IDid的值都是唯一的,所以当存在id字段时可优先使用DOCTYPEhtml>htmllang="en">head>metacharset="UTF-8">title>Titletitle>head>script>functiona(){alert(document.getElementById("button_id").style.display='b

人人都在聊的云原生数据库Serverless到底是什么?

摘要:华为云数据库营销专家TonyChen和华为云数据库高级产品经理佳恩开展了一场关于云原生数据库与Serverless结合的直播对话。云计算的迅猛发展推动了数据库的变革,云原生数据库成为当前数据库发展的重要方向之一。云原生数据库与Serverless的结合,则进一步加速了云原生数据库的演进。虽然作为热门话题,但仍有很多人不理解数据库Serverless化到底是什么?数据库Serverless化又如何落地实践?近日,华为云数据库营销专家TonyChen和华为云数据库高级产品经理佳恩开展了一场关于云原生数据库与Serverless结合的直播对话,深入浅出地介绍了Serverless概念、数据库S

人人都在聊的云原生数据库Serverless到底是什么?

摘要:华为云数据库营销专家TonyChen和华为云数据库高级产品经理佳恩开展了一场关于云原生数据库与Serverless结合的直播对话。云计算的迅猛发展推动了数据库的变革,云原生数据库成为当前数据库发展的重要方向之一。云原生数据库与Serverless的结合,则进一步加速了云原生数据库的演进。虽然作为热门话题,但仍有很多人不理解数据库Serverless化到底是什么?数据库Serverless化又如何落地实践?近日,华为云数据库营销专家TonyChen和华为云数据库高级产品经理佳恩开展了一场关于云原生数据库与Serverless结合的直播对话,深入浅出地介绍了Serverless概念、数据库S

HTTP:聊一聊HTTP中的协商缓存

一、什么是协商缓存协商缓存是服务器端的一种缓存策略,服务端提供一种记号,用来判断客户端资源和服务端是否一样。一致返回304,否则返回200和新资源。 二、如何实现主要是通过在responseheader中携带相关标识一种通过last-modified资源的最后修改时间第一次请求时,服务器端会在responseheader插入last-modified最后修改时间,下一次客户端请求时在request header携带if-modified-since,对比最后修改时间是否一致,来判定需要返回新数据。 一种通过Etag资源的唯一标识符(一种字符串)第一次请求时,服务器端会在responsehead

HTTP:聊一聊HTTP中的强制缓存

http响应responseheaders中会有一个cache-control,这个参数就是用来做强制缓存的一、什么是强制缓存强制缓存就是服务端告诉客户端某些资源(JSCSSIMG)需要按照某种方法存在客户端本地,下次请求时直接从本地缓存中获取资源,不用再通过服务器,提高了网页加载速度。 例如上面的图片资源就被缓存在本地中,时间有效期长达1年二、cache-control有哪些参数max-age:最大有效期no-cache:不用本地缓存,交给服务端处理no-store:不用本地缓存以及服务端的缓存措施注:expire也是控制缓存有效期的,只不过被cache-control替代了

HTTP:聊一聊HTTP中的协商缓存

一、什么是协商缓存协商缓存是服务器端的一种缓存策略,服务端提供一种记号,用来判断客户端资源和服务端是否一样。一致返回304,否则返回200和新资源。 二、如何实现主要是通过在responseheader中携带相关标识一种通过last-modified资源的最后修改时间第一次请求时,服务器端会在responseheader插入last-modified最后修改时间,下一次客户端请求时在request header携带if-modified-since,对比最后修改时间是否一致,来判定需要返回新数据。 一种通过Etag资源的唯一标识符(一种字符串)第一次请求时,服务器端会在responsehead

HTTP:聊一聊HTTP中的强制缓存

http响应responseheaders中会有一个cache-control,这个参数就是用来做强制缓存的一、什么是强制缓存强制缓存就是服务端告诉客户端某些资源(JSCSSIMG)需要按照某种方法存在客户端本地,下次请求时直接从本地缓存中获取资源,不用再通过服务器,提高了网页加载速度。 例如上面的图片资源就被缓存在本地中,时间有效期长达1年二、cache-control有哪些参数max-age:最大有效期no-cache:不用本地缓存,交给服务端处理no-store:不用本地缓存以及服务端的缓存措施注:expire也是控制缓存有效期的,只不过被cache-control替代了

聊一聊分布式锁的设计模型

  一、什么是分布式锁?什么是分布式锁?对于这个问题,相信很多同学是既熟悉又陌生。随着分布式系统的快速发展与广泛应用,针对共享资源的互斥访问也成为了很多业务必须要面对的需求,这个场景下人们通常会引入分布式锁来解决问题。我们通常会使用怎么样的分布锁服务呢?有开源的MySQL,Redis,ZooKeeper,Etcd等三方组件可供选择,当然也有集团内自研的Tair,Nuwa等分布式锁服务提供方。总的来看,我们对分布式锁的需求可以大体划分为以下两类应用场景:实现操作原子性:在单机环境中,为了实现多进程或多线程对共享资源操作过程的原子性,我们可以借助内核提供的SpinLock或Mutex机制,保证只有