- 博客(177)
- 收藏
- 关注
翻译 Javassist问题总结
Javassit提供了运行时操作Java字节码的方法,其效率低于asm。javassist主要是提供了代码级别的修改(也有bytecode级别),相比与asm的字节码级别的修改,学习成本低,开发效率高。因此,在实际应用中javassist是一个非常不错的选择。以下是在使用javassist的过程中碰到的问题及处理方法: 1、ClassLoader问题 我们知道java中有ExtC...
2021-05-08 15:45:34 801
原创 JRebel使用及JRebel-JVMTI [FATAL] Couldn‘t write to C:\Users中文问题
服务器地址监听服务器地址:http://jrebel.cicoding.cnGUID生成器:http://jrebel.cicoding.cn/guid监听配置格式:http://jrebel.cicoding.cn/GUID生成的如下:http://jrebel.cicoding.cn/4B068EB5-0941-4645-1E98-FC077D530A61用户名中文问题:JRebel-JVMTI [FATAL] Couldn’t write to C:\Users方式一:点击菜单He
2020-07-28 17:37:48 8358 4
原创 hibernate validator使用扩展
依赖包: <!--jsr 303--> <dependency> <groupId>javax.validation</groupId> <artifactId>validation-api</artifactId> ...
2020-05-08 14:12:12 1157
转载 RSA加密、解密、签名、验签的原理及方法
一、RSA加密简介RSA加密是一种非对称加密。可以在不直接传递密钥的情况下,完成解密。这能够确保信息的安全性,避免了直接传递密钥所造成的被破解的风险。是由一对密钥来进行加解密的过程,分别称为公钥和私钥。两者之间有数学相关,该加密算法的原理就是对一极大整数做因数分解的困难性来保证安全性。通常个人保存私钥,公钥是公开的(可能同时多人持有)。二、RSA加密、签名区别加密和签名都是为了安全性考虑,...
2020-03-26 16:06:59 519 1
原创 Java动态修改Enum实例
本文链接:https://www.javaspecialists.eu/archive/Issue161.htmlhttp://www.hankcs.com/program/java/enum-java-examples-of-dynamic-modification.html
2019-11-12 18:33:59 1028
原创 Arthas使用
官方文档:https://alibaba.github.io/arthas/Arthas的一些特殊用法文档说明Java 中冷门的 synthetic 关键字原理解读
2019-11-12 17:39:25 1016
原创 Nacos Config原理解析
参考链接:https://www.jianshu.com/p/38b5452c9fechttps://www.jianshu.com/p/acb9b1093a54
2019-11-12 17:30:42 952
转载 次时代Java编程(一):Java里的协程
http://geek.csdn.net/news/detail/71824这东西其实有很多名词,比如有的人喜欢称为纤程(Fiber),或者绿色线程(GreenThread)。其实最直观的解释可以定义为线程的线程。有点拗口,但本质上就是这样。我们先回忆一下线程的定义,操作系统产生一个进程,进程再产生若干个线程并行的处理逻辑,线程的切换由操作系统负责调度。传统语言C++ Java等线程其实与操作...
2019-04-10 13:17:59 547
转载 EXPLAIN 命令详解
https://www.cnblogs.com/gomysql/p/3720123.html在工作中,我们用于捕捉性能问题最常用的就是打开慢查询,定位执行效率差的SQL,那么当我们定位到一个SQL以后还不算完事,我们还需要知道该SQL的执行计划,比如是全表扫描,还是索引扫描,这些都需要通过EXPLAIN去完成。EXPLAIN命令是查看优化器如何决定执行查询的主要方法。可以帮助我们深入了解MySQ...
2019-04-03 18:32:54 326
原创 mac打开nh文件-cajviewer.dmg
https://pan.baidu.com/s/11I4Qv06K-3lb1L0U0Q5A4w
2019-04-03 14:32:20 1829 1
原创 调用bootstrap-markdown.js中的.getContent和.parseContent函数
html文件:<article id="article" class="post-content"></article><textarea hidden id="md" data-provide="markdown" name="content" th:utext="${blogModel.content}"&
2019-02-15 12:19:18 1098
原创 docker-compose
docker pull season/fastdfsdocker run -tid --name tracker -v /java/docker/fdfs/tracker/data:/fastdfs/tracker/data --net=host --restart=always season/fastdfs trackerdocker run -tid --name storage -v /...
2019-02-09 23:10:39 460
转载 vncserver too many security failures
在服务器上开了几个虚拟机,装了VNC之后,经常遇到报错too many security failures。查了下相关资料,原来是有人在暴力破解,触发了VNC的黑名单机制。重置黑名单,就能登录了。vncconfig -display :1 -set BlacklistTimeout=0 -set BlacklistThreshold=1000000display :指定桌面号Blacklis...
2019-01-18 19:36:19 4801
原创 javassist官方文档 中文
官方文档地址:http://www.javassist.org/tutorial/tutorial.html安装 谷歌翻译 插件 翻译网页即可看什么资料都不如看官方文档权威。。。
2019-01-17 23:27:48 1926
原创 链路追踪google dapper论文 中文
概述当代的互联网的服务,通常都是用复杂的、大规模分布式集群来实现的。互联网应用构建在不同的软件模块集上,这些软件模块,有可能是由不同的团队开发、可能使用不同的编程语言来实现、有可能布在了几千台服务器,横跨多个不同的数据中心。因此,就需要一些可以帮助理解系统行为、用于分析性能问题的工具。Dapper–Google生产环境下的分布式跟踪系统,应运而生。那么我们就来介绍一个大规模集群的跟踪系统,它是...
2019-01-14 22:47:26 1025
原创 docker elasticsearch踩坑总结
详细步骤可查看之前博客,,,0、docker 镜像无法下载 网络问题,修改/etc/sysctl.conf文件1、首先内存问题:加 -e ES_JAVA_OPTS="-Xms256m -Xmx256m"指定堆内存即可 6.x默认2g之前采用以下命令是可以启动成功的:docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9200:9200 ...
2019-01-05 20:27:26 2956
原创 elasticsearch max virtual memory areas vm.max_map_count [65530] is too low, increase to at le
ERROR: bootstrap checks failedmax virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]解决办法:修改配置sysctl.confsudo vi /etc/sysctl.conf添加下面配置:vm.max_map_count=65536...
2019-01-05 20:23:05 4455
原创 修改Docker容器启动配置参数
有时候,我们创建容器时忘了添加参数 --restart=always ,当 Docker 重启时,容器未能自动启动,现在要添加该参数怎么办呢,方法有二:1、Docker 命令修改docker container update --restart=always 容器名字2、直接改配置文件首先停止容器,不然无法修改配置文件配置文件路径为:/var/lib/docker/containers...
2019-01-05 19:51:14 47049 3
转载 docker从容器里面拷文件到宿主机或从宿主机拷文件到docker容器里面
1、从容器里面拷文件到宿主机? 答:在宿主机里面执行以下命令 docker cp 容器名:要拷贝的文件在容器里面的路径 要拷贝到宿主机的相应路径 示例: 假设容器名为testtomcat,要从容器里面拷贝的文件路为:/usr/local/tomcat/webapps/test/js/test.js, 现在要将test.js从容器里面拷到宿主机的/opt路径...
2019-01-03 23:41:51 1229
原创 Docker 数据存放位置
默认 Docker 的存放位置为:/var/lib/docker命令查看具体位置docker info | grep "Docker Root Dir"最简单方法是挂载分区到这个目录,因数据盘内有数据,采用修改镜像和容器的存放路径的方式达到目的。通过软连接来实现。停掉Docker服务:systemctl stop docker移动整个/var/lib/docker目录到目的路径:mv...
2019-01-03 22:13:17 12454 2
原创 修改无法启动的docker容器的配置
问题描述mysql在运行过程中报错,进入mysql容器修改配置文件时,单词拼错,导致mysql容器无法重新启动.解决思路由于docker无法进入已经停止的容器,所以只能曲线救国.先提交无法进入的docker容器使用临时终端启动新的镜像并修改相应文件,再次提交改容器将无法启动的docker容器中的内容复制出来使用新的镜像启动容器并挂载文件内容解决步骤提交已经死亡的mysql容器d...
2019-01-03 21:54:12 900
原创 docker安装elasticsearch及head插件
发现大家都喜欢简单的文章,,我也来刷刷访问量,,哈~使用 Docker 中国官方镜像加速*docker pull registry.docker-cn.com/library/elasticsearch查看镜像 IDdocker images运行-e ES_JAVA_OPTS=&amp;quot;-Xms256m -Xmx256m&amp;quot; //设置初始堆内存 和最大内存docker run -e ES_JA...
2019-01-02 08:39:09 4062 3
原创 docker无法访问网络下载镜像
重复踩坑记,,,好记性不如烂笔头,,, 可是我没有笔vim /etc/sysctl.conf添加:net.ipv4.ip_forward=1或sysctl -w net.ipv4.ip_forward=1重启网络systemctl restart networkok,若不行,请删除/etc/systemd/system目录下的docker.service 先备份...
2019-01-01 19:00:36 1382
原创 win7改win10系统0x0000001蓝屏
同上篇类似,,,https://blog.csdn.net/qq_35119422/article/details/855493201、将其中的OS Optimized Defaults改为other OS;2、”Boot Priority”均修改为U开头的相关的选项;3、SATA使用Compatible(兼容模式);...
2019-01-01 17:57:12 2693
转载 联想笔记本更换硬盘/改Win 7系统安装过程中报0x000000A5蓝屏
看字面意思应该是BIOS对ACPI的支持不完整,但是进BIOS转了一圈,也没看到哪里有跟ACPI相关的选项,去官网也没有找到笔记本的BIOS升级文件,正在着急,误打误撞地使用Win 8 PE引导成功,以为是Win 2003 PE对本机的支持不好,就直接进行了分区、格式化,并使用WinNTSetup进行了硬盘系统安装的准备工作。然而等机器重启后,几乎同样的事情再次发生了,只是字少了一些:由于...
2019-01-01 17:46:10 10754 3
转载 MySQL zip安装
MySQL 5.7.18 zip 文件安装过程1.下载路径https://dev.mysql.com/downloads/mysql/有账号登陆下载,没有账号:no thanks;just start my download2.解压放到指定盘中笔者:D:\mysql5.73.配置环境变量MYSQL_HOME:D:\mysql5.7在path 后面添加 ;%MYSQL_HOME%\...
2019-01-01 17:30:45 1001
原创 javaagent使用demo详解
好久没写了,伸个懒腰来~~javaagent又称java探针,结合javassist或asm等框架对字节码文件进行操作,从而更优雅的实现“AOP”等功能,减少对原代码的侵入性等。从而我们可以借此来实现微服务等的全链路追踪以及项目环境隔离等功能。好了话不多说,直接写示例吧:示例分为两个项目:1、agent项目:agentdemo,2、被代理项目agentclient我们要做的是:用agent项...
2018-12-19 14:36:34 2228 2
原创 CPU Cache的优化:解决伪共享问题
除了使用CAS和提供了各种不同的等待策略来提高系统的吞吐量外。Disruptor大有将优化进行到底的气势,它甚至尝试解决CPU缓存的伪共享问题。什么是伪共享问题呢?我们知道,为了提高CPU的速度,CPU有一个高速缓存Cache。在高速缓存中,读写数据的最小单位为缓存行(Cache Line),它是从主存(memory) 复制到缓字(Cache) 的最小单位,一般为32字节到128字节。如果两个变量...
2018-10-18 15:07:27 1364
原创 无锁的缓存框架: Disruptor
无锁的缓存框架: DisruptorDisruptor框架是由LMAX公司开发的一款高效的无锁内存队列。它使用无锁的方式实现了一个环形队列,非常适合于实现生产者和消费者模式,比如事件和消息的发布。在Disruptor中,别出心裁地使用了环形队列(RingBuffer)来代替普通线性队列,这个环形队列内部实现为一个普通的数组。对于一般的队列,势必要提供队列同步head和尾部tail两个指针,用于出...
2018-10-18 14:03:37 556
原创 jvisualvm中简单使用BTrace、Profiler
安装插件:菜单栏-工具-插件BTrace:右击需要btrace的程序–>trace-application/* BTrace Script Template */import com.sun.btrace.annotations.*;import static com.sun.btrace.BTraceUtils.*;@BTracepublic class TracingSc...
2018-09-27 18:58:37 1135
转载 最容易懂得红黑树及TreeMap实现
红黑树:https://blog.csdn.net/v_JULY_v/article/category/774945TreeMap实现:https://blog.csdn.net/chenssy/article/details/26668941
2018-09-27 14:17:48 321
转载 skiplist 跳跃表详解及其编程实现
skiplist 跳跃表详解及其编程实现:https://blog.csdn.net/daniel_ustc/article/details/20218489?utm_source=tuicool&utm_medium=referralredis专栏:https://blog.csdn.net/column/details/21480.html...
2018-09-22 16:31:39 245
转载 Redis的五种对象类型及其底层实现
Redis对象类型简介Redis是一种key/value型数据库,其中,每个key和value都是使用对象表示的。比如,我们执行以下代码:redis&gt;SET message "hello redis"其中的key是message,是一个包含了字符串"message"的对象。而value是一个包含了"hello redis"的对象。Redis共有五种对象的类型,
2018-09-22 15:31:49 197
原创 Java面试问题总结
Java基础:多态、C++虚函数Cloneableint / Integer 内存模型StringBuilder/String Buffer比较ArrayList/LinkedList/Vector比较HashMap/Hashtable/ConcurrentHashMap比较 原理对Exception的理解泛型 集合 迭代器类加载、热加载ThreadLo...
2018-09-02 19:58:17 261 2
原创 Java实现简单的RPC框架
一、RPC简介 RPC,全称为Remote Procedure Call,即远程过程调用,它是一个计算机通信协议。它允许像调用本地服务一样调用远程服务。它可以有不同的实现方式。如RMI(远程方法调用)、Hessian、Http invoker等。另外,RPC是与语言无关的。RPC示意图![https://images2015.cnblogs.com/blog/522490/201510/5...
2018-09-02 13:26:44 300
转载 linux IPtable防火墙 禁止和开放端口
linux IPtable防火墙 禁止和开放端口 转载自:http://hi.baidu.com/zplllm/item/f910cb26b621db57c38d59831、关闭所有的 INPUT FORWARD OUTPUT 只对某些端口开放。 下面是命令实现:iptables -P INPUT DROP iptables -P FORWARD DROP iptables -P ...
2018-08-30 16:40:47 3147
转载 Spring cloud 多版本控制及灰度发布
在我们使用spring mvc单体架构时, 我们可以通过uri,或者请求头做多版本路由,虽然同一个功能需要维护多个版本的接口,但是对于系统而言,不会因为新增一个接口版本而影响到老用户。当我们使用spring cloud构建微服务平台时,也希望能做到这一点,然而spring cloud并没有提供这个功能。在springcloud的微服务体系中,大多是使用eureka做为注册中心,ribbon做为...
2018-08-29 11:41:18 5693 1
原创 consul集群搭建及使用
下载consul: www.consul.io1、解压,设置环境变量,创建文件夹consul1、consul2、consul3,分别在其目录下创建basic.json配置文件:basic.json:{ "ports": { "http": 8500, "dns": 8600, "rpc": 8400, "serf_lan":...
2018-08-28 22:24:22 2367
原创 linux修改系统硬件时间
使用CentOS,遇到本地时间对不上,直接敲命令:date -s "2017-10-21 15:15:15"是立即生效了,但是重启后,系统时间还是原来的。修改了其一是没有办法奏效,必须两者都更改。1.date //查看本地2.hwclock --show //查看硬件的时间3.如果硬件的时间是对不上,那就...
2018-08-28 20:32:07 8770
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人