2021年1月6日
摘要:前言: 说到AJAX就会不可避免的面临两个问题,第一个是AJAX以何种格式来交换数据?第二个是跨域的需求如何解决?这两个问题目前都有不同的解决方案,比如数据可以用自定义字符串或者用XML来描述,跨域可以通过服务器端代理来解决。 但到目前为止最被推崇或者说首选的方案还是用JSON来传数据,靠JSONP 阅读全文
posted @ 2021-01-06 18:38 adolfmc 阅读(34) 评论(0) 推荐(0) 编辑
  2021年1月4日
摘要:遇到一个比较大的文本文件需要去除空行,首先想到的自然是正则表达式。偷懒去网上找了几个删除空行的正则表达式,填到EditPlus里居然都不能用...而且大多数的正则表达式都用到了"\r",也就是回车符,关于"\n"和"\r"的区别我以后再写,今天只是为了记录一个正则表达式。 ^[ \t]*\n 解释一 阅读全文
posted @ 2021-01-04 16:44 adolfmc 阅读(52) 评论(0) 推荐(0) 编辑
  2020年12月17日
摘要:1生成服务器端证书keytool -genkeypair -v -alias server -keyalg RSA -validity 3650 -keystore ./server.keystore -storepass 123456 -keypass 123456 -dname "CN=*.yu 阅读全文
posted @ 2020-12-17 09:11 adolfmc 阅读(32) 评论(0) 推荐(0) 编辑
  2020年12月14日
摘要:第一步:用户同意授权,获取code 第二步:通过code换取网页授权access_token以及openid 第三步:刷新access_token(如果需要) 第四步:拉取用户信息(需scope为 snsapi_userinfo) 阅读全文
posted @ 2020-12-14 20:35 adolfmc 阅读(18) 评论(0) 推荐(0) 编辑
  2020年12月9日
摘要:本文简单说一说JVM应如何调优。 Java语言本身的成功,除了天时地利人和,JVM功不可没。 毫不夸张地说,JVM是现代软件工程最成功的案例之一。它规模庞大,代码极其复杂,但运行极其稳定可靠,所以,许多厂商的核心业务系统,才敢放心地用Java编写,运行在JVM之上。 因为JVM自带GC,又有无数可以 阅读全文
posted @ 2020-12-09 17:25 adolfmc 阅读(40) 评论(0) 推荐(0) 编辑
摘要:1.将新对象预留在新生代 由于Full GC的成本远高于Minor GC,因此尽可能将对象分配在新生代是一项明智的做法。虽然在大部分情况下,JVM会尝试在eden区分配对象,但是由于空间紧张等问题,很可能不得不将部分年轻对象提前向老年代压缩。 在JVM参数调优中,可以为应用程序分配一个合理的新生代空 阅读全文
posted @ 2020-12-09 17:18 adolfmc 阅读(71) 评论(0) 推荐(0) 编辑
摘要:JVM调优是一个非常依赖实践的工作,本文就是在某些场景下对JVM调优方法的整理。 CPU占用高 CPU占用高是我们在线上会遇到的场景。出现这种情况,我们首先需要定位消耗CPU资源的代码。 我们以下面的代码为例,介绍怎么定位问题: 1234567891011121314 public class In 阅读全文
posted @ 2020-12-09 17:15 adolfmc 阅读(40) 评论(0) 推荐(0) 编辑
摘要:jvm优化必知系列——监控工具 这是jvm优化系列第二篇: jvm优化——垃圾回收 通过上一篇的jvm垃圾回收知识,我们了解了jvm对内存分配以及垃圾回收是怎么来处理的。理论是指导实践的工具,有了理论指导,定位问题的时候,知识和经验是关键基础,数据可以为我们提供依据。 在常见的线上问题时候,我们多数 阅读全文
posted @ 2020-12-09 17:10 adolfmc 阅读(35) 评论(0) 推荐(0) 编辑
摘要:1 案例资料 案例程序在stock.zip中http://download.csdn.net/detail/jingshuaizh/9234175 Requirements jdk1.7 mysql 5.1 import db.sql 修改stock.bat 关于数据库的连接配置 2 调优目标 目标 阅读全文
posted @ 2020-12-09 17:07 adolfmc 阅读(41) 评论(0) 推荐(0) 编辑
摘要:背景 生产环境有二台阿里云服务器,均为同一时期购买的,CPU、内存、硬盘等配置相同。具体配置如下: 节点 CPU 内存 硬盘 其它 A 2CPU 4G 普通云盘 Centos6.4 64位+JDK1.8.0_121 B 2CPU 4G 普通云盘 Centos6.4 64位+JDK1.8.0_121 阅读全文
posted @ 2020-12-09 17:04 adolfmc 阅读(29) 评论(0) 推荐(0) 编辑
摘要:上周公司有一个应用,一到晚上高峰期的时候RT(响应时间)就很长。后来上服务器看了下JVM的配置,发现运维在启动参数那里把-Xss给设成了10M。导致每个线程占用的内存过大,导致内存消耗过快,其它线程排队等待的情况。后来把-Xss改成1M之后,系统性能有明显的提高。 总结: 1.-Xss参数不可以设的 阅读全文
posted @ 2020-12-09 17:03 adolfmc 阅读(22) 评论(0) 推荐(0) 编辑
摘要:1.5.3多核并行 Lambda支持会极大改善目前Java语言不适合函数式编程的现状.函数式编程的一个重要优点就是天然适合并行运行. 2.2.1程序计数器(每条线程独立私有) 程序计数器是一块较小的内存空间,它可以看做是当前线程所执行的字节码的行号指示器 字节码解释器工作时就是通过改变这个计数器的值 阅读全文
posted @ 2020-12-09 17:02 adolfmc 阅读(38) 评论(0) 推荐(0) 编辑
摘要:Java类加载过程 类从被加载到JVM中开始,到卸载为止,整个生命周期包括:加载、验证、准备、解析、初始化、使用和卸载七个阶段。 其中类加载过程包括加载、验证、准备、解析和初始化五个阶段。 类加载器的任务就是根据一个类的全限定名来读取此类的二进制字节流到JVM中,然后转换为一个与目标类对应的java 阅读全文
posted @ 2020-12-09 16:55 adolfmc 阅读(35) 评论(0) 推荐(0) 编辑
摘要:虚拟机遇到一条new指令时,开始进行对象的创建: 1. 检查这个指令的参数是否能在常量池中定位到一个类的符号引用。 true:则继续下一步。 false:说明这个类还没有被定义,会抛出ClassNotFoundException. 2. 检查这个符号引用代表的类是否已被加载、解析、和初始化 fals 阅读全文
posted @ 2020-12-09 16:54 adolfmc 阅读(63) 评论(0) 推荐(0) 编辑
摘要:JVM调优总结 目录 数据类型堆与栈Java对象的大小引用类型按照基本回收策略分按分区对待的方式分按系统线程分如何区分垃圾如何处理碎片如何解决同时存在的对象创建和对象回收问题为什么要分代如何分代什么情况下触发垃圾回收分代垃圾回收流程示意选择合适的垃圾收集算法小结堆大小设置回收器选择辅助信息常见配置汇 阅读全文
posted @ 2020-12-09 16:53 adolfmc 阅读(39) 评论(0) 推荐(0) 编辑
摘要:堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下 阅读全文
posted @ 2020-12-09 16:52 adolfmc 阅读(70) 评论(0) 推荐(0) 编辑
  2020年11月19日
摘要:大数据本身是个很宽泛的概念,Hadoop生态圈(或者泛生态圈)基本上都是为了处理超过单机尺度的数据处理而诞生的。你可以把它比作一个厨房所以需要的各种工具。锅碗瓢盆,各有各的用处,互相之间又有重合。你可以用汤锅直接当碗吃饭喝汤,你可以用小刀或者刨子去皮。但是每个工具有自己的特性,虽然奇怪的组合也能工作 阅读全文
posted @ 2020-11-19 09:33 adolfmc 阅读(79) 评论(0) 推荐(0) 编辑
  2020年11月10日
摘要:str.encode('utf-8')bytes.decode('utf-8') 字符串前加 b python3.x里默认的str是(py2.x里的)unicode, bytes是(py2.x)的str, b 前缀代表的就是bytes python2.x里, b前缀没什么具体意义, 只是为了兼容py 阅读全文
posted @ 2020-11-10 17:18 adolfmc 阅读(252) 评论(0) 推荐(0) 编辑
摘要:loads: 是将string转换为dictdumps: 是将dict转换为stringload: 是将里json格式字符串转化为dict,读取文件dump: 是将dict类型转换为json格式字符串,存入文件 load 和 loads (反序列化)load:针对文件句柄,将json格式的字符转换为 阅读全文
posted @ 2020-11-10 00:19 adolfmc 阅读(43) 评论(0) 推荐(0) 编辑
  2020年10月26日
摘要:第一步: 在全局配置文件(application.properties)中禁用thymeleaf模板引擎的缓存,缓存是默认开启的 spring.thymeleaf.cache=false 第二步: 在idea中按 ctrl+f9 重新编译一下html文件。 建议:开发环境中可以禁用thymeleaf 阅读全文
posted @ 2020-10-26 16:33 adolfmc 阅读(58) 评论(0) 推荐(0) 编辑
  2020年10月18日
摘要:-- 当月 最大最小排序 ,分组排序编号 加工基础数据A (总共 AB) SET @row_number1 :=0; SET @datee_uid1 :=''; drop table orderinfo1017_1; create table orderinfo1017_1 as select (@ 阅读全文
posted @ 2020-10-18 09:12 adolfmc 阅读(187) 评论(0) 推荐(0) 编辑
  2020年9月19日
摘要:上周做了个支付宝微信扫码支付,今天总结一下。微信相比支付宝要麻烦许多 由于涉及到代理商,没办法,让我写个详细的申请流程,懵逼啊。 笔记地址 http://note.youdao.com/noteshare?id=269ddffb1f95e69eafb281d054f9ff25&sub=82AACBC 阅读全文
posted @ 2020-09-19 08:52 adolfmc 阅读(208) 评论(0) 推荐(0) 编辑
  2020年9月2日
摘要:appium介绍 官方网站 1、特点 appium 是一个自动化测试开源工具,支持 iOS 平台和 Android 平台上的原生应用,web应用和混合应用。 “移动原生应用”是指那些用iOS或者 Android SDK 写的应用(Application简称app)。 “移动web应用”是指使用移动浏 阅读全文
posted @ 2020-09-02 18:50 adolfmc 阅读(72) 评论(0) 推荐(0) 编辑
  2020年8月29日
摘要:一次完整的JVM堆外内存泄漏故障排查记录 前言 记录一次线上JVM堆外内存泄漏问题的排查过程与思路,其中夹带一些JVM内存分配机制以及常用的JVM问题排查指令和工具分享,希望对大家有所帮助。 在整个排查过程中,我也走了不少弯路,但是在文章中我仍然会把完整的思路和想法写出来,当做一次经验教训,给后人参 阅读全文
posted @ 2020-08-29 08:10 adolfmc 阅读(1232) 评论(1) 推荐(0) 编辑
  2020年8月28日
摘要:-- 代码实现 SELECT CONCAT( 'ALTER TABLE ', table_name, ' RENAME TO ', REPLACE ( table_name, 'sys_', -- 要替换的字符串 'qun_' -- 替换为新的字符串 ), ';' )FROM information 阅读全文
posted @ 2020-08-28 09:17 adolfmc 阅读(202) 评论(0) 推荐(0) 编辑
  2020年8月27日
摘要:UIAutomator2appium  5年以上爬虫经验,具有大规模通用爬虫开发经验,熟悉目前主流的爬虫框架,有电商数据爬取经验者优先; 熟悉app逆向、反编译(xposed、frida、ida、jeb等) 或 有app群控经验(appium、uiautomator2等)。 了解各种加密算法, 阅读全文
posted @ 2020-08-27 16:17 adolfmc 阅读(64) 评论(0) 推荐(0) 编辑
  2020年8月22日
摘要:for /L %i IN (1,1,254) DO ping -w 2 -n 1 192.168.0.%i 阅读全文
posted @ 2020-08-22 23:14 adolfmc 阅读(73) 评论(0) 推荐(0) 编辑
  2020年8月21日
摘要:概述 做项目中,碰到了个难题:想要根据年份和第几周获取该周的周一和周日的时间。找了下MySQL中的日期函数,发现没有。既然没有轮子用,那我们自己造个轮子。 根据年份和周数获取该周第一天的日期 -- 自定义函数 delimiter // drop function if exists FUN_GET_ 阅读全文
posted @ 2020-08-21 12:26 adolfmc 阅读(1321) 评论(0) 推荐(0) 编辑
  2020年8月16日
摘要:-- 格式化金额,0.00 直接返回0 drop function FGAMT; CREATE FUNCTION FGAMT ( amt decimal(18,2) ,jingdu int(9) )RETURNS varchar(255) begin declare result varchar(2 阅读全文
posted @ 2020-08-16 06:29 adolfmc 阅读(69) 评论(0) 推荐(0) 编辑
  2020年8月14日
摘要:sudo systemctl restart dockerdocker stop job_liepdocker restart job_liepdocker exec -it job_liep /bin/bashdocker exec -it redis-test /bin/bashdocker c 阅读全文
posted @ 2020-08-14 10:05 adolfmc 阅读(95) 评论(0) 推荐(0) 编辑
  2020年8月9日
摘要:Esxi不支持修改时区,但是可以使用ESX或者Centos 6/7的localtime文件进行替换以实现时区修改,问题是,重启后文件会被还原。 详细的纠结过程就不说了,终级解决方案如下(给公司写的,现分享出来): 大概思路是:将centos 6中/usr/share/zoneinfo/Asia/Sh 阅读全文
posted @ 2020-08-09 06:17 adolfmc 阅读(323) 评论(0) 推荐(0) 编辑
  2020年7月31日
摘要:在新的centos7里,关于时间的指令除了保留了之前版本中常用到的date、hwclock等命令外,还增加了一个统一的命令timedatactl。下面结合其用法进行下小结。 先看下命令帮助: [root@nginx ~]# timedatectl --help timedatectl [OPTION 阅读全文
posted @ 2020-07-31 20:48 adolfmc 阅读(650) 评论(0) 推荐(0) 编辑
摘要:通过docker logs命令可以查看容器的日志。 docker logs -f -t --tail 100 datacenter 命令格式: $ docker logs [OPTIONS] CONTAINER Options: --details 显示更多的信息 -f, --follow 跟踪实时 阅读全文
posted @ 2020-07-31 07:05 adolfmc 阅读(209) 评论(0) 推荐(0) 编辑
  2020年7月28日
摘要:在使用 python3 过度的过程中总是会出现很多问题,这里慢慢收集记录,如有错误欢迎指正。 安装问题 Lunix 系统一般默认都是 python2.7.5 升级到 Python3.x 版本一般都需要通过编译安装。这里主要记录下编译安装需要依赖的包,我们需要先安装。 yum groupinstall 阅读全文
posted @ 2020-07-28 07:23 adolfmc 阅读(502) 评论(0) 推荐(0) 编辑
  2020年7月27日
摘要:一、配置阿里云源为主源mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bakwget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.c 阅读全文
posted @ 2020-07-27 23:41 adolfmc 阅读(408) 评论(0) 推荐(0) 编辑
  2020年7月19日
摘要:更新:更好的网盘 https://hub.docker.com/_/nextcloud/ 迁移文件后重新扫描目录命令: docker exec --user www-data 7aacb245c5c7 php occ files:scan --all 如果安装遇到问题: 跑了一下,发现问题是 mys 阅读全文
posted @ 2020-07-19 19:31 adolfmc 阅读(292) 评论(0) 推荐(0) 编辑
摘要:由于这个软件是英文的,很多人安装之后,不会用这个软件,那么如何设置这个软件的呢? 方法/步骤 1 其实设置这个软件分为两步,设置共享目录,以及设置连接设备。先设置共享手机的目录,单击软件,点击文件夹+。 文件夹标签输入阿拉伯数字或者是中文,输入什么?随便。然后点击目录。 如图一点击左三,如图二点击图 阅读全文
posted @ 2020-07-19 18:13 adolfmc 阅读(378) 评论(0) 推荐(0) 编辑
摘要:无意间发现了syncthing这个开源软件,对于多客户端共享同步文件的问题一下有了终极解决方案。 当然类似自动同步的软件有很多,网盘产品也不在少数,但是百度网盘限速,坚果云限流量的情况下,对第三方的网盘产品都心有余悸,最主要的是类似此类网盘产品,有些公司是直接封杀的,为了公司的数据安全。 synct 阅读全文
posted @ 2020-07-19 18:12 adolfmc 阅读(216) 评论(0) 推荐(0) 编辑
  2020年7月18日
摘要:重点容易出错的地方: 这里虚拟设备节点 引导盘为 SCSI 0:3 将要安装系统的空白虚拟磁盘 虚拟设备节点 为 SCSI 0:2这个是不正确的 会导致启动失败 虚拟机启动顺序 按设备节点 数值递增如 有现在俩块盘 引导盘为 SCSI 0:3 空白虚拟磁盘 SCSI 0:2启动顺序则 先启动 空白虚 阅读全文
posted @ 2020-07-18 09:00 adolfmc 阅读(476) 评论(0) 推荐(0) 编辑
  2020年7月15日
摘要:docker run -i -t -p 8003:8080 --name resumeside_web tomcat:8.0 /bin/bash 阅读全文
posted @ 2020-07-15 02:20 adolfmc 阅读(107) 评论(0) 推荐(0) 编辑