JAVA
yhd723948277
这个作者很懒,什么都没留下…
展开
-
K8S暴露端口-dubbo应用远程Debug
1.Dockerfile增加环境变量ENV JAVA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,address=9901,server=y,suspend=n"2.暴露端口template_service.yaml- port: 9901 protocol: TCP name: debug targetPort: 9901 nodePort: 30901template_deployment.yaml原创 2021-10-09 11:05:51 · 521 阅读 · 0 评论 -
第三方登录验证
JWT方式(Google,Apple)获取公钥https://appleid.apple.com/auth/keyshttps://www.googleapis.com/oauth2/v3/certs公钥校验 public static Boolean verifyAppleLoginToken(String token,String subject) throws IOException { //先从token中解析出HEADER部分的kid,然后从苹果提供的公钥获取url中获原创 2021-08-13 12:08:54 · 639 阅读 · 0 评论 -
k8s内docker使用arthas
1.下载并解压wget -c https://github.com/alibaba/arthas/releases/download/arthas-all-3.5.1/arthas-bin.zipunzip arthas-bin.zip2.下载jdkapk add openjdk83.非首进程执行jar//以sh的方式执行RUN echo "/usr/local/tomcat/bin/catalina.sh run" > start.sh \ &原创 2021-06-11 13:53:38 · 1609 阅读 · 0 评论 -
docker内使用jdk时,Unable to get pid of LinuxThreads manager thread
1.安装JDKapk add openjdk8 2.已非直接运行方式编写dockerFile,让进程以非pid 1执行RUN echo "/usr/local/tomcat/bin/catalina.sh run" > start.sh \ && chmod 777 start.shCMD ./start.sh原创 2021-06-11 13:41:17 · 1207 阅读 · 1 评论 -
Illegal mix of collations
Illegal mix of collations (utf8mb4_bin,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation ‘=’方案一:修改数据库字符集collation_connection后重启方案二:如果不想重启数据库可在jdbc链接后增加connectionCollation原创 2021-06-07 18:03:12 · 241 阅读 · 0 评论 -
sharding-jdbc异步执行bug UnsupportedOperationException
Cause: java.lang.UnsupportedOperationException: Cannot support database type ‘MySQL’注册时异步bug,优先注册即可NewInstanceServiceLoader.register(ShardingParseEngine.class);原创 2021-06-01 16:18:31 · 1336 阅读 · 1 评论 -
sharding-jdbc特殊参数设置
部分参数反射时没有set方法,可通过connectionProperties间接设置DruidDataSource源码spring.shardingsphere.datasource.master1.connectionProperties=druid.initConnectionSqls=select 1;原创 2021-06-01 16:05:54 · 292 阅读 · 0 评论 -
JAVA远程操作-DEBUG
1.监控-Djava.rmi.server.hostname=127.0.0.1 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssl=false-Dcom.sun.management.jmxremote.authenticate=false2.debugJVM参数-Xdebug -Xrunjdwp:transport=dt_sock原创 2020-09-18 17:57:05 · 171 阅读 · 0 评论 -
JAVA远程监控调试
JAVA远程监控调试1.监控-Djava.rmi.server.hostname=127.0.0.1 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssl=false-Dcom.sun.management.jmxremote.authenticate=false2.debug原创 2020-09-08 19:54:00 · 132 阅读 · 0 评论 -
Arthas 线上debug
https://alibaba.github.io/arthas/commands.html查看参数调用结果watchwatch demo.MathGame primeFactors “{params,returnObj}” -x 2查看调用链trace原创 2020-05-08 16:08:08 · 1095 阅读 · 0 评论 -
es自定义分数
日后补充原创 2020-03-13 14:27:51 · 913 阅读 · 0 评论 -
zk常用命令
ls目录create创建get获取set设置delete删除rmr递归删除dubbo 2.7.1升级至2.7.3会有一个异常KeeperException$NotEmptyException: KeeperErrorCode = Directory not empty for删除对应zk对应node即可...原创 2020-03-13 14:25:02 · 396 阅读 · 0 评论 -
java探针
注入字节码的一种方式,日后补充原创 2020-03-13 14:15:52 · 180 阅读 · 0 评论 -
jvm执行耗时长分析
1.ps -ef | grep java查找对应java程序pid2.jstack -l pid分析执行栈信息java.lang.Thread.State: WAITING 中可以看到等待锁信息java.lang.Thread.State: RUNNABLE 中可以找到正在执行且耗时的堆栈信息...原创 2020-01-09 21:20:18 · 658 阅读 · 0 评论 -
Sharding-JDBC数据源初始化卡死在{dataSource-X} inited
遇到一个问题,排查了比较久, 如果有遇到类似的问题,可以参考一下:问题描述:Sharding-JDBC在只有一个主从数据源的情况下会扫描数据库全表,如果该库建表较多(如:单库分1024张表),会造成数据源初始化接近半小时之久.解决方案:增加一个主从数据源指向相同的库....原创 2020-01-07 20:18:06 · 2827 阅读 · 4 评论 -
mysql时区问题-服务器与数据库不同时区
jdbc增加 &useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC原创 2019-12-10 20:06:30 · 1229 阅读 · 0 评论 -
idea 实用插件和快捷键记录
插件mongo pluginAlibaba Java Coding Guidelines – 代码审核Alibaba cloud toolkit – 上传工具maven help – maven 依赖树查看快捷键查找操作 – find action – shift+command+A查看调用树 – Call Hierarchy – control+option+H显示类方法 – s...原创 2019-09-06 12:04:17 · 274 阅读 · 0 评论 -
docker镜像打包jar以及迁移
1.准备好jar包work.jar2.准备好Dockerfile,与work.jar同一目录FROM java:8MAINTAINER yuhuadongCOPY work.jar /work.jarCMD java -jar /work.jar > work.log3.打包镜像docker build -t yuhuadong/work:1.0.0 .4.保存镜像doc...原创 2019-07-26 18:27:52 · 539 阅读 · 0 评论 -
JAVA反射修改private,final的值
JAVA通过反射修改private,final的值以下是两个类,我们需要对他的值进行修改class PrivateName { private String name = "init"; public String getName() { return name; }}class FinalName { public final...原创 2018-09-12 15:08:29 · 2645 阅读 · 0 评论