- 博客(37)
- 资源 (4)
- 收藏
- 关注
原创 算法 - 求最大连续子数组和起始下标
执行代码参见GitHubhttps://github.com/GloryXu/algorithm/tree/master/src/main/java/com/redsun/algorithm/subarraysum逛论坛无意中发现一个算法帖子,一时间也没想出更好的解决方式,搜索了下,整理下。暴力破解 @Override public void execute() { ...
2019-10-27 16:51:28
1644
原创 架构即未来 - 不得不了解的团队组织结构
组织的设置对于一个团队至关重要,一个团队的产出往往与之息息相关。当组织有利于工作的时候,效率就会得到提升;反之,当出现不必要的结层次且需要大量交流才能完成工作的时候,效率就会降低。职能型组织该组织结构层次分明优点List item缺点矩阵型组织优点缺点敏捷性组织优点缺点...
2019-10-26 15:46:13
942
原创 深入Dubbo源码 - SPI的使用与好处
背景相信阅读过Dubbo源码的同学应该看到在Dubbo中的很多接口上都有一个@SPI的注解,笔者也不例外,但是一直不知道这个注解具体是干什么的,为了解决什么问题,怎么去使用?网上简单检索了下,中文名:服务供给接口,详见下图(来自百度百科)。也许因为dubbo本身的功能强大,所以笔者也只是知道能dubbo可以自定义实现某些策略,比如负载均衡、序列化、线程池类型等等,但是还未正式在线上环境中使用...
2019-09-15 16:48:40
1397
原创 什么是API接口平台?作用是什么?
在每一个互联网总不会缺少统一的API接口平台,公司级、部门级等等。存在即是合理,那么一个接口平台诞生的背景是什么,为了解决什么问题?怎么解决?接口治理系统A调用系统B,双方测试各种联调,终于有一天调通了。相约着一起上线,上线当晚量小看不出问题,第二天上量之后,一顿报错,大家都慌了,赶紧重新走流程,紧急回退。一个流程下来到结束,个把小时没了,可想而知,研发小哥的心是崩溃的。如果整个调用链能做到秒...
2019-09-14 19:07:49
8762
原创 Hbase 0.96 客户端配置项说明
org.apache.hadoop.hbase.HConstants默认项默认值值备注编码方式UTF-8默认block大小64kbHFile’s default sizekey含义默认值hbase.zookeeper.recoverable.waittimezookeeper恢复的等待时间10000hbase.zooke...
2019-08-17 18:00:46
432
原创 logback自定义appender、policy实现输出日志的逻辑处理
以下只贴出核心代码,运行代码详见这里背景目前所在的一个组为api接口平台,需要对注册上的接口进行相应的性能监控。因为是中途接手的项目,对于接口性能的监控比较好奇,就花了点时间了解下,又学了一手,写了个例子,记录下。代码结构概览文件名说明LogbackMain应用main启动类LogPrint业务类(需要打印日志的类)HandleAppenderl...
2019-07-07 16:54:31
2958
原创 深入Dubbo源码 - Dubbo消费者调用过程
本文样例代码详见这里。另,可以查看其他的Repository,也可关注微信公众号,刚开始搞,欢迎交流探讨学习~之前已经学习了,Dubbo是怎样加载配置文件的,怎样初始化Bean的。那只是Dubbo真正运行的准备工作,并不设计Dubbo的核心,笔者也并不是很了解,只是为了面试而准备的那些泛泛而谈。现在一步步的来研究学习咯,定心静气凝神~~开始invoke了...
2019-03-14 09:56:06
866
原创 mybatis自动生成mapper、dao和entity文件
mybatis是代码开发中常用的ORM框架,但是常用的三类文件靠手动生成很繁琐,一个配置不当就可能导致运行时报错(因为是动态代理实现,使用在编译期并不会报错),运行时报错有时候错误很宽泛,很难定位到具体原因。本篇提供项目使用的生成方法,供大家参考。generatorConfig.xml解析文件generatorConfig.xml内容如下<?xml version="1.0" enc...
2019-03-08 16:17:22
733
原创 深入Dubbo源码 - Dubbo配置文件解析
本文代码:点这里从16年开始接触Dubbo,刚开始觉得很神奇,配置非常简洁,与Spring配置无缝衔接。上网各种搜索,Zookeeper + Provider + Consumer,测试项目跑起来了,很开心。但是对于源码总是狠不下心学习,那么多类,那么多英文注释,吓退我了。最近终于狠下心来一点一点的Debug代码,终于有了点收货,记录下。Dubbo配置文件DemoProvider配置文件...
2018-12-24 22:45:42
656
原创 Git/IDEA 更改密码
大公司的开发,一般都会要求密码定期更换,在更换之后难免就会发生老密码不可用的情况,在使用idea提交或者拉去密码都会提示“授权失败”。进入控制面板搜索“凭据管理器”选择Windows凭据win10如下:寻找对应的密码并更新...
2018-12-19 20:57:29
432
原创 vue+element-ui+xlsx实现前端校验上传的Excel文件
标题背景代码历程失败的代码发现问题优化的代码微调后的代码执行成功总结背景项目中需要校验上传的Excel模板是否符合规范。一开始的想法是在后端进行校验,但是后来想到一个跑批的文件最大是2M,如果放置在后端校验,对于不规范的文件,这2M的传输也就白费了,同时,对于用户的体验也很不好,就想把校验放置在客户端,不合乎规范的文件直接拒掉,节省带宽同时客户体验也有所改善。代码历程项目是使用vue+el...
2018-10-21 14:33:42
16635
12
原创 Centos安装mysql
下载mysql链接:https://dev.mysql.com/downloads/mysql/5.7.html#downloads 根据实际情况填写信息,我的信息如下图 选择第一个Bundle进行下载 安装上传至虚拟机并解压tar -xvf mysql-5.7.22-1.el7.x86_64.rpm-bundle.tar,得到下图文件 查看官网指引(链接:http...
2018-06-20 22:40:56
174
原创 按深度打印二叉树节点数据
今天去今日头条面试,被问到了一个关于二叉树的问题,本身对算法并不擅长,结果想了半天没想出解决方法,经过面试官提点,才恍然大悟,回来后立马把实现写了出来,详见如下。面试题题目是这样的,有一个二叉树如下,然后按深度进行打印,应该是1,2,3,4,5,7,8 这个一下就能想到是递归,没问题,啪啪啪实现了一通,结果实现出来真实打印出来的却是:1,2,4,5,3,6,7,就实现失败了。...
2018-06-07 19:52:45
557
原创 为什么在foreach循环中进行元素remove/add操作,会抛ConcurrentModificationException 异常?
场景有如下代码运行: @Test public void testRemove() { List<String> list = new ArrayList<String>(); list.add("1"); list.add("2"); for (String item : list)...
2018-04-15 20:28:48
1841
4
原创 Java常量的基本类型在字节码中的规范定义
以下内容来自《Java特种兵》 类型字符 对应类型 说明 B byte 代表字节,但不是Byte的意思 Z boolean 代表布尔值,同样不是Boolean值 S short C char I int J long F float D dou...
2018-04-13 19:51:12
669
原创 快捷支付/协议支付 交易流程设计
背景(本文所站的角度是第三方支付机构) 之前做过的支付类的快捷交易,各个银行开出的接口都不尽相同(包括签约和支付),有的需要1支完成(我们称之为签约确认/支付确认),有的需要2支完成(签约申请+签约确认/支付申请+支付确认),有的则需要3支完成(签约申请+签约短信+签约确认/支付申请+支付短信+支付确认)。设计以下所说的几支均是针对和银行侧的交互。 在签约和支付过程中,肯定少不...
2018-04-11 10:06:03
7771
转载 架构设计:系统间通信(22)——提高ActiveMQ工作性能(上)
原文地址:http://blog.youkuaiyun.com/yinwenjie/article/details/509555023、ActiveMQ性能优化思路上篇文章中的两节内容,主要介绍消息中间件ActiveMQ的安装和基本使用。从上篇文章给出的安装配置和示例代码来看,我们既没有修改ActivieMQ服务节点的任何配置,也没有采用任何的集群方案。这种情况只适合各位读者熟悉ActiveMQ的工作...
2018-03-20 21:50:38
217
原创 TortoiseGit上传代码报错error:1407742E
报错过个节回来,敲个代码上传到Github结果报错,不管是Idea还是Tortoise上传都报如下错:fatal: unable to access 'https://github.com error:1407742E :ssl routines:ssl23_get_server_hello:tlsv1 alert protocol version百度了也都百度不到,正好前几天看到...
2018-02-23 15:28:13
7030
4
原创 SimpleDateFormat中的YYYY和yyyy引起的parse和format的错误输出
SimpleDateFormat的parse方法输出错误在编码过程中发一个异常现象,SimpleDateFormat的parse方法总是输出当前年份的第一天。 仔细发现是因为在new SimpleDateFormat时使用了YYYY,而不是yyyy,具体现象及代码实现如下: @Test public void testYandy() {// String d...
2018-02-12 15:48:36
3488
原创 for 循环使用不当导致死循环,CPU激增
CPU激增最近发现生产上的某些台服务区CPU激增,跟着内存也增长的比较厉害,就跟踪了下(CPU过高查询方法此处不再赘述,自行百度)发现线程卡在某一方法处,如下: 代码看了这个方法的代码,原来是一个for循环中的代码,就猜想可能是死循环了,如下: public static String getGMTNumOfYear(Date yyyyDateTime) throws ParseExcept
2018-01-03 19:42:15
3294
原创 spring-cloud-config + spring-cloud-bus实现动态刷新集群配置
本文以rabbitmq来实现消息传递 安装rabbitmq请移步:http://blog.youkuaiyun.com/red_sheeps/article/details/78386303 以下demo代码详见:https://github.com/GloryXu/test-spring-boot准备项目及模块首先得需要一个配置中心,就是git的一个专门存放配置的项目,如:config-repo,用于c
2017-10-29 18:23:24
17365
11
原创 RedHat 安装RabbitMQ
参考:http://bbs.chinaunix.net/thread-4146675-1-1.html 参考:http://www.cnblogs.com/silent2012/p/5329591.html(以下均以root用户执行)1.安装配置epel源rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.no
2017-10-29 16:47:04
3866
原创 定时器机制及锁实现
应用场景在需要定时执行任务时就需要代码实现定时器任务,但是现在的系统大多是分布式系统,N台业务逻辑服务器同一时刻执行任务,如果不作处理,务必会造成资源的严重浪费,严重情况还会引起业务的失败。所以此时就需要实现分布式锁来保证同一时刻只有一台服务器执行该任务,不仅节约了系统资源,在保证高可用的情况下,还能正常的保证业务逻辑的实现。代码实现定时器第一步设置需要实现定时任务的bean与需要执行的方法名
2017-10-24 21:50:21
2159
原创 Git Branch分支的使用
今天和同事一起讨论起Git分支的使用,之前也讨论过,但是结果一直不理想,今天的讨论还算是初见成效,随即记录下。希望对读者有所帮助,也欢迎一起讨论。场景相信每个公司都会有很多套环境(DEV,TEST,UAT,PROD等等),也会同时很多个功能需求,功能需求有缓有急,导致上线时间也不尽相同。如果每个功能服务足够原子化,与其他的模块耦合度不高也会好点,但是如果某个项目很重很大,版本的运维成本就会成指数式上
2017-10-24 21:26:14
562
原创 spring-cloud之eureka注册中心及服务发布
最近在看spring cloud相关技术,刚看到eureka部分,记录下。对于spring-cloud,让开发者只关注自己的业务逻辑,不再因为配置文件的繁琐而忧愁。实现注册中心eureka-server比较简单,重点在于配置文件application.ymleureka-server配置文件server: port: 1111eureka: client: r
2017-09-17 15:15:36
754
原创 错误: 找不到或无法加载主类
1.从github上导入一个项目,idea执行时一直报错 2.尝试在项目目录上更改目录为“Sources Root”3.再次执行,成功!
2017-08-27 18:02:39
2377
原创 Python Unknown SDK home path 解决方法
最近学习python,在idea上安装了插件,但是一直会遇到这个问题:上网搜了一下,说是要在环境变量path中配置PYTHON_HOME,配置完成之后还是未生效。后来尝试下更新下idea的python插件,就成功了,详细步骤如下:1.查看idea版本2.下载对应的python插件(下载链接:https://plugins.jetbrains.com/plug
2017-07-26 13:11:42
4054
转载 Linux下redis的安装
原文链接:点击打开链接第一部分:安装redis 希望将redis安装到此目录 1/usr/local/redis希望将安装包下载到此目录 1/usr/local/src那么安装过程指令如下:
2016-05-24 21:03:24
3968
原创 Spring 父类bean中的static属性值继承至子类bean中
最近遇到一个问题,在父类中用到一个属性,在子类运行父类方法的时候,如果给子类bean也注入该值,则该值会有多份,这样就没必要了,经人指导说是,在父类中,将这个值定义成static,子类不需注入也能获取该值。父类中的两个属性: private static String str; private static int intNum; xml配置文件:
2016-05-22 20:21:11
1076
原创 Spring ClassPathXmlApplicationContext getBean创建实例
之前接触的项目大都是以spring注解来进行开发,用到的配置文件加载完也没太过在意spring bean的创建,无意中发现是在第一次getBean()时创建实例。测试代码如下:@Test public void testD(){ ApplicationContext context = new ClassPathXmlApplicationContext("test/extendbean
2016-05-19 23:27:50
2097
原创 Project facet Java 1.8 is not supported by target runtime Apache Tomcat v7.0.
今天给web项目换了jdk版本之后发型,一直报了错,后来在window下找了Server下的配置,终于解决问题:在edit目录将jre更改和项目jre一致,然后再project-->clean成功解决。
2016-05-12 23:34:51
3107
1
原创 mysql5.7安装Table 'mysql.user' doesn't exist
mysql5.7安装Table 'mysql.user' doesn't exist
2016-03-26 17:47:25
5458
原创 ORA-00907: 缺失右括号
好久没写sql脚本创建oracle表,之前也是没注意,最近写了一个创建表语句如下:CREATE TABLE jc_task ( task_id number(11) primary key, task_code varchar2(255) default NULL, task_type number(1) NOT NULL default '0', task_name va
2016-03-26 13:12:01
1425
原创 Eclipse中Maven新建web项目报错Could not calculate build plan:Plugin org.apache.maven.plugins...
今天用maven新建了一个web项目,但是一直报了这个错,如下图,点OK之后的pom文件还是同样的错,找了下资料,报错消失:修改pom文件中的build标签如下: qrw-main org.apache.maven.plugins maven-war-plugin 2.3 ${project.
2015-12-06 00:02:36
9340
原创 Spring Mvc web.xml中设置了字符编码,中文依旧乱码
最近,小白的我看了点SpringMVC,跑了起来,可是jsp中文到了Controller就会乱码,看了下,jsp页面和web.xml中都设了utf-8,Tomcat的字符编码也都设了utf-8,可还可为什么乱码,百思不得其解。之前web.xml代码如下: CharacterEncodingFilter org.springframework.web.filter.Charact
2015-07-01 20:16:07
5519
原创 input的onclick事件调用报错Uncaught ReferenceError: XXX is not defined
这个问题遇到两三天了,就是找不出来原因,网上了也找了好多相关的文章,都不能解决。在chrome上报的是Uncaught ReferenceError: login is not defined,在IE上报的则是SCRIPT5007: 属性“login”的值为 null、未定义或不是 Function 对象,代码如下:
2015-01-21 19:21:03
69636
6
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人