- 博客(290)
- 资源 (22)
- 收藏
- 关注
原创 低代码平台飞书apaas
优点:1.数据聚合能力 和 流程编排能力是亮点2.功能强大,页面组件完善3.扩展能力强,易于二次开发4.与飞书深度集成,可以使用飞书的一些开发能力缺点:1.使用门槛稍高,需要有研发背景更容易上手2.与平台绑定,无法独立下载部署。
2024-07-29 15:22:24
3170
原创 CID引流剖析
CID本身是用来追踪电商平台(比如淘宝、天猫、京东和拼多多)的交易订单的流量源的。简单讲,它就是个电商平台内自己店铺销售转化的归因工具。追踪到订单的流量源之后,可以把这些数据反过来提供给媒体投放平台,从而优化电商的引流投放。举个例子。我在抖音上投放广告,广告链接链到我的淘宝的电商商品页。我想知道我这个抖音广告给我这个商品带来了多少的销量,CID可以帮助我们回答这个问题。
2024-07-24 22:55:24
321
原创 RPA软件-影刀使用
读取Excel内容,默认情况下,整数会被读成小数,如:1读成1.0,日期格式值会被读成日期对象,若要保持内容不变,高级选项勾选读取单元格内容,读取为字符串类型。(2) 网页操作:基础操作-指令操作,智能操作-关联元素,特殊操作-元素编辑。a. 网页对象对应一个网页标签,每打开一个新的网页标签,即一个新的网页对象。b. 窗口对象对应一个软件窗口,每打开一个新的弹窗,即一个新的窗口对象。【获取窗口对象列表】:一次获取多个窗口对象,并返回一个列表。【获取窗口对象】:一次获取一个窗口对象。
2024-07-24 18:14:07
1485
原创 RPA入门
RPA, Robotic Process Automation,机器人流程自动化。它是一种软件或平台,根据预先设定的程序,通过模拟并增强人类与计算机的交互过程,执行基于一定规则的大批量、可重复性任务,实现工作流程中的自动化。
2024-07-24 17:53:44
257
原创 登录等第三方认证-outh2原理与分析
看了很多关于outh2应用文章,介绍都比较晦涩难懂,同时没有一个实际案例说明,下面,我将使用security+outh2简单案例讲解,并通过微信认证流程解释为什么这种实现方式是最佳的。1. Security实现Outh2登录1.1 项目环境搭建及说明搭建springboot项目引入依赖 <!-- for Spring Security --> <dependency> <groupId>org.springfr.
2021-11-23 12:51:21
4446
原创 设计模式-如何提高代码质量
最近看到一段话,对设计模式总结不错:《设计模式:可复用面向对象软件的基础》,在书中作者提到了一句话:“找到变化,封装变化”,这才是设计模式的底层逻辑。- 什么在变化- 如何封装变化下面我以一个简单单号生成的案例,说明一个提高代码质量步骤。1、单号生成逻辑 public static String generateOrderNo() { String id = ""; try { // ip生成与转换 String
2021-10-22 11:10:57
415
原创 k8s入门学习-采坑记录
1、flannel安装配置flannel-io/flannelwget https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.ymlkubectl apply -f kube-flannel.yml2、在安装完flannel,coredns一直不能正常启动:master不允许部署查看原因:即主节点master默认不予许部署work pod,解除限制方法:允许master
2021-08-05 00:32:51
398
原创 docker容器管理平台—portainer
portainer容器管理平台比较流行有以下三种DOCKER UIshipyardportainer这里我安装portainer,先下载汉化包并解压wget https://labx.me/dl/4nat/public.zip unzip public.zip -d publicdocker run -p 9000:9000 -p 8000:8000 --name portainer \--restart=always \-v /var/run/docker.sock:/var/
2021-07-27 23:15:57
2549
原创 docker容器化基础
1. namespace隔离安装busybox镜像测试:2. cgroup限制查询管控限制的资源:mount -t cgroup以cpu为例:ls /sys/fs/cgroup/cpu, 其中cfs是重点关注的。创建独立限制文件:mkdir container默认生成一下文件:设置cpu限制:每 100 ms 的时间里,被该控制组限制的进程只能使用 20 ms 的 CPU 时间,也就是说这个进程只能使用到 20% 的CPU 带宽: echo 20000 > /
2021-07-20 22:45:09
158
原创 Mybatis动态数据源-分库分表简单版实现
1、动态数据源【分库】分库有两种选择方案:用dao接口注解+切面实现动态数据源利用表字段分库策略实现此处采用第一种方案,第二种方案我将在分表是实现;1.1 环境搭建引入以下依赖 <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</arti
2021-06-27 00:55:56
2081
1
原创 自定义Mybatis分页插件
1、通过ThreadLocal封装分页线程分页参数:public class PageThreadLocalUtil { private static final ThreadLocal<BasePage> PAGE_THREAD_LOCAL = new ThreadLocal(); public static void setPageThreadLocal(BasePage basePage) { PAGE_THREAD_LOCAL.set(base
2021-06-26 18:43:59
264
原创 多线程中活锁与死锁
1、死锁有这样的情况:多个线程占有资源同时抢占资源时,互相等待,产生死锁;例如: t1 线程 获得 A对象 锁,接下来想获取 B对象 的锁 t2 线程 获得 B对象 锁,接下来想获取 A对象 的锁 Object A = new Object(); Object B = new Object(); Thread t1 = new Thread(() -> { synchronized (A) { log.i
2021-06-19 22:32:17
223
原创 Arrays.asList转换集合的坑
1、Arrays.asList可以转换为集合吗?可以看到ArrayList是Arrays内部类,并不是常用的ArrayList类public class Arrays { ... private static class ArrayList<E> extends AbstractList<E> implements RandomAccess, java.io.Serializable { private static final lo
2021-06-16 16:57:57
265
原创 Java中如何正确进行浮点数运算
1、浮点数不是精确存储参考: 关于浮点数存储 System.out.println(0.1+0.2); System.out.println(1.0-0.8); System.out.println(4.015*100); System.out.println(123.3/100); double amount1 = 2.15; double amount2 = 1.10; System.out.pr
2021-06-12 23:22:44
7067
3
转载 服务监控与健康检查
监控维度第一,提供健康检测接口。传统采用 ping 的方式对应用进行探活检测并不准确。有的时候,应用的关键内部或外部依赖已经离线,导致其根本无法正常工作,但其对外的 Web 端口或管理端口是可以 ping 通的。我们应该提供一个专有的监控检测接口,并尽可能触达一些内部组件。第二,暴露应用内部信息。应用内部诸如线程池、内存队列等组件,往往在应用内部扮演了重要的角色,如果应用或应用框架可以对外暴露这些重要信息,并加以监控,那么就有可能在诸如 OOM 等重大问题暴露之前发现蛛丝马迹,避免出现更大的问题。第
2021-06-05 16:59:12
940
转载 关于技术学习思考
技术是分级:具体说,是分短命和长寿的,也是分表面和本质的。我们要学习各种技术,但是我们要把足够的精力放到长寿的技术以及技术本质上。比如说,稳定性上,从左到右逐渐降低,越靠右往往寿命越短。比如说,学习难度上,不一定,但是总体来说从左到右逐渐降低。比如说,针对性上,往往从左到右逐渐增加,即越往右就越是针对具体的问题。过于关注配置使用,忽略原理和场景分析。过于关注编程语言的语法和语言技巧,忽略语言思考和书写时的思维模式。过于关注具体实现逻辑,忽略了对于设计的思考和权衡。基础知识和能力数
2021-06-03 23:50:08
126
原创 vue 与springboot项目混合部署
rewrite ^/$ /index.html last;rewrite ^/$ /index.html permanent;用户到达默认域http://www.luckymock.com或http://www.luckymock.com/将其重定向到http://www.luckymock.com/index.htmlNginx 重定向伪静态:rewrite ^/$ /luckymock/index.html;...
2021-05-15 09:56:42
336
转载 常见安全问题与处理方法
常见的 Web 攻击方式XSS跨站脚本攻击攻击者在服务器返回的普通页面中嵌入特殊的脚本代码,那么在普通用户浏览这个网页的时候,这个特殊的脚本代码就得到了执行,于是用户的 Cookie 通过请求的方式发送给了这个攻击者指定的地址,这样攻击者就劫持了用户的会话,利用 Cookie 中标识身份的字符串,就可以伪装成实际的用户,来做各种坏事了。针对 XSS 的特点来进行防御,比如有这样两个思路: 第一个,做好字符转义和过滤,让用户上传的文本在展示的时候永远只是文本,而不可能变成 HTML 和脚本。
2021-05-04 10:56:05
500
原创 TIME_WAIT数量太多 造成SocketTimeoutException
nginx配置长连接出现大量TIME_WAIT的情况:keepalive_requests设置比较小,高并发下超过此值后nginx会强制关闭和客户端保持的keepalive长连接;keepalive设置的比较小(空闲数太小),导致高并发下nginx会频繁出现连接数震荡(超过该值会关闭连接),不停的关闭、开启和后端server保持的keepalive长连接;http { // 全局配置 // 长连接响应timeout keepalive_timeout 60s; //
2021-04-24 16:50:32
913
2
原创 定时调度-Cron处理
cron表达式定时调度Java(Spring)* * * * * * *- - - - - - -| | | | | | || | | | | | + year [optional]| | | | | +----- day of week (0 - 7) (Sunday=0 or 7)| | | | .
2021-04-24 11:47:55
404
原创 深入理解dubbo的注册中心与元数据
dubbo rpc接口设计Apache开发的2.7.X新增了元数据中心 MetaData 和配置中心 Conf-center 这两个功能。元数据信息包括服务接口,及接口的方法信息。这些信息将被用于服务mock,服务测试。核心参数注册中心:zk\Nacos地址与端口【多个】协议:dubbo\hession,服务暴露端口服务:服务名、version[升级]、group[一个接口有多个实现]2.7 版本后: 元数据中心和配置中心元数据中心元数据: 服务分组、服务版本、服务名、方
2021-03-11 21:49:34
774
转载 订单超时-延时任务处理
订单超时未支付关闭1、定时任务时效性差,会有一定的延迟,这个延迟时间最大就是每隔一定时间的大小,如果你设置每分钟定时轮询一次,那么理论上订单取消时间的最大误差就有一分钟,当然也可能更大,比如一分钟之内有大量数据,但是一分钟没处理完,那么下一分钟的就会顺延。效率低。对数据库的压力比较大。2、被动取消这种方式依赖于用户的查询操作触发,这也就是说如果用户不进行查询订单的操作,该订单就永远不会被取消。不会取消的订单,也就可能意味着库存可能被占用可能是被动取消 +定时任务的这种组合实现方式。这种情
2021-02-25 14:02:14
954
转载 linux下常用命令
一、查日志1.tail和head命令 tail -f mylog.log 可以动态的查看服务器运行状态的日志 head -n 1000:显示前面1000行 tail -n 1000:显示最后1000行 tail -n +1000:从1000行开始显示,显示1000行以后的 cat mylog.log | tail -n 1000 #输出mylog.log 文件最后一千行2.sed命令 查看文件的第5行到第10行: sed -n '5,10p' my
2021-02-24 23:03:27
102
原创 mysql安装问题
windows 安装mysql1、检查服务是否启动: 任务管理器:启动mysql服务。2、登陆: mysql -uroot -p Enter Password:密码3、若没登录上: 以管理员权限启动cmd,输入mysql -uroot -p,将会出现Error 2003:(10061)4、输入mysql -install ,显示安装成功,输入net start mysql 无法启动5、mysql --initialize,输入net start
2021-01-30 16:06:49
116
原创 SpringMVC入门二
1、springMVC+Jsp页面1.1、 添加依赖<dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> &l...
2021-01-30 00:49:07
741
原创 Servlet核心内容
Sevlet的生命周期构造方法: 创建servlet对象的时候调用。默认情况下,第一次访问servlet的时候创建servlet对象只调用1次。证明servlet对象在tomcat是单实例的。init方法: 创建完servlet对象的时候调用。只调用1次。service方法: 每次发出请求时调用。调用n次。destroy方法: 销毁servlet对象的时候调用。停止服务器或者重新部署we...
2021-01-30 00:47:20
215
1
转载 垃圾回收机制算法分析
1、垃圾回收简要过程这里必须点出一个很重要的误区:不可达的对象并不会马上就会被直接回收,而是至少要经过两次标记的过程。第一次被标记过的对象,会检查该对象是否重写了finalize()方法。如果重写了该方法,则将其放入一个F-Query队列中,否则,直接将对象加入“即将回收”集合。在第二次标记之前,F-Query队列中的所有对象会逐个执行finalize()方法,但是不保证该队列中所有对象的fi...
2021-01-30 00:46:44
130
原创 多线程之间实现通讯
synchronized同步函数:非静态同步函数:this的对象锁静态同步函数:static的方法,类锁多线程的死锁:同步线程循环调用,相互占有资源禁止同步的嵌套JMM内存模型一致性:本地内存与共享内存的不一致使用Volitile:volitile强制同步本地内存到共享内存保证可见性,但不能保证原子性原子性:多线程操作同一个变量累加产生不一致AtomicInteger原...
2021-01-30 00:45:37
181
原创 MySQL优化
MySQL如何优化表的设计合理化(符合3NF)添加适当索引(index) [四种: 普通索引、主键索引、唯一索引unique、全文索引]SQL语句优化分表技术(水平分割、垂直分割)读写[写: update/delete/add]分离存储过程 [模块化编程,可以提高速度]对mysql配置优化 [配置最大并发数my.ini, 调整缓存大小 ]mysql服务器硬件升级定时的去清除不需...
2021-01-30 00:44:57
106
原创 Spring核心技术
1、Spring框架Spring Core spring的核心功能: IOC容器, 解决对象创建及依赖关系Spring Web Spring对web模块的支持, spring mvc模式Spring DAO Spring 对jdbc操作的支持 【JdbcTemplate模板工具类】Spring ORM spring对orm的支持:可以与mybatis整合Spring AOP ...
2021-01-30 00:43:56
392
原创 深入理解Http协议
1、http协议版本http1.0:当前浏览器客户端与服务器端建立连接之后,只能发送一次请求,一次请求之后连接关闭。http1.1:当前浏览器客户端与服务器端建立连接之后,可以在一次连接中发送多次请求。2、GET与POST 区别Get地址栏(URI)会跟上参数数据。以?开头,多个参数之间以&分割。GET提交参数数据有限制,不超过1KB。GET方式不适合提交敏感密码。注意:...
2021-01-30 00:41:13
328
原创 Netty入门
1、Netty快速入门Netty 是一个基于 JAVA NIO 类库的异步通信框架,它的架构特点是:异步非阻塞、基于事件驱动、高性能、高可靠性和高可定制性。Netty应用场景1.分布式开源框架中dubbo、Zookeeper,RocketMQ底层rpc通讯使用就是netty。2.游戏开发中,底层使用netty通讯Netty服务器端class ServerHandler extends ...
2021-01-30 00:40:49
293
原创 NIO编程
1、IO\NIO的区别IO:阻塞面向于流传输单向NIO:非阻塞面向缓冲区管道与缓冲区传输数据常用:ByteBuffer初始化(不能修改大小):ByteBuffer bb = ByteBuffer.allocate(1024)关键参数:position:缓冲区正在操作位置limit:缓冲区可用大小(关键:可放入的大小包括覆盖)capacity:缓冲区最大容量,不能更改...
2021-01-30 00:40:26
766
原创 Socket网络编程
什么是网络模型网络编程的本质是两个设备之间的数据交换,当然,在计算机网络中,设备主要指计算机。数据传递本身没有多大的难度,不就是把一个设备中的数据发送给两外一个设备,然后接受另外一个设备反馈的数据。 现在的网络编程基本上都是基于请求/响应方式的,也就是一个设备发送请求数据给另外一个,然后接收另一个设备的反馈。在网络编程中,发起连接程序,也就是发送第一次请求的程序,被称作客户端(Clien...
2021-01-30 00:40:00
146
原创 java并发包&锁的深度化
Java锁机制:悲观锁:效率低(for update)乐观锁:版本标识重入锁:reentrantLock\synchronized非重入锁递归调用造成死锁读写锁:通常用作缓存保证读写数据的一致性CAS锁:相同时更新原变量,不同时说明已经修改不再更新自旋锁:CAS循环排他锁...
2021-01-30 00:39:25
92
原创 SpringBoot入门
Spring Boot的主要优点为所有Spring开发者更快的入门开箱即用,提供各种默认配置来简化项目配置内嵌式容器简化Web项目没有冗余代码生成和XML配置的要求@EnableAutoConfiguration作用在于让 Spring Boot 根据应用所声明的依赖来对 Spring 框架进行自动配置这个注解告诉Spring Boot根据添加的jar依赖猜测你想如何配置Spr...
2021-01-30 00:37:19
95
原创 分布式事务——LCN框架
分布式事务解决方案重要实现思想automatic+Jta (Java操作xa接口)TCC 业务commit或者回滚,不好处理幂等性问题LCNzk实现分布式事务(watcher事件通知)LCN原理事务协调者...
2021-01-30 00:35:46
1213
原创 分布式事务——基础
分布式事务解决方案2pc 两段提交协议3pc三段提交协议Tcc (两段提交)Mq 补偿与重试机制其他补偿方式(回调)rocketmq事务消息LCN本章学习点全局事务本地事务XA接口cpa\base理论柔性事务与刚性分布式事务产生原因事务acid(原子、持久、一致、隔离)隔离级别: 脏读、更新丢失、可重复读、读取已经提交分布式事务产生原因:...
2021-01-30 00:35:18
149
SSM_CRM.rar
2019-07-01
前端学习之博客页面
2019-02-16
基于TensorFlow的手写数字识别程序
2019-02-16
直方图的均衡化带界面小软件
2019-02-16
计算机图形学图像处理
2018-12-17
人工智能复习资料
2018-12-17
mnist数据集
2018-11-30
plsql及toad
2018-08-07
Oracle安装
2018-08-07
SecureCRT5
2018-08-07
editplus编辑器及破解码
2018-08-07
Java面试宝典2016版.pdf
2018-03-16
普中单片机课程设计
2018-01-14
基于MFC记事本
2018-01-14
基于MFC的学生信息系统
2018-01-14
基于MFC的俄罗斯方块
2018-01-14
基于MFC的计算器
2018-01-14
TD-cma实验指导
2018-01-14
操作系统课后习题解答
2018-01-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人