自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

健康平安的活着的专栏

给我一次重生的机会,好好活着。

  • 博客(1015)
  • 资源 (2)
  • 论坛 (1)
  • 收藏
  • 关注

原创 个人能力与目标-顶级程序员

顶级程序员:1.基础知识要扎实,各种算法,数学功底,各种底层原理要通。2.业务项目要出彩,要搞出牛逼的作品来,开源项目源码要阅读,不断学习新知识。3.各种软件技能要有,沟通能力,做ppt演讲的能力,英文能力,写作能力,总结归纳能力。代写java系统,网站,大数据分析挖掘,nlp自然语言处理....都看到这里了,就顺手点击左上角的【关注】按钮,点击右上角的小手,给个评论,关注一下...

2017-05-18 11:06:50 587

原创 网络I/o编程模型8 IO的零拷贝技术

一 传统IO模式1.传统模式:read:把数据从磁盘读取到内核缓冲区,再拷贝到用户缓冲区write:先把数据写入到 socket缓冲区,最后写入网卡设备如下图所示:2.流程:1.用户空间的应用程序通过read()函数,向操作系统发起IO调用,上下文从用户态到切换到内核态,然后再通过 DMA 控制器将数据从磁盘文件中读取到内核缓冲区2.接着CPU将内核空间缓冲区的数据拷贝到用户空间的数据缓冲区,然后read函数调用返回的结果,又会导致上下文从内核态切换到用户态。3.用户空间

2022-05-17 11:35:16 59

原创 java8型特性1- lambda表达式

一 lambda表达式lambda表达式本质上是一个匿名内部类函数。lambda表达式也常被称为闭包。Lambda表达式有参数、箭头和主体组成。在Java 语言中引入了一个新的语法元素和操作符。这个操作符为 “->”。该操作符被称为 Lambda 操作符或剪头操作符。左侧:指定了Lambda表达式需要的所有参数;右侧:指定了Lambda体,即lambda表达式要执行的功能。...

2022-05-15 19:23:48 79

原创 网络I/o编程模型7 Nio实现聊天室

一 nio实现聊天室1.1 功能描述服务器端:可以检测用户上线、离线,并实现消息的转发功能。客户端:通过channel可以五阻塞发送消息给其它所有用户,同时可以接受其它用户发送的消息(有服务器转发得到)使用NIO聊天系统,实现服务器端和客户端之间的数据非阻塞的简单通讯。1.2 代码1.服务端package com.ljf.netty.nio.chat;import org.omg.Messaging.SyncScopeHelper;import java.io.IOExce

2022-05-15 19:11:24 178

原创 网络I/o编程模型6 Nio之Selector以及NIO客户服务通讯

一 selector1.1 介绍 java的NIO,用非阻塞的IO方式,可以用一个线程,处理多个的客户端连接,就会使用到selector(选择器)。 netty的IO线程NIOEventLoop聚合了selector(选择器,也叫多路复用器),可以同时并发处理成百上千各个客户端连接。 当线程从某客户端socket通道进行读写数据时,若没有数据可用时,该线程可以进行其他任务。 只有在连接/通道真正有读写事件发生时,才会进行读写,就大大地减少了系统的开销,并且不必为每个连

2022-05-15 12:51:41 151

原创 网络I/o编程模型5 Nio之buffer的操作和常用方法

一 理解buffer的flip方法和clear方法1.1 flip方法1.2 clear方法1.3 代码案例1.代码public class RandomBuffer { public static void main(String[] args) { Random random = new Random(); IntBuffer buffer = IntBuffer.allocate(5); buffer.pu

2022-05-14 18:08:03 69

原创 网络I/o编程模型4 NIo之chanel通道实现文件复制

一 各种代码操作案例1.1 向本地文件写数据1.代码package com.ljf.netty.nio;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.nio.ByteBuffer;import java.nio.channels.FileChannel;/** * @ClassName: WriteToLoc

2022-05-14 16:37:43 12

原创 网络i/o编程3 NIO

一 NIO1.1 介绍1.NIO:为同步非阻塞。位于java的 java.nio.*包下,NIO三大核心部分:Channel 通道 Buffer 缓冲区:底层使用Unsafe类直接操作内存,Buffer中写入的所有数据jvm都不进行管理,不能被gc回收。 Selector 选择器2.NIO是面向缓冲区的。当数据读取到一个它稍后处理的缓冲区,需要时可在缓存区中前后移动,这就增加了处理过程中的灵活性,使用它可以提供非阻塞式的高伸缩性网络。3.通俗讲NIO的同步非阻塞:NIO是可以做到用一个

2022-05-12 22:49:01 166

原创 网络I/O编程2 BIO

一 BIO1.1 BIO特点BIO(blocking i/o): 同步阻塞,务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情就会造成不必要的连接开销。可以通过线程池机制改善。1.2 BIO的工作流程1.服务器启动一个ServerSocket2.客户端启动Socket对服务器进行通信,默认情况下服务器端要对每个客户建立一个线程与之通讯。3.客户端发出请求后,先咨询服务器是否有线程响应,如果没有则会等待,或者被拒绝。4.如

2022-05-12 14:08:33 202

原创 css基础知识

一 css1.css 用于控制网页样式的一种标记语言,通过使用css可以使网站外观更加美观,结构更加简化。2.css的语法: 选择符{属性:属性值};属性必须要包含在{}中,并且之间用属性和属性值“:”分隔。当有多个属性时,用“;”进行区分。3.选择符:通配符选择符,* 代表所有元素,如 *{font-size:12px};类型选择符 如 <p class="red"> 这是第一个段落 </p> 选择符的写法: p.red{color:red}...

2022-05-12 11:26:37 16

原创 网络通信1 AIO 和 BIO和 NIO

一 AIO与BIO与NIO1.常见的网络编程I/O模型有:AIO、BIO、NIO1.1 BIOBIO网络编程模型:Blocking IO即 阻塞IO。服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,也就是1对1的处理请求,如果这个连接不做任何事情就会造成不必要的连接开销。...

2022-05-12 07:21:29 131

原创 java基础知识18 泛型

一 泛型1.1 概念泛型可以理解解决数据类型安全问题,它主要的原理是:在类声明的时候,通过一个标识表示类中的某个属性或者某个方法的返回值以及参数类型。在类声明或者实例化的时候,只需要指定需要的类型即可。1.2 案例1.代码package com.perm.controller;/** * @ClassName: Point * @Description: TODO * @Author: liujianfu * @Date: 2022/05/11 08:58:21 *

2022-05-11 09:14:54 25

原创 java工程项目打成普通jar包的配置

一 pom依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/.

2022-05-10 09:18:34 74

原创 多线程 之 线程池1

一 线程池1.1 概念线程池(英语:thread pool):一种线程使用模式。线程过多会带来调度开销,进而影响缓存局部性和整体性能。而线程池维护着多个线程,等待着监督管理者分配可并发执行的任务。这避免了在处理短时间任务时创建与销毁线程的代价。线程池不仅能够保证内核的充分利用,还能防止过分调度。1.2 优点1.降低资源消耗: 通过重复利用已创建的线程降低线程创建和销毁造成的销耗。2.提高响应速度: 当任务到达时,任务可以不需要等待线程创建就能立即执行。3.提高线程的可管理性: 线程是

2022-05-08 19:38:07 436 2

原创 使用navicate可视化组件编写图表之间关系

一 使用navicate1.选择模型2.空白区域,右键新建表3.设计完各个表中的字段,设计表之间的关系设计好外键,这是会在两个表之间存在一条关系线4.设计关系端,那是1,那是n的关系基于xxx表,设计为1端,基于xxx表,设计为n端5.最后在每一端,设计一下标签...

2022-05-08 08:03:10 323

原创 关于mysql的command not found问题解决

一 问题1.1 问题描述[root@172-16-26-29 bin]# mysql -uroot -p-bash: mysql: command not found[root@172-16-26-29 bin]# pwd/usr/local/mysql/bin1.2 原因原因:因为mysql命令的路径在/usr/local/mysql/bin下面,所以你直接使用mysql命令时,系统在/usr/bin下面查此命令,所以找不到了 。1.3 解决办法使用软连接进行操作ln

2022-05-06 17:55:24 561 2

原创 java基础知识 17-2 匿名内部类

一 匿名内部类1.1 概述匿名内部类也就是没有名字的内部类。正因为没有名字,所以匿名内部类只能使用一次,它通常用来简化代码编写。使用匿名内部类还有个前提条件:必须继承一个父类或实现一个接口。匿名内部类访问格式: new 父类名称(){定义子类内容} 或者 new 父类接口() {定义子类内容}匿名内部类其实就是一个匿名的子类对象。1.2 代码案例1.代码public abstract class Henan { public abstract void...

2022-05-05 16:05:44 69

原创 java 基础知识17-1 内部类

一 内部类1.1.内部类的放问规则内部类可以直接放问外部类中的成员,包括私有。(子所以可以直接放问外部类中的成员,是因为内部类中持有了一个外部类的引用。外部类名.this)外部类要放问内部类,必建立内部类对象。1.2 情况1:内部类在成员位置,且非私有,非静态当内部类定义在外部类的成员位置上,而且非私有非静态,可以在外部其它类中直接建立内部类对象。格式为: 外部类名.内部类名 变量名=外部类对象.内部类对象。Outer.Inner oi=new Outer().new Inner(

2022-05-05 15:25:22 229

原创 2022年 《三国演义》手摘

1.在便好2.想我关某,空有一身本领,却只能落到天涯漂泊,报国无门的境遇。3.何故作此长叹4.时势造英雄,英雄亦实时也。5.单丝不成线,独木难成林6.淘尽狂沙始见真金,不可怜见7.燕雀安之鸿鹄之志8.宁可吾负天下人,休叫天下人负我9 太师肯赏脸,允不胜荣幸10.备实不敢应命...

2022-05-05 08:31:00 115

原创 java基础知识16 string字符串

一 String1.1.概述1.string str="" 和 string s=new string(); 是一回事2. string s1="abc" //s1是一个类类型变量,“abc”是一个对象。3.string s1=“abc”; string s2=new String("abc");s1==s2 返回结果为falses1.equals(s2) 返回结果为trues1在内存中只有一个对象,s2在内存中有两个对象。1.2 获取1.获取字符串长度 int le..

2022-05-04 09:59:52 589 2

原创 Java基础知识4-4 覆盖与重载的区别

一 重载重载:在同一个类中,允许存在一个以上的同名函数,只要他们的参数个数或参数类型不同即可,注意,返回值类型无关,只看参数列表。

2022-05-03 10:53:06 77

原创 生活中动听旋律-music

一 好听歌曲记录生活中,本人认为好听的歌曲。1.爱 小虎队2.女儿情3.你的样子4.殇(shang)雪 云菲菲5.笑看风云 郑少秋6.偏偏喜欢你

2022-05-02 18:15:30 112

原创 Java基础知识1 java基础&jdk常用命令

一 jdk与jre与jvmJVM:英文名称(Java Virtual Machine),就是我们耳熟能详的 Java 虚拟机。它只认识 xxx.class 这种类型的文件,它能够将 class 文件中的字节码指令进行识别并调用操作系统向上的 API 完成动作。所以说,jvm 是 Java 能够跨平台的核心,具体的下文会详细说明。JRE:英文名称(Java Runtime Environment),我们叫它:Java 运行时环境。它主要包含两个部分,jvm 的标准实现和 Java 的一些基本类库。..

2022-05-02 16:23:23 271

原创 java基础知识15 final关键字

一 final关键字1.修饰变量:final修饰的变量是一个常量,且只能赋值一次;既可以修饰成员变量,又可以修饰局部变量。2.修饰的方法不能被覆盖;3.修饰的类不能被继承。4.内部类定义在类中的局部位置时,只能访问该局部被final修饰的局部变量。...

2022-05-02 11:02:13 384

原创 java基础知识13 类变量(static)、实例变量、成员变量、局部变量

一 类变量和实例变量1.1 static变量和实例变量1.由static修饰的变量为类变量;非static修饰的变量为实例变量。2.由static修饰的方法为类方法;非static修饰的方法为实例方法。3.static:用于修饰成员(成员变量、成员函数);当被static静态修饰后,就多了一种调用方式,除了可以被对象调用外。还可以直接被类名调用。类名.静态成员。4.static的特点:1.随着类的加载而加载(随着类的消失而消失)生命周期最长。2.优于对象的存在。3.被所有对象所共享;4.

2022-05-02 10:16:11 77

原创 java基础知识-12 instanceof 关键词的作用

一 instanceof的作用instanceof 是 Java 的保留关键字。它的作用是测试它左边的对象是否是它右边的类的实例,返回 boolean 的数据类型。instanceof是Java的一个二元操作符,和==,>,<是同一类东东。 1 boolean result = obj instanceof Class   其中 obj 为一个对象,Class 表示一个类或者一个接口,当 obj 为 Class 的对象,或者是其直接或间接子类,或者

2022-05-01 20:08:18 95

原创 java基础知识-11:抽象类与接口

一 抽象类1.抽象类:在类和方法中加上关键字abstract,在Java中一个没有方法体的方法被定义为抽象方法,如果一个类中有抽象方法,那么这个类必须定义为抽象类。2.抽象方法一定在抽象类中;3.抽象方法和抽象类均可由abstract关键词修饰。4.抽象类中的方法要使用,必须由子类复写父类中的抽象方法。建立子类调用。其中如果子类只覆盖了部分抽象方法,那么该子类还是一个抽象类;5.抽象类中的抽象方法只有方法声明,没有代码的实现的空方法。普通方法必须有方法体。如下图所示:6.抽象

2022-05-01 19:57:56 242

原创 springboot 的“java -jar xxx.jar 包名.类 参数....“的各种情况

一 项目工程说明1.1 pom文件1.2 调用主类二 执行jar包2.1 直接执行jar包java -jar dky-Aggeration-operator.jar此时执行pom文件指定的主类,按照配置执行2.2 直接执行jar包 并指定类名进行执行java -jar dky-Aggeration-operator.jar ReguleArtAggeration2.3 直接执行jar包 并指定类名 参数 执行java -jar

2022-04-27 21:56:34 502

原创 使用Navicat+Premium模型设计表之间关系图(1:n;n:n)

一 设计E-R图之间关系1.打开Navicat+Premium软件,开始设计表2.设计表之间的关系操作步骤: 选中关系图标,将某张表的一个字段拖动到另外一张表的字段。设计表之间的关系:4.导出成png5.保存模型使用Navicat逆向建立Mysql数据模型 -- 高效记忆数据逻辑关系_程序员大宝(coder-dabao)的博客-CSDN博客_navicat逆向数据模型...

2022-04-25 14:27:02 2355 1

原创 css页面布局的总结和frameset布局的设置

一 布局总结1.一列固定高度居中:margin:auto;去掉body默认的外边距: margin:02.两列固定宽度居中:在两个div之外再加一个div3.用css的display:inline 将块级元素改为内联元素;也可以用display:block,将内联元素改为块元素。4.对于去掉无序或者有序表前的标志,设置属性: .menu {list-style:none}<ul class="menu"><li>123</li><li&.

2022-04-24 10:14:52 95 1

原创 关于DateUtil时间工具类造成程序报错

一 问题描述DateUtils工具类中,调取方法中格式化日期类SimpleDateFormat和calendar都被定义成静态成员变量。如下图所示:定义一个线程池,模拟10个线程并发,调用此工具类:不同子线程调取不同月份,可以看到202209和202210两个月份返回结果一样,数据错位,变乱。应该2022209月份的当月最后一天是:Mon Sep 31 23:59:59 CST 2022。二 问题解决办法解决办法:将DateUtils工具类中,调取方法里格式化日期类SimpleDa.

2022-04-23 15:54:58 396

原创 visio设置网络拓扑图

一 操作步骤1.打开visio,在界面中通过关键字进行搜索“网络”,如下图所示:2.选择,使用的网络模板图3.在区域中进行编辑4.成品,涉及保密,截取部分

2022-04-20 22:04:18 482

原创 mysql的like查询中“-”通配符的干扰以及解决办法

一 问题描述1.通配符%”是 MySQL 中最常用的通配符,它能代表任何长度的字符串,字符串的长度可以为 0。例如,a%b表示以字母 a 开头,以字母 b 结尾的任意长度的字符串。该字符串可以代表 ab、acb、accb、accrb 等字符串。2.“_”只能代表单个字符,字符的长度不能为 0。例如,a_b可以代表 acb、adb、aub 等字符串。3.问题描述:sql语句中通过like模糊查询“_z”,"_c"结尾的数据,但是不是_c,_z结尾的数据,也查询出来了。select t.

2022-04-19 10:20:15 471 1

原创 kafka 集成整合外部插件(springboot,flume,flink,spark)

一 kafka集成springboot1.工程结构2.pom文件 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.6.1</version> <relativePath/> &.

2022-04-12 09:43:18 144 1

原创 kafka的kraft模式

一 Kafka-Kraft 架构 左图为 Kafka 现有架构,元数据在 zookeeper 中,运行时动态选举 controller,由 controller 进行 Kafka 集群管理。右图为 kraft 模式架构(实验性),不再依赖 zookeeper 集群, 而是用三台 controller 节点代替 zookeeper,元数据保存在 controller 中,由 controller 直接进 行 Kafka 集群管理这样做的好处有以下几个: ⚫ Kafk

2022-04-11 11:15:03 1901

原创 kafka 消费端重复消费和漏消费以及提高吞吐量

一 重复消费和漏消费1.1 重复消费重复消费:已经消费了数据,但是 offset 没提交。 1.2 漏消费二 解决重复消费和漏消费如果想完成Consumer端的精准一次性消费,那么需要Kafka消费端将消费过程和提交offset过程做原子绑定。此时我们需要将Kafka的offset保存到支持事务的自定义介质(比 如MySQL)。三 数据挤压怎么提高吞吐量1.如果是Kafka消费能力不足,消费者数量较少,则可以考虑增 加Topic的分区数,并且同时提升消费...

2022-04-11 11:12:13 2581 2

原创 kafka的offset存储位置以及offset的提交方式

一 offset的存储位置1.1 存储位置1.从0.9版本开始,consumer默认将offset保存在Kafka 一个内置的topic中,该topic为__consumer_offsets2.Kafka0.9版本之前,consumer默认将offset保存在Zookeeper中。__consumer_offsets 主题里面采用 key 和 value 的方式存储数据。key 是 group.id+topic+ 分区号,value 就是当前 offset 的值。每隔一段时间,.

2022-04-11 09:09:20 251

原创 kafka 消费者的消费策略以及再平衡

一 kafka的消费策略1、一个consumer group中有多个consumer组成,一个 topic有多个partition组成,现在的问题是,到底由哪个consumer来消费哪个partition的数据。 2、Kafka有四种主流的分区分配策略: Range、RoundRobin、Sticky、CooperativeSticky。 可以通过配置参数partition.assignment.strategy,修改分区的分配策略。默认策略是Range + CooperativeSticky

2022-04-11 08:33:11 266

原创 kafka 消费者进行消费数据的各种场景的API(你值得一看)

一 kafka消费端的参数

2022-04-10 14:53:38 507

原创 kafka 消费者的工作流程

一 kafka消费者1.1 kafka消费的方式consumer采用从broker中主动拉取数据。 Kafka采用这种方式。pull模式不足之处是,如 果Kafka没有数 据,消费者可能会陷入循环中,一直返回 空数据。不采用push(推)模式是因为:Kafka没有采用这种方式,因为由broker决定消息发送速率,很难适应所有消费者的 消费速率。例如推送的速度是50m/s,Consumer1、Consumer2就来不及处理消息。1.2Kafka 消费者总体工作流程1.3 消费者..

2022-04-10 12:18:56 1469

解决问题包libaio-0.3.109-13.el7.x86_64.cpio.lzma

解决安装mysql时报,libraries: libaio.so.1这个内容缺失

2021-06-29

linux服务器上centos7.5离线安装redis 所需要的gcc包

linux服务器上centos7.5离线安装redis 所需要的gcc包

2021-07-26

健康平安的活着的留言板

发表于 2020-01-02 最后回复 2020-01-02

空空如也

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

TA关注的人

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