暂时未有相关云产品技术能力~
暂无个人介绍
熟悉MySQL的都知道MySQL服务端实现主要分为Server层和存储引擎层。Server层负责接收和管理客户端连接、管理缓存、解析SQL、优化SQL、调用存储引擎执行SQL;存储引擎层主要负责存储、查询数据。
用ESP8266 NodeMCU 和 DHT22模块做了个室内温湿度监控的小系统,DHT22每秒把获取的温湿度发送给开发板,开发板通过HTTP协议把温湿度数据发送到部署在云服务器上的数据管理服务(自己撘的SpringBoot项目和数据库),然后就可以通过h5页面观察室内温湿度的变化。
这里记录一下ESP8266 NodeMCU驱动0.96英寸的OLED屏的过程。
基于MacOS搭建ESP8266-NodeMCU开发环境 1. 下载、安装驱动 2. Arduino开发环境配置 2.1. 下载、安装Arduino 2.2. 配置Arduino
深入分析MySQL行锁加锁规则 1 查询条件为主键索引 1.1 等值查询记录存在时,在索引的什么位置加什么锁?为什么? 1.2 等值查询记录不存在时,在索引的什么位置加什么锁?为什么? 1.3 范围查询记录存在时,在索引的什么位置加什么锁?为什么? 1.4 范围查询记录不存在时,在索引的什么位置加什么锁?为什么? 2 查询条件为唯一索引 2.1 等值查询记录存在时,在索引的什么位置加什么锁?为什么? 2.2 等值查询记录不存在时,在索引的什么位置加什么锁?为什么? 2.3 范围查询记录存在时,在索引的什么位置加什么锁?为什么? 2.4 范围查询记录不存在时,在索引的什么位置加什么锁?为什么?
深入理解MySQL的MVCC原理 一、MVCC定义 1、并发事务可能产生的问题 2、当前读和快照读 二、MVCC实现、原理 1、隐藏字段 2、版本链 3、ReadView 三、手动验证MVCC的原理 1、事务隔离级别为RC(读已提交隔): 2、事务隔离级别为RR(可重复读):
Prometheus+Grafana监控SpringBoot项目业务指标监控 1、SpringBoot项目配置 2、prometheus添加配置 3、Grafana配置
Prometheus+Grafana监控SpringBoot项目JVM信息 1. SpringBoot项目配置JVM采集 2. Prometheus配置 3. 配置grafana 4. 扩展-通过JMX Exporter监控JVM信息
在Prometheus的架构设计中,Prometheus Server并不直接服务监控特定的目标,其主要任务负责数据的收集,存储并且对外提供数据查询支持。因此为了能够能够监控到某些东西,如主机的CPU使用率,我们需要使用到Exporter。Prometheus周期性的从Exporter暴露的HTTP服务地址(通常是/metrics)拉取监控样本数据。
Prometheus简介与安装 1、Prometheus简介 2、安装 Prometheus Server 3、 安装 Grafana
SonarQube是一款代码检测工具,支持对Java、C#、、Python、Go、Html、JavaScript、CSS等代码的质量检测。 因为SonarQube依赖数据库,可以用MySQL或PostgreSQL。SonarQube7.9以上版本不再支持MySQL,所以这里用PostgreSQL。
TCP(Transmission Control Protocol传输控制协议)协议是基于IP协议,面向连接的、可靠的、基于字节流的传输层通信协议。
前几天对接了一套第三方接口,所有接口的请求地址一样,请求参数和响应结果中有很多共同的字段,所以就想把这些字段都抽出来,Feign定义的接口直接返回泛型类型。
Https网站中无法请求Http资源(静态资源、接口等) 分析 解决方法
前几天在自己个人的一台腾讯云服务器上安装了MongoDB,当时着急用,就用的默认配置,端口是默认端口,也没设置密码,还把bind_ip 设置成 0.0.0.0(允许所有ip远程连接)😅,后来就把这事抛到脑后了,也因为经常用无线网卡上网,ip经常是动态的,云服务器的安全组就放开了所有的ip。
做国外的项目经常会遇到时区转换的问题,这里简单针对遇到的时区问题做个记录,也希望对大家有所帮助,少走弯路。(本文设计开发语言为java)
分布式锁可以保证在分布式部署的应用集群中,同一个方法在同一时间只能被一台机器上的一个线程执行。
Java多线程知识点精华汇总
聚合支付系统(第四方支付),协议支付模块一直有个小问题。 商户调用协议支付接口,该模块会调用下层第三方支付渠道的协议支付服务,如果第三方支付渠道没有同步返回支付结果,则协议支付模块会通过定时任务向第三方支付渠道批量第查询支付结果(每查一笔订单就调一次第三方支付渠道,“批量”相当于并发调用第三方支付渠道)
在搭建SpringBoot项目的时候,原本已经集成了Dubbo并且测试也没问题,在加AOP的时候,发现Dubbo的provider不注册了。说明一下,本着极简原则,Dubbo的provider在这里用@Service注解来发布服务,并没有使用xml配置的方式。 这时用的springboot和dubbo的版本为:
任何系统都无法100%保证不出错误,线上系统报错之后,首先要做的就是在第一时间内找出问题,解决问题,定位线上问题最主要的途径就是看日志。
本来以为在Mac上搭建vue.js的环境挺简单的,谁知遇到各种问题(可能是RP问题),网上解决的方法也寥寥无几,这里就记录下遇到的坑。
本文是学习了《深入理解Java虚拟机》之后的总结,主要内容都来自于书中,也有作者的一些理解。一是为了梳理知识点,归纳总结,二是为了分享交流,如有错误之处还望指出。(本文以jdk1.7的规范为基础)。
本文是学习了《深入理解Java虚拟机》之后的总结,主要内容都来自于书中,也有作者的一些理解。一是为了梳理知识点,归纳总结,二是为了分享交流,如有错误之处还望指出。(本文以jdk1.7的规范为基础)。
加密、解密流程
下载fabric的docker镜像的时候,mac已经开了代理,但速度还是巨慢,原来iterm通过代理访问网络还要单独设置,在~/.zshrc 或者~/.bash_profile 配置文件中添加如下配置:
html页面导出pdf,本来是一件很简单的事情,在浏览器直接打印(Mac快捷键为⌘+p;Windows快捷键为ctrl+p),就可以把页面另存为pdf文件,但对于要经常把页面导出为pdf的用户来说并不友好,一个合格程序员的标准就是:做出来的软件猪都要会用,否则你就是猪。 调研了几种html导出pdf的实现方式,这里把要点记录下来分享下。
利用空余时间买了台服务器做了个小网站玩,今天访问了一下,加载巨慢,一看服务器运行情况,CPU飙到100%,按CPU消耗排序,排在第一的是一个名为“imWBR1”的进程,查了一下是一个挖矿木马,于是赶紧采取办法~
上文说了数据过敏主要有两个思路:第一个就是在序列化实体之前先把需要脱敏的字段进行处理,之后正常序列化;第二个就是在实体序列化的时候,对要脱敏的字段进行处理。
数据脱敏(Data Masking),又称数据漂白、数据去隐私化或数据变形。
开发过程中,Dubbo常见的问题记录。
Dubbo是一个分布式服务框架,以及SOA治理方案。其功能主要包括:高性能NIO通讯及多协议集成,服务动态寻址与路由,软负载均衡与容错,依赖分析与降级等。
HDFS(HadoopDistributedFileSystem):Hadoop分布式文件存储系统。
当前时代是数据爆炸的时代,全球各个网站、电子设备等都在源源不断地产生着大量数据.2006年数字世界项目统计得出全球数据总量为0.18ZB,2011年全球数据量1.8ZB,2013全球数据量4.4ZB,2014年全球数据总量在6.2ZB左右,2015年全球数据总量在8.6ZB左右,2016年12ZB左右,2020年的时候,全球的数据总量将达到40ZB。(小编的印象里,高中时用的手机内存卡是512M,当时就感觉已经很牛逼了,现在16G、32G都感觉不够用~)
本文讲述SLF4J和Logback日志框架。
Spring经常喜欢做的事情就是封装,经过spring的封装结出的一大果实——SpringDataJPA可以很大程度上提高我们持久层的开发效率。
年后项目提测了两次,每次提测都是通宵达旦完成~第二次通宵的原因主要可以用一个字来形容:等。 项目中对接了一个代付通道,每次测试代付功能都是发起代付请求之后,需要等十几到二十几分钟才能返回代付结果,甚至期间通道偶尔会出现一些问题,更尴尬的是等了好长时间,返回的结果是代付失败(代付通道测试环境返回的代付结果都是随机的)。
内部类就是在一个类A的定义内部定义的类B,类B可以跟类A的成员变量/方法同级,也可以定义在类A的方法中,等等。内部类一般包括这四种:成员内部类、静态内部类、局部内部类和匿名内部类。
在java中,HashMap是很常用的一种数据结构,最近重新温习了一下,这里以源码层面来分析总结一下HashMap,如有不合理或疑问的地方,欢迎沟通交流。
上篇文章简单总结了一下静态代理以及JDK和Cglib两种方式实现的动态代理。由此也延伸出了一个重要的编程思想:AOP。
代理,就是代替原来的角色去做事,下面这张图对代理的解释很生动形象:
在设计类的时候,往往把多个类公共的部分抽象出来,做成父类,其余的类继承它。 Spring的配置文件也一样,当多个bean有公共部分时,为了减少配置量,也可以把公共的部分抽出来,其余的部分都“继承”它。
上篇介绍了Spring IOC容器管理Bean的几种方式,IOC容器会帮助我们管理配置好的Bean及其之间的依赖关系。
**IOC(Inversion of Control)**:控制反转,怎么理解这句话呢?看一个例子就明白了。 一个操作用户的Dao层接口UserDao :
Redis是用C语言开发的一款高性能key-value数据库。它可以提供多种键值数据类型来适应不同场景下的存储需求。
在上篇文章的那张图上稍作修改,就可以很明了的看出来什么是二级缓存,它和一级缓存的区别是什么:
跟Hibernate一样,MyBatis提供了缓存查询(一级缓存和二级缓存)的功能,用于提高数据库性能,减轻数据库压力。
延迟加载(lazy load)是(也称为懒加载)Hibernate3关联关系对象默认的加载方式,延迟加载机制是为了避免一些无谓的性能开销而提出来的,所谓延迟加载就是当在真正需要数据的时候,才真正执行数据加载操作。——摘自百度百科《延迟加载》
上篇文章说了MyBatis中的一对多的查询方法,这里总结一下MyBatis中多对多的查询。
上篇文章说了MyBatis中的一对一查询的两种方法,这里总结一下MyBatis中一对多和多对一的查询方法。 业务还用上篇文章中的订单业务来分析,表结构如下: