- 博客(57)
- 资源 (2)
- 收藏
- 关注
原创 JVM堆空间详解
Java堆区可以分为年轻代(YoungGen)和老年代(OldGen)可以查看java线程,JVM参数及堆空间使用情况等信息。1、Eden剩余空间不足以存放新对象。工具:java visualVM。
2024-03-11 00:52:15
745
2
原创 运行时数据区
内存是非常重要的系统资源,是硬盘和CPU的中间仓库及桥梁,承载着操作系统和应用程序的实时运行,JVM内存布局规定了Java在运行过程中内存申请、分配、管理的策略,保证了JVM的高效稳定运行。不同的JVM对于内存的划分方式和管理机制存在着部分差异。线程是一个程序里的运行单元。JVM允许一个应用有多个线程并行的执行。在Hotspot JVM里,每个线程都与操作系统的本地线程直接映射。当一个Java线程准备好执行以后,此时一个操作系统的本地线程也同时创建。Java线程执行终止后,本地线程也会回收。
2023-01-14 15:17:21
678
原创 类加载器子系统
隔离加载类:避免类冲突修改类加载的方式扩展加载源防止源码泄漏开发人员可以通过继承抽象类ava.lang.ClassLoader类的方式,实现自己的类加载器,以满足一些特殊的需求在JDK1.2之前,在自定义类加载器时,总会去继承ClassLoader类并重写loadClass() 方法,从而实现自定义的类加载类,但是在JDK1.2之后已不再建议用户去覆盖loadclass() 方法,而是建议把自定义的类加载逻辑写在findClass()方法中。
2023-01-08 18:43:58
318
原创 Scrapy爬虫方法
scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。可以应用在包括数据挖掘、信息处理或存储历史数据等一系列的程序中。
2022-09-12 03:39:42
2231
原创 Selenium模拟浏览器访问
(1)selenium是一个用于Web应用程序测试的工具。(2)selenium测试直接运行在浏览器中,就像真正的用户在操作一样。(3)支持通过各种driver(FirfoxDriver,IternetExplorerDriver,OperaDriver,ChromeDriver)驱动真正的浏览器完成测试。(4)selenium支持无界面浏览器操作。
2022-09-11 18:04:04
3720
原创 数据解析——BeautifulSoup
1、BeautifulSoup简称:bs42、BeautifulSoup是什么:BeautifulSoup和 lxml 一样,是一个 html 的解析器,主要功能也是解析和提取数据3、BeautifulSoup优缺点:缺点:效率没有 lxml 的效率高优点:接口设计人性化,使用方便。
2022-09-08 01:34:01
1107
原创 数据解析——Jsonpath
红框内为有效json,其他字符串为非json字符串,在进行json识别时,需要去掉。:JsonPath只能解析本地文件,不能解析服务器响应的文件。
2022-09-07 23:27:12
2161
原创 数据解析——xpath
1)安装xpath插件2)在chrome中安装xpath插件3)将xpath拖入即可4)验证xpath1》点击 ctrl + shift + x 出现小黑框,即代表安装成功2》再次点击 ctrl + shift + x 即可关闭小黑框。
2022-09-06 00:32:16
2367
原创 Calcite
SqlNode为根结点,SqlNode是SqlOrderBy类型, 它的query字段是一个SqlSelect类型, 即代表原始的SQL语句去掉ORDER BY部分. 图中红色矩形框内的其实都是SqlNode类型.RelNode树可以理解为一个逻辑执行计划, 上述SQL对应的逻辑执行计划如下, 其中每一行都表示一个节点, 是RelNode的实现类, 缩进表示父子关系。对比优化前后的计划, 值得注意的变化是对users表的过滤位置发生了变动, 从先Join后过滤变成了先过滤后Join, 如下图所示。...
2022-09-01 16:57:16
814
原创 urllib库的使用
urllib.request.urlopen() 模拟浏览器向服务器发送请求:1)定义需要访问的url地址2)模拟浏览器向服务器发送请求3)获取响应的页面源码。
2022-08-15 01:34:01
1914
原创 JVM与Java体系结构
Java虚拟机就是二进制字节码的运行环境,负责装载字节码到其内部,解释/编译为对应平台上的机器指令执行。(initialclass)来完成的,这个类是由虚拟机的具体实现指定的。JVM是运行在操作系统之上的,它与硬件没有直接的交互。(bootstrapclassloader)创建一个。缺点是性能下降,实现同样的功能需要更多的指令。Java虚拟机的启动是通过。...
2022-08-02 00:32:26
129
原创 SpringCloud Sleuth分布式链路跟踪
目录1、概述1.1、现有问题1.1.1、微服务框架中请求处理过程1.1.2、造成问题1.2、解决方法2、实例2.1、zipkin2.1.1、下载2.1.2、运行2.1.3、运行控制台2.2、服务提供者2.2.1、POM文件2.2.2、yaml配置文件2.2.3、Controller2.3、 服务消费者2.3.1、POM和yaml文件同服务提供者2.3.2、Controller2.4、测试1、概述1.1、现有问题1.1.1
2022-05-25 02:57:48
522
原创 SpringCloud Stream消息驱动
目录1、概述1.1、基本概念1.2、SpringCloud Stream设计思想1.2.1、标准MQ1.2.2、SpringCloud Stream设计思想1.3、SpringCloud Stream 的标准流程1.4、SpringCloud Stream 编码API及常用注解2、案例(基于RabbitMQ消息中间件)2.1、消息生产者2.1.1、POM文件2.1.2、yaml配置文件2.1.3、主启动类2.1.4、业务类2.1.5、Controlle
2022-05-25 02:15:01
711
原创 Springcloud Bus消息总线
目录1、概述1.1、Springcloud Bus 概念1.2、Springcloud Bus 作用1.3、总线1.4、设计思想1.4.1、利用消息总线触发一个客户端/bus/refresh,而刷新所有客户端的配置1.4.2、利用消息总线触发一个服务端ConfigServer的/bus/refresh端点,刷新所有客户端的配置1.4.3、通常采用第二种设计思想2、RabbitMQ 环境配置2.1、下载安装Erlang2.1.1、下载地址 :Downloads -.
2022-05-24 01:22:02
1336
原创 SpringCloud config分布式配置中心
中间为分支名称:label:分支名称,aoolication:微服务名称,profile:环境名称
2022-05-22 22:17:42
642
原创 Gateway原理及实例
1、概念1.1、作用反向代理、鉴权、流量控制、熔断以及日志监控1.2、微服务中网关位置1.3、核心功能1.3.1、路由(Route)路由是构建网关的基本模块 由ID,目标URI,一系列的断言和过滤器组成1.3.2、断言(Predicate)开发人员可以匹配HTTP请求中的所有内容(例如请求头或请求参数) 如果请求与断言相匹配则进行路由1.3.3、过滤(Filter)指的是Spring框架中GatewayFilter的实例 使用过滤器,可以在请求被路由前或者之
2022-05-21 01:16:18
3690
原创 Hystrix原理及其使用
1、概念1.1、分布式系统面临的问题1.分布式体系结构中的应用程序,有数10个依赖关系,每个依赖关系在某些时候将不可避免的失败2.服务雪崩:多个微服务之间调用时,假设微服务A调用微服务B和C,B和C又调用其他微服务,即“扇出”。 扇出的链路上某个微服务的调用响应时间过长或不可用,对A的调用会占用越来越多的系统资源,进而引起系统崩溃(级联故障),即“雪崩效应”1.2、Hystrix是什么1.Hystrix是一个用于处理分布式系统的延迟和容错的开源库2.Hystrix能够保证在一..
2022-05-18 03:41:07
1539
原创 OpenFeign原理及其使用方法
目录1、OpenFeign基础1.1、概念1.2、作用1.3、Feign和OpenFeign区别2、OpenFeign使用步骤2.1、创建Feign消费端微服务2.2、修改POM文件配置2.3、编写yaml配置文件2.4、编写主启动类2.5、编写业务类2.5.1、编写 service 层接口,用于服务提供者接口的远程调用2.5.2、编写 controller 层,用于url映射和service调用2.6、测试3、OpenFeign超时控制3.1、超
2022-05-14 22:00:49
14416
8
原创 Ribbon负载均衡
1、简介负载均衡+RestTemplate调用1.1、功能: Ribbon主要功能是提供客户端的软件负载均衡算法和服务调用。 即,在配置文件中列出Load Balancer 的所有机器,Ribbon会自动的基于某种规则(如简单轮询,随机连接等)去连接这些机器1.2、LB(Load Balance)负载均衡: 将用户的请求平摊分配至多个服务上,从而达到系统的HA(高可用)。1.3、集中式与进程式集中式:在服务消费方和提供方间使用独立的LB设施(...
2022-05-12 21:56:39
3420
原创 Eureka基础
1、相关概念1.1、服务治理在传统的rpc远程调用框架中,每个服务与服务之间依赖关系比较复杂,难以管理 需要使用服务治理,管理服务与服务之间的依赖关系 实现服务调用、负载均衡、容错等,实现服务发现与注册1.2、服务注册...
2022-05-04 21:16:04
640
原创 微服务技术概览
1、微服务架构注册中心:记录服务的IP、端口号以及功能配置中心:统一管理服务集群中的配置,实现配置的热更新服务网关:对用户身份做校验,同时将请求路由至相应服务分布式缓存:将数据库数据放入内存,为应对高并发,采用分布式结构分布式搜索:海量数据的搜索、统计和分析数据库:数据写操作、事务操作等消息队列:异步通信组件,降低服务的响应时间,提升整体系统的吞吐能力,提高并发...
2022-04-22 14:25:09
2367
原创 SpringBoot 指标监控——Actuator
1、访问:localhost:8000/actuator设置健康监控显示具体情况metricshttp://localhost:8000/actuator/metrics/jvm.gc.live.data.size定制化health信息 //利用构造器,在注册中心中添加cityService.saveCity.count指标 public CityServiceImpl(MeterRegistry meter...
2022-04-21 12:03:49
3916
原创 SpringBoot 单元测试——JUnit5
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope></dependency>@SpringBootTestclass Boot05WebAdminApplicationTes.
2022-04-20 16:22:49
13600
1
原创 SpringBoot 数据访问——整合 MyBatis-Plus
1、只需要我们的Mapper继承 BaseMapper 就可以拥有crud能力 BaseMapper 中包含各种增删改查方法,无需编写mapper.xml文件
2022-04-19 22:02:14
1208
原创 SpringBoot 数据访问——整合MyBatis
目录1、MyBatis配置1.1、导入mybatis官方starter1.2、myBatis自动引入依赖1.3、MyBatis配置文件1.3.1、注解模式:直接在springboot的配置文件 application.yaml 中进行配置1.3.2、配置模式:创建MyBatis 全局配置文件,进行配置2、MyBatis的使用2.1、配置模式2.1.1、编写mapper接口。标注@Mapper注解2.1.2、编写sql映射文件并绑定mapper接口2.1.3、在..
2022-04-18 20:18:30
304
原创 SpringBoot Web开发——定制化
目录1、定制化常见方法1.1、修改配置文件;1.2、编写自定义的配置类 xxxConfiguration1.3、编写一个配置类实现 WebMvcConfigurer 即可定制化web功能1.4、@EnableWebMvc + WebMvcConfigurer2、原理分析套路3、@EnableWebMvc配置失效原理1、定制化常见方法1.1、修改配置文件;#spring.mvc.static-path-pattern=/static/**#?????????
2022-04-17 17:09:40
718
原创 SpringBoot Web开发——嵌入式Servlet容器
1、切换嵌入式Servlet容器1)默认支持的webServer:Tomcat、Jrtty、Undertow2)切换服务器<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusi
2022-04-16 23:28:15
1145
原创 SpringBoot Web开发——Servlet三大组件
目录1、使用Servlet API1.1、注解方式1.2、使用RegistrationBean2、Spring框架的DispatchServlet与自定义Servlet1、使用Servlet API1.1、注解方式1)在配置类添加注解@ServletComponentScan(basePackages = "com.uclass.thymeleaf")basePackages 指定原生Servlet组件位置@ServletComp...
2022-04-16 22:21:54
654
原创 SpringBoot Web开发——异常处理
1、错误处理1.1、默认规则1)默认情况下,Spring Boot提供/error处理所有错误的映射2)不同客户端的返回页面不同:对于机器客户端,将生成JSON响应,其中包含错误,HTTP状态和异常消息的详细信息。 对于浏览器客户端,响应一个“ whitelabel”错误视图,以HTML格式呈现相同的数据 1.2、自定义错误规则1)自定义错误页在templates/error中添加4xx、5xx页面,会被自动解析error/4...
2022-04-16 17:12:38
993
原创 SpringBoot Web开发——文件上传
目录1、页面表单1.1、前端代码:1.2、页面效果2、后端响应代码2.1、进入表单页面2.2、获取上传得到的文件并保存2.2.1、获取表单提交的文件2.2.2、获取的文件保存至服务器某路径中2.2.3、上传文件的大小限制3、文件上传原理1、页面表单1.1、前端代码: 单文件上传:<input type="file" name="headerImg" id="exampleInputFile"> 多文件上传:<...
2022-04-15 20:55:11
1007
原创 SpringBoot Web开发——拦截器
视图解析:SpringBoot默认不支持 JSP,需要引入第三方模板引擎技术实现页面渲染。1、构建后台管理系统
2022-04-15 17:09:21
1894
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人