自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

转载 大学期间必须知道的JVM知识

概述它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。JVM有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。Java语言最重要的特点就是跨平台运行。使用JVM就是为了支持与操作系统无关,实现跨平台。所以,JAVA虚拟机JVM是属于JRE的,而现在我们安装JDK时也附带安装了JRE(当然也可以单独安装JRE)。Java虚拟机主要分为五大模块:类装载器子系统、运行时数据区、执行引擎、本地方法接口和垃圾收集模块。JVM是运行在操作系统之上的,它与硬件没有

2021-02-02 22:11:15 169 1

转载 Flink实战-订单支付和对账情况监控(分别使用CEP和ProcessFunction来实现)

在电商网站中,订单的支付作为直接与钱挂钩的一环,在业务流程中非常重要。对于订单而言,为了正确控制业务流程,也为了增加用户的支付意愿,网站一般会设置一个支付失效时间,超过一段时间没支付的订单就会被取消。另外,对于订单的支付,还应该保证最终支付的正确性,可以通过第三方支付平台的交易数据来做一个实时对账第一个实现的效果,实时获取订单数据,分析订单的支付情况,分别实时统计支付成功的和15分钟后支付超时的情况新建一个maven项目,这是基础依赖,如果之前引入了,就不用加了<maven.compiler.

2021-02-02 20:20:55 510

转载 给Java新手的一些建议——Java知识点归纳(Java基础部分)

写这篇文章的目的是想总结一下自己这么多年来使用java的一些心得体会,主要是和一些java基础知识点相关的,所以也希望能分享给刚刚入门的Java程序员和打算入Java开发这个行当的准新手们,希望可以给大家一些经验,能让大家更好学习和使用Java。  这次介绍的主要内容是和J2SE相关的部分,另外,会在以后再介绍些J2EE相关的、和Java中各个框架相关的内容。  经过这么多年的Java开发,以及结合平时面试Java开发者的一些经验,我觉得对于J2SE方面主要就是要掌握以下的一些内容。  1. JVM相

2021-02-01 22:19:19 129

转载 Java的特点和优点

Java的特点Java语言是一种优秀的编程语言。它最大的优点就是与平台无关,在Windows 9x、Windows NT、Solaris、Linux、MacOS以及其它平台上,都可以使用相同的代码。“一次编写,到处运行”的特点,使其在互联网上广泛采用。由于Java语言的设计者们十分熟悉C++语言,所以在设计时很好地借鉴了C++语言。可以说,Java语言是一种比C++语言“还面向对象”的一种编程语言。Java语言的语法结构与C++语言的语法结构十分相似,这使得C++程序员学习Java语言更加容易。当然,

2021-02-01 19:32:55 569

转载 DBA日常工作

引言本指南旨在简要地列出Sybase ASE系统管理员(DBA)所需的日常维护工作。一般说来,在完成这些操作后,所管理的ASE数据库可以长期安全可靠地运行。本指南着重的是what to do,而不是how to do,也即是说本指南并不会详细地介绍如何进行这些日常工作,但会给出相应的参考手册。我们认为作为一个合格的数据库管理员,应及早发现可能导致的问题,而不是等到出现问题时才来解决。根据Sybase技术支持人员的经验,在出现问题时,因时间急迫,数据库管理员所采取的一些紧急措施往往容易导致更严重的问题。因.

2021-01-31 21:52:47 433

转载 DBA的40条军规

1、涉及业务上的修改/删除数据,在得到业务方、CTO的邮件批准后方可执行,执行前提前做好备份,必要时可逆。2、所有上线需求必须走工单系统,口头通知视为无效。3、在对大表做表结构变更时,如修改字段属性会造成锁表,并会造成从库延迟,从而影响线上业务,必须在凌晨0:00 后业务低峰期执行,另统一用工具 pt-online-schema-change 避免锁表且降低延迟执行时间。使用范例:#pt-online-schema-change --alter=“add index IX_id_no(id_no)”

2021-01-31 20:41:31 161 1

转载 一文说清楚企业级业务架构方法

本文为付晓岩老师在“技术琐话”的直播整理,感谢付老师的付出。今天分享主要分成三个部分,第一部分是软件工程与企业架构方法论的发展。不管是我个人写文章提到的企业级业务架构方法论,还是中台也好,都是从以往的方法发展到现在,也有几十年的历史了。所以大家研究方法论也好,或者是看一些现象也好,如果你希望对这个现象的了解更深刻的话,那最好的还是要从这个方法的历史开始了解。第二部分,是关于企业级业务架构方法论的介绍。最后一部分,实际上是从企业架构的角度谈中台,我认为中台就是企业架构范畴内的探索,所以第三部分:从企

2021-01-29 22:09:49 440

转载 麦肯锡说企业数字化转型失败率是80%,是真的吗?

(1)何为实施中国啊,没啥专业,所以也没啥分工,都是万金油。所以大家一听说实施失败,都觉得实施很复杂很神秘。其实按照专业性来讲,实施的专业范畴其实特别窄。以下的内容在我过去20年我已经讲过无数次,我今天再给大家老生常谈重复讲一次。一、业务咨询(不是实施,这是业务咨询顾问的事,单独签咨询合同)• 流程梳理、流程优化• 业务CheckPoint梳理、KPI绩效指标体系梳理二、IT咨询(不是实施,这是IT咨询顾问的事,单独签咨询合同)• IT蓝图规划• 集成接口定义• 主数据标准定义• 部署架

2021-01-28 20:45:08 316

转载 RabbitMQ 基础概念进阶

上一篇 RabbitMQ 入门之基础概念 介绍了 RabbitMQ 的一些基础概念,本文再来介绍其中的一些细节和部分高级概念。一、消息生产者发送的消息不可达时如何处理RabbitMQ 提供了消息在传递过程中无法发送到一个队列(比如根据自己的类型和路由键没有找到匹配的队列)时将消息回传给消息发送方的功能,使用 RabbitMQ 的客户端提供 channel.basicPublish 方法的两个参数 mandatory 和 immediate (RabbitMQ 3.0 以下版本),除此之外还提供了一个备份

2021-01-27 21:59:40 91

转载 RabbitMQ 入门之基础概念

什么是消息队列消息是在不同应用间传递的数据。这里的消息可以非常简单,比如只包含字符串,也可以非常复杂,包含多个嵌套的对象。消息队列(Message Queue)简单来说就是一种应用程序间的通讯方式,消息发送后立即返回,然后由消息系统保证消息的可靠性传输,消息生产者只需要把消息发到 MQ 中就可以了,不需要关心消息的消费,同样,消息消费者只管从 MQ 中拉取消息而不管是谁生产的消息,通过这样的一个“互相不知道对象存在”模式,将消息的生产者和消息的消费者解耦了。什么场景下考虑使用消息队列从上面可以知道,消

2021-01-27 21:08:39 84

转载 React源码 commit阶段详解

当render阶段完成后,意味着在内存中构建的workInProgress树所有更新工作已经完成,这包括树中fiber节点的更新、diff、effectTag的标记、effectList的收集。此时workInProgress树的完整形态如下:和current树相比,它们的结构上固然存在区别,变化的fiber节点也存在于workInProgress树,但要将这些节点应用到DOM上却不会循环整棵树,而是通过循环effectList这个链表来实现,这样保证了只针对有变化的节点做工作。所以循环effectLi

2021-01-26 21:55:47 424

转载 前端算法系列:数据结构链表、双向链表、闭环链表、有序链表

链表链表是一种怎么样的结构呢?链表就是一种可以把数据串联起来的结构,每个元素会有指向下一个元素的指针(末尾的没有普通链表),就像现实世界中的火车一样一节一节的串联起来;链表根据自身的指针指向又可以分为:单向链表、双向链表、循环链表;链表首先会有一个表头,表头作为起始的指针,然后每一个元素我们称作为节点(node);每个节点有一个指向下一个节点的指针(next),直到链表的末尾指针会指向undefined;链表的实现1、节点节点的创建和定义;每个节点会有一个保存自己数据的属性(element),然后

2021-01-26 20:10:14 286

转载 梳理useEffect和useLayoutEffect的原理和区别

React在构建用户界面整体遵循函数式的编程理念,即固定的输入有固定的输出,尤其是在推出函数式组件之后,更加强化了组件纯函数的理念。但实际业务中编写的组件不免要产生请求数据、订阅事件、手动操作DOM这些副作用(effect),这样难免让函数组件变得不那么纯,于是React提供use(Layout)Effect的hook,给开发者提供专门管理副作用的方式。下面我们会从effect的数据结构入手,梳理use(Layout)Effect在render和commit阶段的整体流程。Effect的数据结构对函数

2021-01-25 21:58:27 1190

转载 当AI可以无痕换脸,一次面部信息的泄露,将会带来无法想象的危机。

近日,出现了一例用 AI 技术换脸实施的网络诈骗。1 月 10 日,小李的大学同学小王通过 QQ 联系小李,并问其借钱,小李谨慎地要求对方进行视频通话,想确认是否是小王再选择借钱,视频接通后,对方的确是小王,虽然视频中小王并没有说话,但小李还是打消了顾虑把钱借给了她。后来联系小王时,发现小王 QQ 被盗,小王对此事完全不知情。民警判断小李遇到了网络诈骗,诈骗团伙使用 AI 换脸,把小王的脸放到了一个有医院背景的人身上,以此骗取了小李的信任。小李回忆,与小王视频过程中,小王的脸也是只有轻微晃动,没有太大

2021-01-25 21:11:16 596

转载 Mybatis从浅入深-Plus(IDEA版通俗易懂)

Mybatis从浅入深(IDEA版通俗易懂)01.使用注解开发引入:大家之前都学过面向对象编程,也学习过接口,但在真正的开发中,很多时候我们会选择面向接口编程根本原因∶解耦,可拓展,提高复用,分层开发中,上层不用管具体的实现,大家都遵守共同的标准,使得开发变得容易,规范性更好在一个面向对象的系统中,系统的各种功能是由许许多多的不同对象协作完成的。在这种情况下,各个对象内部是如何实现自己的,对系统设计人员来讲就不那么重要了;而各个对象之间的协作关系则成为系统设计的关键。小到不同类之间的通信,大到各

2021-01-18 22:53:06 129

转载 python使用ctypes调用扩展模块的实例方法

楔子我们知道python的执行效率不是很高,而且由于GIL的原因,导致python不能充分利用多核CPU。一般的解决方式是使用多进程,但是多进程开销比较大,而且进程之间的通信也会比较麻烦。因此在解决效率问题上,我们会把那些比较耗时的模块使用C或者C++编写,然后编译成动态链接库,Windows上面是dll,linux上面则是so,编译好之后,交给python去调用。而且通过扩展模块的方式还可以解决python的GIL的问题,因此如果想要利用多核,我们仍然可以通过扩展模块的方式。python如何调用扩展模

2021-01-18 20:20:56 208

原创 什么是栈,栈存储结构详解。

同顺序表和链表一样,栈也是用来存储逻辑关系为 “一对一” 数据的线性存储结构。栈存储结构与之前所学的线性存储结构有所差异,这缘于栈对数据 “存” 和 “取” 的过程有特殊的要求:栈只能从表的一端存取数据,另一端是封闭的。在栈中,无论是存数据还是取数据,都必须遵循"先进后出"的原则,即最先进栈的元素最后出栈。拿栈来说,从图中数据的存储状态可判断出,元素 1 是最先进的栈。因此,当需要从栈中取出元素 1 时,根据"先进后出"的原则,需提前将元素 3 和元素 2 从栈中取出,然后才能成功取出元素 1。

2021-01-17 16:07:53 1960

原创 13款最佳免费网络监控工具,网站监控软件的总结。

要让一个多级机构运行良好而且平稳的话,一个非常艰巨重大的任务就是做好网络管理。每个机构都配备专门的人员,即网络分析师,来进行网络管理。他们使用了许多工具来监视网络的运行状况,并查看网络流量的上升和下降状况。他们还必须确保整个网络能够平稳地运行,因为只要有一分钟的网络中断就会使得整个机构的工作出现混乱。使得机构工作平稳运行的最重要的方式之一就是使用各种网络监视工具。使用IDS检测来自外部网络的威胁和问题,使用网络监视软件来监视由于内部服务器负载过高或者某个网络部员工的小错误而引起的问题。网络监视软件可以跟踪

2021-01-16 22:57:25 3412 1

原创 谁动了我的宽带?记一次HTTP劫持的发现过程。http劫持的反思。

日常遇到的劫持一般为DNS劫持,可在路由器里强制指定公共DNS解决。本文记录了自己家用宽带HTTP劫持的发现过程。相比DNS劫持,HTTP劫持则更为流氓,解决起来也比较棘手。近来在家上网时,iPhone Safari网页里经常弹出“在手机淘宝中打开连接吗?”的提示框,如下图:作为一名iOS码农,很自然的知道这是网页在调用淘宝app的 URL Scheme tbopen:// ,这是干什么的呢?当然是淘宝客的推广链接,点了之后打开淘宝去领券,如果你按提示下单了,推广者就能拿到返利。问题在于,网页为什么会

2021-01-15 23:07:45 397

原创 http劫持如何解决,劫持软件怎么办?

运营商HTTP劫持(非DNS劫持)推送广告的情况相信大家并不陌生,解决的方法大多也是投诉增值业务部门进而投诉工信部。但这种方法费时费力,投诉接听人员并不了解情况导致答非所问的情况有很多,有时候不但受气最终也没能完全解决问题,或者解决问题后过了一段时间复发的情况并不少见。近年来,运营商HTTP劫持非但没有收敛,反而变本加厉,玩出了新花样:比如通过HTTP劫持进行密码截获的活动;比如下载软件被替换的情况;比如劫持进行返利(当然返利不是返给你)的情况。本文介绍一种技术手段用来防止HTTP劫持,在大多数情况

2021-01-14 16:49:21 1347

原创 html+css代码

文本设置1、font-size: 字号参数2、font-style: 字体格式3、font-weight: 字体粗细4、颜色属bai性color: 参数注意使用网页安全色超链接设置text-decoration: 参数主要用途是改变浏览器显示文字链接时的下划线。参数取值范围:underline:为文字加下划线overline:为文字加上划线line-through:为文字加删除线blink:使文字闪烁none:不显示上述任何效果背景1、背景颜色background-col

2021-01-13 21:51:37 193

原创 路由器DNS被劫持的解决办法,dns被劫持怎么办?

路由器DNS被劫持,不知道怎么办!因此跟大家说说遇到这种问题的解决办法。DNS劫持是什么?DNS劫持又称域名劫持,是指在劫持的网络范围内拦截域名解析的请求,分析请求的域名,把审查范围以外的请求放行,否则返回假的IP地址或者什么都不做使请求失去响应,其效果就是对特定的网络不能访问或访问的是假网址。基本原理DNS(域名系统)的作用是把网络地址(域名,以一个字符串的形式)对应到真实的计算机能够识别的网络地址(IP地址),以便计算机能够进一步通信,传递网址和内容等。由于域名劫持往往只能在特定的被劫持的网络

2021-01-13 19:17:42 626

原创 java常用代码

获取环境变量System.getenv(“PATH”);System.getenv(“JAVA_HOME”);获取系统属性System.getProperty(“pencil color”); // 得到属性值java -Dpencil color=greenSystem.getProperty(“java.specification.version”); // 得到Java版本号Properties p = System.getProperties(); // 得到所有属性值p.list(

2021-01-12 20:45:55 111

原创 如何解决域名劫持?搜狗域名劫持如何处理?

近日,百度搜索引擎发现,部分网站用户在搜索访问时有被后退劫持的情况,这对搜索用户有不良影响,通过对背景数据的分析,这些问题大多是由站内存在的“被恶意劫持”或“被第三方网站链接劫持”所引起的。域名劫持是什么  DNS劫持又叫域名劫持,指的是通过攻击域名解析服务器,或伪造域名解析服务器的方法,把目标网站域名解析到错误的地址从而实现用户无法访问目标网站或者网站打开速度慢。  DNS劫持危害非常大。一方面影响用户的上网体验,用户被引到假冒的网站进而无法正常浏览网页,尤其是用户量较大的网站域名被劫持后恶劣影响

2021-01-11 19:31:00 198

原创 淘宝客流量劫持是什么意思?与淘宝劫持百度流量原理相同吗?

淘宝客流量劫持,淘宝客流量劫持是什么意思?以下是小编整理的淘宝客流量劫持是什么意思的内容,又有哪些淘宝客流量劫持的规定,接下来就来给大家做下详细介绍。不明白的小伙伴赶紧来瞧一瞧吧。淘宝客流量劫持是什么?  “淘宝客流量劫持”最常见违规作弊方法。如通过病毒、木马、恶意插件和未经授权软件捆绑安装、强设首页、劫持地址栏或浏览器、劫持淘宝页面、搜索引擎作弊、篡改用户信息等非常规手段劫持正常流量。或者在用户正常浏览过程中,通过修改URL参数或弹窗(浮窗)等的方式劫持淘宝网或阿里妈妈合作伙伴的正常流量。  淘宝

2021-01-11 16:42:17 1607

空空如也

空空如也

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

TA关注的人

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