自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 资源 (1)
  • 问答 (4)
  • 收藏
  • 关注

原创 过来人的经验告诉你:程序员去外包与自研公司的区别

疫情之前,程序员培训异常火爆,培训班班班爆满,程序员高薪的职业吸引着外行不少人,甚至一些刚毕业的计算机学科的学生也通过培训找到高薪工作。我非科班,也是通过培训找到的程序员工作,如今作为程序员已经8年了,在我的影响下,至少有8位我的亲戚的弟弟妹妹们走上了这个岗位。而疫情之后,特别是二二年开始,很多行业都不景气,程序员这一行也不例外,经常听到很多大厂裁员的消息,23年,我老公和我弟弟都在裁员的大军里,我的薪水被降了了15%。碍于程序员的薪水还可以,现在培训出来还能不能找到工作呢?

2024-02-04 13:23:13 845

原创 java程序员的十年

一个java女程序员的10年

2023-11-09 22:38:56 329

原创 盘点那些开发中经常用到的git命令

盘点那些开发中经常用到的git命令

2023-11-09 17:52:11 160

原创 Java程序员工作中常用命令

Java程序员工作中常用命令

2023-02-01 16:32:14 382 3

原创 Java性能优化实战

实际工作中如何 优化接口性能

2023-02-01 16:30:22 406

原创 记一次元空间内存溢出问题

发现问题在工作中遇到了一个元空间内存溢出问题,问题出在一个用户输入Java文件,后台负责编译并执行Java文件的功能上,因为用户能随时对Java文件进行修改,所以我们每次执行这个文件的时候都会重新编译,new URLClassLoader来加载这个类,这样的话每次都是加载最新的Class,如果用同一个ClassLoader对象去加载同一个类,是不会重复去加载的。每调用一次这个执行接口,元空间就会增加一个class对象,随着调用次数增多,元空间就慢慢被沾满,这些Class对象却不能被卸载掉,为啥呢?按说Cl

2021-01-13 22:15:09 1818

原创 Springboot整合dubbo2.7.7

Springboot整合dubbo2.7.7pom.xml文件中添加依赖 <dependency> <groupId>org.apache.dubbo</groupId> <artifactId>dubbo-spring-boot-starter</artifactId> <version>2.7.7</version>

2020-08-04 17:24:20 1949 1

原创 seata AT模式之tm注册到seata server的流程

tm什么时候注册到seata server的seata的核心类GlobalTransactionScanner,也是一个BeanPostProcessor,如果使用的是seata-spring-boot-start.jar这个包,spring会给我们自动装配GlobalTransactionScanner,如果用的是seata-all.jar这个包,就需要我们手动把GlobalTransactionScanner注册到spring ioc上去。GlobalTransactionScanner又实现了I

2020-07-15 18:08:11 470

原创 seata AT之RM注册流程

seata是一款开源的分布式事务解决方案,这里主要讲解决方案其中的一种AT模式中客服端启动的时候是怎么向服务端注册RM资源管理器的源码分析。标题要使用AT模式,必须向spring ioc注入DataSourceProxy @Bean public DataSourceProxy dataSourceProxy(DruidDataSource druidDataSource){ return new DataSourceProxy(druidDataSource); }如果使用

2020-07-15 17:01:13 1549

原创 编译seata源码遇到的Non-resolvable import POM

idea导入seata后,发现有一个模块seata-serializer-protobuf,有些包一直下不下来,编译它一直报错:"C:\Program Files\Java\jdk1.8.0_172\bin\java.exe" -Dmaven.multiModuleProjectDirectory=E:\workspace\seata -Dmaven.home=D:\apache-maven-3.5.3 -Dclassworlds.conf=D:\apache-maven-3.5.3\bin\m2.c.

2020-07-12 22:55:46 912

原创 helm安装tiller镜像拉取失败

安装完helm后,安装tiller客户端,执行以下命令:helm init --upgrade --tiller-image registry.cn-hangzhou.aliyuncs.com/google_containers/tiller:v2.16.7 --stable-repo-url https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts注意用与helm相同的tiller版本。查看安装进度,可以看到tiller镜像拉取失败了。.

2020-06-02 13:28:41 2569

原创 centOS上安装nfs分布式文件系统

centOS上的nfs软件包叫:nfs-utils,同时包含了服务端和客服端,跟Ubuntu系统上的有区别。安装nfsyum install -y nfs-utils修改配置文件vim /etc/exports/usr/local/kubernetes/volumes *(rw,sync,no_subtree_check,no_root_squash)重启NFSservice nfs restart查看状态[root@hecs-x-large-2-linux-202

2020-05-31 17:01:51 209

原创 使用kubenetes安装ingress-nginx

下载ingress-Nginx的部署yaml文件登录git上的ingress-nginx:https://github.com/kubernetes/ingress-nginx.选择最新的一个tag.进入到deploy/static目录,下载其中的mandatory.yaml修改mandatory.yaml文件。主要修改镜像,因为国外的镜像没有翻墙下载不下来,改成阿里云的镜像:sed -i "s?quay.io/kubernetes-ingress-controller/nginx-ingres

2020-05-31 15:11:39 414

原创 kubernetes集群的服务器重启之后遇到的问题

kubernetes集群部署见我的上一篇博客。部署kubernetes集群的服务器重启之后,执行kubectl get nodes报错:[root@k8s-master ~]# kubectl get podsThe connection to the server [master_ip]:6443 was refused - did you specify the right host or port?查询进程,发现没有kube的进程启动:[root@k8s-master ~]# ps -aux

2020-05-26 21:15:31 3444

原创 CentOs7 上安装kubernetes集群

环境概述使用的是VM virtualBox安装虚拟机,镜像是centOs7.使用的kuberneters是v1.18.3.给虚拟机分配的内存是2核4G,master上安装kuberneters至少是2核。统一环境配置复制出一个镜像,命名为k8s,启动这个镜像,进行一下操作:临时关闭交换空间swapoff -a避免开机启动交换空间echo "vm.swappiness = 0">> /etc/sysctl.conf 关闭防火墙service firewal

2020-05-24 16:05:27 225

原创 idea2020安裝MybatisCodeHelper插件

1. 下载MybatisCodeHelper插件亲测这个版本可以用在idea2020上链接:https://pan.baidu.com/s/1WeQO4LKcSZtTOCBw2ntvvA提取码:hdvr2. 离线安装MybatisCodeHelper插件file->settings-plugins,选择工具按钮,从磁盘导入,选择下载好的zip插件包,这个是免费版的,功能没那么全,但是也够用了。然后重启idea就可以了3.激活插件在idea的database视图中,导入一个可用的数据库

2020-05-17 23:11:32 8951 5

原创 java开发中遇到的bug

遇到一个class类不存在的的问题,最后发现是这个类有有一个静态变量,在类初始化的时候会去获取一个配置文件中的值,然后这个文件不存在,就报错了,这个类加载失败,才会报class类不存在。...

2020-05-07 22:27:14 205

原创 Java VisualVM启动过程中遇到的问题

1 启动时报错“无法检测到本地java程序”原因:没有运行jvisualVM解决方法:以管理员的身份运行2 启动时报错“无法监测本地Java程序”原因:C:\Users\admin\AppData\Local\Temp 这个目录下以hsperfdata_开头的文件,后面的名字与用户名不一样,或者用户名存在大小写。解决方法:把这个文件hsperfdata_后面的文字改成与用户名一样。如...

2019-12-17 21:59:53 937

原创 Netty为实现高性能所做的那些事一

使用Netty必不可少的一个类:NioEventLoopGroup,它是一个处理I/O操作的多线程事件环,里面维护了多个EventLoop,当有事件发生的时候回选取其中一个EventLoop来处理这个事件,那么这个选取的算法是怎么实现的呢,其实很简单,是通过轮询来选取的。我们看一下Netty的源代码: @Override public EventExecutor next() ...

2019-11-10 23:30:17 211

原创 NIO零拷贝在windows系统中的内存限制问题

1. 遇到的问题在学习NIO零拷贝FileChannel.transferTo方法测试的时候,发现不管传递的文件有多大,最后服务器接收到的都只有8M。代码如下:// 服务端public class NewServer { public static void main(String[] args) throws IOException { InetSocketAddr...

2019-11-10 22:33:40 559

原创 Reactor模式的角色构成

Reactor模式一共由5种角色构成1. HandlerHandler对于Windows系统来说是句柄,对于Unix系统来说是描述符。本质上表示一种资源,是由操作系统提供的。该资源表示一个个的事件,比如说文件描述符,或是针对网络编程中的socket描述符。事件既可以来至于外部,也可以来自于内部。外部事件比如说客服端的连接请求,客服端发过来的数据符。内部事件比如说操作系统的定时器事件等,它本质...

2019-11-03 22:34:52 313

原创 springCloud学习过程中遇到的问题

springCloud学习过程中遇到的问题1. gateway配置令牌桶报错1. gateway配置令牌桶报错错误标志:Unable to find GatewayFilterFactory with name RequestRateLimiter原因:最后发现是spring-boot-starter-data-redis这个包没有导进来导致的...

2019-10-06 16:50:54 225 2

原创 idea配置Tomcat

idea中如何配置Tomcat在idea的工具栏中选择Edit configurations,然后在弹出的框中选择左上角的+号–》Tomcat Server–》Local。(如果没有Tomcat Server 选项,可以选择最后一项more)点击Configure,在Tomcat Home中选择本地tomcat的保存路径,然后点击OK选择部署到tomcat下的项目。Deployment–...

2019-08-11 00:15:45 173

转载 MySQL5.7绿色版(免装版)的初始化和修改密码

123J依情随手记录随笔 - 42, 文章 - 0, 评论 - 12, 引用 - 0MySQL5.7绿色版(免装版)的初始化和修改密码目录1.下载MySQL5.7.18绿色版 1.1下载链接 2.新建或清空data文件夹 3.安装服务 3.1打开cmd(管理员) 3.3安装服务 4.初始化数据库 5启动服务 6.客户端测试 7.配...

2019-04-28 20:08:50 807

原创 lombok插件的使用学习

Lombok插件使用1.      Lombok插件介绍简单来说,lombok提供了一些注解,帮助我们简化Java开发,特别是相当于POJO。2.      Lombok插件的安装2.1   在线线安装File-->Settings-->plugins-->Browserepositories  然后搜索lombok,点击install即可2.2   离线安装File-

2017-11-28 08:56:56 239

原创 17年9月Java软件工程师面试第四站

感觉一个问题都没有答对有没有,这是一家金融公司,问的都是一些比较底层的问题,先将问题整理如下:1. filter和listener的区别    当时有点懵,感觉他是不是想问filter与servlet的区别呀?回来后百度了一下,网上有篇 servlet/filter/listener/interceptor区别与联系 可以参考一下。2.MySQL实现可重复读的原理    这个问题扎

2017-09-13 16:11:23 195

原创 17年9月Java面试第二站

这次面试过程就不说了,直接上题:     首先是笔试题,一共10题,只记得8道,剩下2道忘了。     1.面向对象编程的特点        封装、继承、多态、抽象     2.写出util包下的5个常见类       Date、ArrayList、HashMap、HashSet、LinkedList    3.spring的特性       IOC AOP   4

2017-09-07 10:56:28 192

原创 17年9月Java软件工程师面试第一站

最近想换工作,昨天就去面试了,是一家较大的外包公司做华为外包项目的,去之前百度了一下,很多人说外包公司这不好那不好,尤其是华为的外包。再加上台风要来不来,还下着雨,就有点想打退堂鼓了,最后还是去了。    面试地点在龙岗,坐了两个小时的车,下了车后又走错路,兜兜转转了一个小时才到。招待的人说刚来了两人面试,面试官暂时走不开,让我等半个小时,既然来了,那就等呗。    大概还没到半个小时,面

2017-09-05 11:39:06 272

原创 安装FastDFS问题记录

fastDFS成功安装,测试文件上传也成功了,但是在配置nginx代理访问文件的时候,死活访问不了,发送请求过去半天没有响应。查看nginx进程,是起来的,tracker、storage进程都没有问题。试了各种方法,没有解决。据说可以找nginx的日志,找了半天没找到,就在nginx.conf文件中重新配置log日志文件路径:           重启nginx,没有新建日志文件(我在没有

2017-08-18 14:54:29 303

原创 Struts2框架详解第三课

Struts2框架详解第三课1.      Struts2中的拦截器1.1  拦截器的重要性Struts2中的很多功能是由拦截器完成的,比如servletConfig,staticParam,params,modelDriven等等,是AOP编程思想的一种应用形式。拦截器执行时机:1.2  自定义拦截器1.2.1         拦截器的类试图1.2.2    

2017-05-15 13:51:51 221

原创 Struts框架详解第二课

Struts框架详解第二课 1.      封装请求参数到正文中1.1  静态参数封装静态参数封装是指在struts.xml配置文件中,给动作类注入值,调用的是setter方法,动作类中要有相应的setter方法。它是由一个staticParams的拦截器完成注入的。动作类:public class UserAction extends Acti

2017-05-10 11:34:43 251

原创 Struts2框架详细用法第一课

1.     框架的意义所谓框架就是把一些繁琐的重复性代码封装起来,使程序员在编码中把更多经历放到业务需求的分析和理解上面。特点:封装了很多细节,使程序员在使用的时候会非常简单。2.     Struts2概述Struts2是Apache发行的mvc开源框架,是表现层框架。是Apache和openSymphony组织合并开发出来的,里面包含了WebWork2的核心和struts的一些特

2017-05-08 18:29:19 284

原创 注解的用法

注解:是用于描述程序如何运行以及在什么阶段来运行,注解在实际开发中最大的功能是用于替换配置文件,注解是jdk1.5的新特性,可以通过反射来让注解具有功能。1.      自定义注解public  @interface注解名{}例:public @interface MyAnnotation{}注解它的本质就是一个接口,这个接口继承Annotation接口。注解类反编译后:pub

2017-05-04 15:13:52 1212

acitivi bpm2的插件不爱喝ID很费劲的感觉

acitivi插件 acitivi插件

2018-04-11

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

TA关注的人

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