自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Docker部署Alist全平台网盘神器结合内网穿透实现无公网IP访问云盘资源_alist实现内网穿透(1)

​fill:#333;color:#333;color:#333;fill:none;

2024-09-22 15:52:36 1187

原创 Redis~分布式事务和分布式事务锁

redis快是因为他是基于内存进行操作的,并且使用了大量的kv数据结构和很多特殊的数据类型,还使用了io多路复用避免了阻塞,所以使用多线程就可以避免上下文切换和锁机制和线程的创建和销毁,而且说他是单线程但是其他操作比如持久化,连接管理都是多线程式的,最主要的是由于上述条件,redis的性能瓶颈不在线程上,而是在内存容量和网络带宽上但是还有一个问题, 上面说redis是单线程的, 那么就不会有线程安全问题, 那为什么还有让redis支持事务, 还要 要求他使用redis分布式事务锁。

2024-09-22 15:08:53 793

原创 C# SQL数据库的基础增删改查和事务_c#增删改查的业务逻辑

/(操作语句和链接工具)//update 表名 set 字段=‘内容’, 字段=‘内容’ where 条件字段=‘内容’if (i == 0) MessageBox.Show(“添加失败”, “提示:”);if (i == 0) MessageBox.Show(“删除失败”, “提示:”);if (i == 0) MessageBox.Show(“修改失败”, “提示:”);//sql删除数据delete 表名 where 字段=‘内容’单个条件用or链接,多个条件用and链接。

2024-09-22 13:46:55 606

原创 MySQL数据库:第十七章:Explain详解

会在 explain 的基础上额外提供一些查询优化的信息。紧随其后通过 show warnings命令可以得到优化后的查询语句,从而看出优化器优化了什么。额外还有filtered列,是一个半分比的值,rows *filtered/100 可以估算出将要和 explain 中前一个表进行连接的行数(前一个表指 explain中的id值比当前表id值小的表)。

2024-09-22 13:00:20 1036

原创 Ambari集群部署全流程_apache all=(all) nopasswd all是什么含义

ambari2021。

2024-09-22 10:45:28 254

原创 MapReduce的优化

(2)Map和Reduce数设置不合理(3)Map运行时间太长,导致Reduce等待过久(4)小文件过多(5)大量的不可分块的超大文件(6)Spill(溢写)次数过多(7)Merge次数过多等。MapReduce的优化方法MapReduce优化方法主要从六个方面考虑:数据输入、Map阶段、Reduce阶段、IO传输、数据倾斜问题和常用的调优参数。

2024-09-22 09:18:41 476

原创 JVM 运行时数据区详解

对于JAVA虚拟机如何实现垃圾搜集器,JAVA虚拟机规范没有明确的规定,也正因如此,我们平时使用的JAVA虚拟机中提供了许多种垃圾搜集器,它们采用不同的算法以及实现方式,已满足多方面的性能需求。它的作用就是提供字节码指令操作变量计算的空间,比如简单的,对于int a=9这句话来说,就需要先将9压入操作数栈,再将9赋给a这个变量。,特别的,如果是实例方法的局部变量表,第0个局部变量会是一个指向当前实例的引用,也就是this关键字,其余的局部变量则从索引1开始。如果某个虚拟机实现的。

2024-09-22 06:53:44 344

原创 Java编程:马踏棋盘算法(骑士周游问题)

/ 对ps进行排序,排序的规则就是对ps所有的Point对象的下一步的位置,进行非递减排序。// 当前位置记录为第几步。visited[p.y * X + p.x]) { // 说明还没有访问过。// 取出下一个可以走的位置。// 根据当前这一步的所有的下一步的选择位置,进行非递减排序,减少回溯的次数。// 马儿初始位置的行,从1开始编号。// 马儿初始位置的列,从1开始编号。// 判断马儿是否完成了任务,使用step和应该走的步数比较,// 如果没有达到数量,则表示没有完成任务,将整个棋盘置0。

2024-09-22 04:26:50 894

原创 Java并发:线程池详解(ThreadPoolExecutor)

***/// 获取返回结果// 超时时间为3秒线程池的定义和优点线程池,从字面含义来看,是指管理一组同构工作线程的资源池。线程池是与工作队列密切相关的,其中在工作队列中保存了所有等待执行的任务。工作者线程的任务很简单:从工作队列中获取一个任务,执行任务,然后返回线程池并等待下一个任务。“在线程池中执行任务“”比“为每个线程分配一个任务”优势更多。通过重用现有的线程而不是创建线程,可以在处理多个请求时分摊在线程创建和销毁过程中产生的巨大开销。

2024-09-22 02:01:44 1063

原创 Java命令简易入门-1:Java基本概念

就是你编写好的.java源代码编译为.class字节码文件后,那么任何兼容该.class文件的JRE中的JVM都可以运行该字节码文件。因此,对于开发人员,只有JRE是不够。比如,你的Java程序不包含Java Swing代码,你可以使用jlink为你的程序定制一个更小的专属于你的程序的JRE。所谓的结构中立指的是.class文件包含的面向JVM的字节码命令,而不是面对某个操作系统的机器码。JDK 8及之前,安装JDK的时候除了安装JDK还会安装一个独立的JRE,因此你在安装的时候,会发现要安装两个东西。

2024-09-21 23:36:30 522

原创 Java-14-发布了,再也不怕-NullPointerException-了!(1)

在Java 1 中就包含了了Null引用和NPE了,但是其实,Null引用是伟大的计算机科学家Tony Hoare 早在1965年发明的,最初作为编程语言ALGOL W的一部分。1965年,英国一位名为Tony Hoare的计算机科学家在设计ALGOL W语言时提出了null引用的想法。ALGOL W是第一批在堆上分配记录的类型语言之一。Hoare选择null引用这种方式,“只是因为这种方法实现起来非常容易”。

2024-09-21 20:54:35 599

原创 java 避免出现NullPointerException(空指针)的方法总结

同样的,通过定义什么可以是null,什么不能为null,调用者可以作出明智的决定。现代的编译器、IDE或者工具可以读此annotation并帮你添加忘记的空指针检查,或者向你提示出不必要的乱七八糟的空指针检查。因为调用null对象的toString()会抛出空指针异常,如果我们能够使用valueOf()获得相同的值,那宁愿使用valueOf(),传递一个null给valueOf()将会返回“null”,尤其是在那些包装类,像Integer、Float、Double和BigDecimal。

2024-09-21 20:52:32 1053

原创 jackson学习之八:常用方法注解

JsonValue。

2024-09-21 19:17:10 994

原创 Github上都在疯找的阿里内部“全栈技能修炼”终于来了

本章要学习的不仅仅是Angular Material的一些知识,还要学习Angular的模块化、服务层的开发、响应式编程的概念,以及响应式编程框架RxJS,最后还会应用以上技巧打造一个较复杂的交互应用——忘记密码。后端作为内容资源的提供者,而前端作为这些资源的消费者,将资源以需要的形式展现给使用者,也就是我们的最终用户。同时,全栈的目的并不是一个人搭建起一个复杂的商业应用,在现代软件大工程化的今天,这个目标既没有必要,也没有价值。本章主要集中讨论书中所采用的各种技术的选型,包括前端、后端、数据库、缓存等。

2024-09-21 17:36:38 365

原创 B站【狂神说Java笔记】-多线程

synchronized 方法 控制对 “ 对象”的访问,每个对象对应一把锁,每个synchronized 方法都必须获得调用该方法的对象的锁才能执行,否则线程会阻塞,方法一旦执行,就独占该锁,直到该方法返回才释放锁,后面被阻塞的线程才能获得这个锁,继续执行。由于同一个进程的多个线程共享同一块存储空间,在带来方便的同时,也带来了访问冲突问题,为了保证数据在方法中被访问时的正确性,在访问时加入 锁机制 synchronized ,当一个线程获得对象的排它锁,独占资源,其他线程必须等待,使用后释放锁即可。

2024-09-21 14:44:50 1008

空空如也

空空如也

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

TA关注的人

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