自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 资源 (1)
  • 收藏
  • 关注

原创 HOUR_OF_DAY: 2 -> 3问题总结

科普小知识:添加链接描述问题描述生产连续多天归档失败,查看日志发现报错如下图问题复现将有问题的数据导入测试环境执行归档,未复现观察日志发现执行归档使用的mysql驱动为weblogic自带的mysql-connector-java-commercial-8.0.14.jar,并不是我们指定的mysql-connector-java-5.1.46.jar本地改为mysql-connector-java-commercial-8.0.14.jar进行测试,复现问题将驱动包升级为mysql-co

2021-07-19 22:52:27 2930

转载 时区小知识

作为一个程序员,不可避免的会接触到时区,那我们对时区又有多少了解呢,跟随文章来了解下吧GMT:Greenwich Mean Time格林威治标准时间 ; 英国伦敦格林威治定为0°经线开始的地方,地球每15°经度 被分为一个时区,共分为24个时区,相邻时区相差一小时;例: 中国北京位于东八区,GMT时间比北京时间慢8小时。UTC:Coordinated Universal Time世界协调时间;经严谨计算得到的时间,精确到秒,误差在0.9s以内, 是比GMT更为精确的世界时间DST:Daylight

2021-07-19 22:11:25 612

原创 IOP、seata、zeebe分布式事务解决方案对比

一、分布式事务背景随着业务的快速发展,网站系统往往由单体架构逐渐演变为分布式、微服务架构,而对于数据库则由单机数据库架构向分布式数据库架构转变。此时,我们会将一个大的应用系统拆分为多个可以独立部署的应用服务,需要各个服务之间进行远程协作才能完成事务操作。SAGA模式适用场景:业务流程长、业务流程多 参与者包含其它公司或遗留系统服务,无法提供 TCC 模式要求的三个接口优势:一阶段提交本地事务,无锁,高性能 事件驱动架构,参与者可异步执行,高吞吐 补偿服务易于实现缺点:不保证隔离

2021-04-06 08:21:51 2051

原创 seata介绍

Seata 是什么?Seata 是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。Seata 将为用户提供了 AT、TCC、SAGA 和 XA 事务模式,为用户打造一站式的分布式解决方案。...

2021-04-04 21:14:23 627

原创 mysql启动服务报Found option without preceding group in config file

一、问题描述net start mysql的时候报了下面的错误:mysql: [ERROR] Found option without preceding group in config file F:\mysql-8.0.13-winx64\my.ini at line 1.mysql: [ERROR] Fatal error in defaults handling. Program aborted!二、解决方法后来查找资料找到了原因,因为mysql里面的配置文件my.ini文件格式是

2021-04-04 09:47:32 893

原创 Mysql8 报错:ERROR 1193 (HY000): Unknown system variable 'tx_isolation'

以前查询mysql隔离级别一直使用select @@tx_isolation,升级到mysql8后执行报ERROR 1193 (HY000): Unknown system variable 'tx_isolation',查了一下原来是新版本将变量更名为transaction_isolation,特此记录一下。...

2020-03-29 23:12:47 253

原创 踩坑记之6666端口

测试环境搭建应用,不料踩了6666端口的坑,特此记录一下。现象:1.使用6666端口,程序启动日志正常,通过chrome访问报ERR_UNSAFE_PORT,但是使用httpclient及jmeter等测试可以正常访问更换18080端口后浏览器可以访问解疑:在网上查找关于ERR_UNSAFE_PORT的资料chrome默认非安全端口列表,找到了答案解决方式:1.使用其他...

2020-03-15 22:55:47 2018

转载 Linux端口分配

Linux系统的端口号的范围为0–65535,不同范围有不同的意义。0 不使用1–1023 系统保留,只能由root用户使用1024—4999 由客户端程序自由分配5000—65535 由服务器端程序自由分配如何使应用程序不再关心服务所使用的端口号?1)确定服务程序名称,协议,端口号2)在/etc/services中配置1)中信息3)应用程序可以不直接使用端口号...

2020-03-15 22:52:35 2179

原创 默认非安全端口列表

Google Chrome 默认非安全端口列表,搭建网站要建议尽量避免以下端口: 1, // tcpmux 7, // echo 9, // discard 11, // systat 13, // daytime 15, // netstat 17, // qotd 19, // chargen 20, // ft...

2020-03-15 22:39:45 955

转载 linux中$0 $1 $? $#等代表的含义

$0 这个程式的执行名字$n 这个程式的第n个参数值,n=1..9$* 这个程式的所有参数,此选项参数可超过9个。$# 这个程式的参数个数$$ 这个程式的PID(脚本运行的当前进程ID号)$! 执行上一个背景指令的PID(后台运行的最后一个进程的进程ID号)$? 执行上一个指令的返回值 (显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误)$- 显示shell使用的当前选项...

2020-01-20 17:56:25 833

原创 java文件监控

目前java中的文件监控方案主要有:jdk中的新增APIWatchService API 通过JNI调用底层接口的jnotify Apache Commons中的FileAlterationObserver

2020-01-14 15:59:38 134

转载 shell脚本之if

shell脚本if判断变量介绍shell脚本if判断变量介绍变量含义[ -a FILE ]如果 FILE 存在则为真[ -b FILE ]如果 FILE 存在且是一个块特殊文件则为真[ -c FILE ]如果 FILE 存在且是一个字特殊文件则为真[ -e FILE ]如果 FILE 存在则为真[ -f FILE ]如果 FILE 存在...

2020-01-10 11:22:01 149

原创 url中使用特殊字符

web 开发中通过问号(?)方式在浏览器地址栏中传值时。浏览器是通过“&”来区分问号后的参数个数的。 如果出现传值参数中带有“&”时,在接受页面就会出现错误,类似如下请求路径:/next.jsp?param1=hendhs89&furej & param2=sss参数param1中含有转义字符“&” ,这样会导致被请求页的参数接收错误。在传值前 通过...

2019-06-26 19:28:43 489

转载 linux命令之man及ubuntu下man

Linux man命令的使用方法(整理收集自网络)Linux提供了丰富的帮助手册,使用Linux man命令来查看一些不熟悉的命令的使用方法,还可以用来查询系统库文件中的一些函数定义和使用方法。Linux man中的man就是manual的缩写,用来查看系统中自带的各种参考手册,但是手册页分为好几个部分,如下所示:1Executable programs or shell com...

2019-06-22 15:07:23 1686

转载 【转】centos7 boot空间不够用的解决方案

【转自】https://blog.csdn.net/wangganggelian/article/details/49848305boot目录相信当家都不会陌生,一般系统里面都会有一个boot目录,它主要是存放一些系统的内核的配置文件,以及启动管理程序GRUB的目录。一般情况下,在我们分区的时候,boot的目录都不会太大,一般默认的好像之后100M(我自己分了一个200M,不够用,早知道分大一...

2019-06-20 11:20:14 993

原创 mysql求varchar类型的最大值(或按照varchar类型排序)

工作中为了方便后续扩展,建表时将数字类型定义为varchar类型进行存储,但是在排序时会乱序,这里是因为mysql默认order by 只对数字与日期类型可以排序演示:一、数据初始化CREATE TABLE `testvarcharmax` ( `age` varchar(32) DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8;...

2019-05-31 17:53:33 1825

转载 Mysql之binlog日志说明及利用binlog日志恢复数据操作记录

众所周知,binlog日志对于mysql数据库来说是十分重要的。在数据丢失的紧急情况下,我们往往会想到用binlog日志功能进行数据恢复(定时全备份+binlog日志恢复增量数据部分),化险为夷!一、简单了解binlogMySQL的二进制日志binlog可以说是MySQL最重要的日志,它记录了所有的DDL和DML语句(除了数据查询语句select),以事件形式记录,还包含语句所执行的消耗的时...

2019-05-30 09:45:01 228

原创 DML、DDL、DCL的区别

一、DMLDML(data manipulation language)数据操纵语言:    就是我们最经常用到的 SELECT、UPDATE、INSERT、DELETE。 主要用来对数据库的数据进行一些操作。SELECT 列名称 FROM 表名称UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值INSERT INTO table_name (列1, 列2...

2019-05-28 16:38:00 90

转载 混沌工程

最近看到 Netflix 的混沌工程的介绍,感触颇深。在 TiDB 里面,我们为了保证系统的健壮性,也做了很多工作。在内部我们开始叫做 stability test,后来进化成 Schodinger 平台。之前我一直苦于没有没法对我们做得工作进行归类,毕竟它可能是一个 test,但又比 test 做得多一点,现在知道,原来我们一直做的其实算是一门工程实践。既然是工程,那么就会有方法论,也就能详...

2019-05-09 07:45:36 634

转载 蓝绿发布、滚动发布、灰度发布等部署方案对比与总结

在项目迭代的过程中,不可避免需要进行项目上线。上线对应着部署或者重新部署,部署对应着修改,修改则意味着风险。目前有很多用于部署的技术,有的简单,有的复杂,有的得停机,有的不需要停机即可完成部署。本文将对目前常用的部署方案做一个简单的总结。蓝绿发布(Blue/Green Deployment)1. 定义蓝绿部署是不停老版本,部署新版本然后进行测试。确认OK后将流量切到新版本,然后老版...

2019-05-05 11:24:41 433

原创 MySQL数据类型之DATE,DATETIME和TIMESTAMP研究

一、介绍DATE:DATE类型用于具有日期部分但没有时间部分的值。MySQLDATE以'YYYY-MM-DD'格式检索和显示值。支持的范围是'1000-01-01'到'9999-12-31'。DATETIME:DATETIME类型用于包含日期和时间部分的值。MySQLDATETIME以'YYYY-MM-DD hh:mm:ss'格式检索和显示值。支持的范围是'1000-01-...

2019-04-30 17:32:23 11316

原创 使用navicat连接MySQL报client dose not support authentication protocol requested by server;

使用navicat连接mysql报错如下:解决办法:1.登陆mysql服务器mysql -uuserName -Pport -p2.执行alter命令,修改用户信息alter user 'userName'@'localhost' identified with mysql_native_password by 'userPassword';3.现在就可以使用nav...

2019-04-30 14:34:19 468

原创 Spring EL表达式详细讲解及使用实例

一、简介Spring3中引入了Spring表达式语言—SpringEL,SpEL是一种强大,简洁的装配Bean的方式,他可以通过运行期间执行的表达式将值装配到我们的属性或构造函数当中,更可以调用JDK中提供的静态常量,获取外部Properties文件中的的配置二、用法1、文本表达式文本表达式支持: 字符串(需要用单引号声明)、日期、数字、布尔类型及null,对数字支持负数、指数及小...

2019-04-09 17:55:46 1801

原创 linux命令-find命令

【烦心啊】1.记得一个文件名称的一部分想找到该文件所在路径 2.想要查找某些字符在哪些文件中存在等时,你会怎样操作?是跟我之前一样问问同事还是一个目录一个目录查找,这种费时费力的操作不是一个程序员该有的,一个优秀的程序员首先要学会怎样偷懒,要懒出精髓。Linux find命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则fin...

2019-03-29 18:17:18 264

原创 linux命令之scp命令

Linux scp命令用于Linux之间复制文件和目录。scp是 secure copy的缩写, scp是linux系统下基于ssh登陆进行安全的远程文件拷贝命令。一、语法可以使用scp --help查看命令用法[root@localhost ~]# scp --helpunknown option -- -usage: scp [-12346BCpqrv] [-c ciph...

2019-03-29 07:33:37 1397

转载 Kubernetes应用部署策略实践

【摘要】Kubernetes是Google开源的Docker容器集群管理系统,为容器化的应用提供资源调度、部署运行、服务发现、扩容缩容等整一套功能。在应用部署这块,类似于其他系统,Kubernetes也提供了一些控制容器部署的方式,本文主要通过实践的方式介绍一下kubernetes的应用在部署时的部署策略。几...

2019-03-28 14:29:12 296

原创 设计模式之模板方法模式

一、介绍 1.1 定义 定义一个操作中算法的框架,而将一些步骤延迟到子类中,使得子类可以不改变算法的结构即可重定义该算法中的某些特定步骤。 1.2解决的问题 (1)提高代码复用性,将相同部分的代码放在抽象的父类中,而将不同的代码放入不同的子类中 (2)实现了反向控制 ,通过一个父类调用其子类的操作,通...

2019-03-26 09:21:10 126

原创 cron生成器

在网上找了很多生成cron表达式的资源,大多是在线生成的,但是公司没有外网,使用起来很麻烦,因此将网上的在线生成方式改为直接使用js方式实现该功能代码下载链接:https://pan.baidu.com/s/1IxblE-hZCY8UxtWj5eFKXw提取码:rlpx...

2019-03-18 20:41:19 887 2

原创 k8s Deployment配置文件详解

apiVersion: v1#必选,版本号,例如v1kind: Pod #必选,Podmetadata: #必选,元数据name: string#必选,Pod名称namespace: string#必选,Pod所属的命名空间labels:#自定义标签- name: string#自定...

2019-03-14 13:48:29 14571

转载 有状态对象与无状态对象的区别

转自:http://www.cnblogs.com/xubiao/p/6567349.html第一:基本概念:1、有状态就是有数据存储功能。有状态对象(Stateful Bean),就是有实例变量的对象,可以保存数据,是非线程安全的。在不同方法调用间不保留任何状态。2、无状态就是一次操作,不能保存数据。无状态对象(Stateless Bean),就是没有实例变量的对象.不能保存数据,...

2019-03-14 11:03:38 211

原创 cron表达式详解

最近使用quartz进行分布式任务调度,quartz支持cron表达式,配置起来更加灵活方便,在此记录一下cron表达式的用法。cron表达式用于配置cronTrigger的实例。cron表达式实际上是由七个子表达式组成。这些表达式之间用空格分隔。1.Seconds (秒)2.Minutes(分)3.Hours(小时)4.Day-of-Month (天)5.Month(月)...

2019-03-05 14:14:12 190

原创 idea goland2018.3 版本破解详细步骤(带插图)

1.下载 goland-2018.3 版本 到https://golang.google.cn/dl/ 下载 链接:https://pan.baidu.com/s/1zNv7WTB3ONhscVnn28uV9w  提取码:h22t  3.下载完毕,将JetbrainsIdesCrack-4.2-release-sha1.jar放置在一个不动的文件夹下将其路径复制下来。我放置的路...

2019-02-19 22:49:38 3363 2

原创 java字节码增强javaagent+javassist使用

引言作为一个运行时平台,平台的监控是保证平台稳定运行的重要一环。我们可以根据监控的日间交易总量、交易时间分布、服务响应时间、服务链路、服务异常率、sql执行时间、缓存命中率及服务器性能等数据进行相应调整,保证系统高可用监控的主体思路为进行埋点,实现方式有以下几点:1.硬编码,该种方式代码侵入性大,复杂度高,不可复用2.AOP,该种方式是在运行是进行的,性能损耗较大,可以复用3....

2019-02-14 16:29:16 2639

原创 zookeeper实战二(watcher通知机制,模拟应用服务器水平扩展)

在 ZooKeeper 中,引入了 Watcher 机制来实现这种分布式的通知功能。任何节点的变化(包含节点自身的增加,删除,数据更新,子节点的变化),我们都可以在关心的节点上注册一个watcher,当该节点的数据发生变化,zookeeper会查看该节点被哪些客户端监听并通知客户端进行相应的更新处理操作,这属于观察者模式。下面来谈谈我对观察者模式的理解:观察者模式必须包含两个角色,观察者与被观...

2019-01-06 17:48:29 300

原创 zookeeper实战一(下载、安装及简单使用)

一、下载方式一:官网下载 https://www.apache.org/dyn/closer.cgi/zookeeper/方式二:百度云 链接:https://pan.baidu.com/s/1HrFakvjKkgVHfvnsF2S15A 密码:ole4二、安装(解压即安装)文件目录如下注意:解压后conf目录结构如下需要增加zoo.cfg文件(复制zoo_samp...

2018-12-29 17:28:43 1192 1

原创 zookeeper原理

一、简介ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。ZooKeeper代码版本中,提供了分布式独享锁、选举、队列的接口,代码在zookeeper-3.4.3\src\recipes。其中分布锁和队列有Java和C两个版本,选举只有Java版本二、为什么要使用zk1.应用或多或少...

2018-12-29 16:49:57 120

原创 vmware设置静态ip地址

在vmware中安装了linux系统,每次重启之后ip会自动分配,使用putty、secureCRT连接时非常麻烦,因此想使虚拟机的ip地址固定不变。步骤如下:1.在vmware菜单栏选择编辑→ 虚拟网络编辑器,打开虚拟网络编辑器对话框,选择Net网络连接方式,随意设置子网IP,点击NAT设置页面,查看子网掩码和网关,后面修改静态IP会用到。注:上面的“使用本地DHCP服务……...

2018-12-25 16:52:27 8414 2

原创 初识mycat

一、mycat简介:Mycat 是一个开源的分布式数据库系统,是一个实现了 MySQL 协议的Server,前端用户可以把它看作是一个数据库代理,用MySQL 客户端工具和命令行访问,而其后端可以用MySQL 原生(Native)协议与多个 MySQL 服务器通信,也可以用 JDBC 协议与大多数主流数据库服务器通信,其核心功能是分表分库,即将一个大表水平分割为 N 个小表,存储在后端 MyS...

2018-12-25 11:33:15 132

原创 使用navicat连接mysql报client does not support authentication protocol requested by server解决办法

今天安装了mysql8.0.13,安装成功后使用navicat连接时报client does not support authentication protocol requested by server;consider upgrading MySQL client解决方案:步骤一:在黑窗口使用命令登录mysql步骤二:执行 use mysql;步骤三:执行alter u...

2018-12-14 14:09:06 483

原创 mysql更改数据库密码

情况一:知道root密码使用alter user 'root'@'localhost' identified by 'pass_123' 来修改root用户密码情况二:忘记密码根据官方文档,有以下两种方式修改密码(官方文档参见https://dev.mysql.com/doc/refman/8.0/en/resetting-permissions.html)方案一:执行初始化文...

2018-12-14 11:51:42 14240 1

八位全加器多种方法

EDA 程序,适用于初学者,用多种方法实现8位全加器的设计

2014-11-19

空空如也

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

TA关注的人

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