Sun-Yang
码龄5年
关注
提问 私信
  • 博客:5,280
    5,280
    总访问量
  • 18
    原创
  • 457,058
    排名
  • 1
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:浙江省
  • 加入CSDN时间: 2019-09-22
博客简介:

SunYang的博客

查看详细资料
个人成就
  • 获得1次点赞
  • 内容获得0次评论
  • 获得5次收藏
创作历程
  • 1篇
    2023年
  • 17篇
    2021年
成就勋章
TA的专栏
  • Naocs
    1篇
  • SpringBoot
    1篇
  • Java
    18篇
  • 多线程
    5篇
  • J.U.C
    5篇
  • JVM
    4篇
  • 字节码
    2篇
  • netty
    8篇
  • nio
    8篇
  • 类加载
    1篇
  • 语法糖
    1篇
兴趣领域 设置
  • Java
    tomcatintellij-idea
  • 后端
    spring
  • 微软技术
    c#
  • 运维
    系统架构网络
  • 网络空间安全
    安全
  • 服务器
    linuxcentos
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

342人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

Nacos动态配置

SpringBoot集成Naocs动态配置
原创
发布博客 2023.10.19 ·
377 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

JVM-图解

JVM内存结构定义:java程序的运行环境(java二进制字节码的运行环境)一次编写,到处运行自动内存管理,垃圾回收机制数组下标越界检查多态(虚方法表调用)比较jvm java二进制运行环境jre jvm+基础类库(所有类)jdk jvm+ jre +编译工具开发javase jdk+IDE工具开发javaee程序 jdk + 应用服务器+IDE工具常见JVMHotSpotOpenJ9。。。。。![img](https://ny
原创
发布博客 2021.09.11 ·
513 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

并发五-J.U.C

并发五-J.U.C18. JUC-原子类18.1 原子整数J.U.C并发包提供了:(基本类型)AtomicBooleanAtomicIntegerAtomicLong以AtomicInteger为例:package com.sunyang.concurrentstudy;import java.util.concurrent.atomic.AtomicInteger;/** * @program: ConcurrentStudy * @description: Dmeo
原创
发布博客 2021.09.11 ·
412 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

并发四-线程池

并发四-线程池20. 共享模型之不可变20.1 SimpleDateFormat与DateTimeFormatterpackage com.sunyang.concurrentstudy;import lombok.extern.slf4j.Slf4j;import java.text.ParseException;import java.text.SimpleDateFormat;import java.time.format.DateTimeFormatter;import ja
原创
发布博客 2021.09.11 ·
263 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

并发三-共享模型之内存

并发三-共享模型之内存11. 共享模型之内存11.1 Java内存模型JMM 即 Java Memory Model,它定义了主存、工作内存抽象概念,底层对应着 CPU 寄存器、缓存、硬件内存、 CPU 指令优化等。JMM 体现在以下几个方面原子性 - 保证指令不会受到线程上下文切换的影响可见性 - 保证指令不会受 cpu 缓存的影响有序性 - 保证指令不会受 cpu 指令并行优化的影响11.1.1 可见性退不出的循环package com.sunyang.concurre
原创
发布博客 2021.09.11 ·
146 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

并发二-锁

并发二-锁4. 共享模型之管程4.1 共享带来的问题老王(操作系统)有一个功能强大的算盘(CPU),现在想把它租出去,赚一点外快小南、小女(线程)来使用这个算盘来进行一些计算,并按照时间给老王支付费用但小南不能一天24小时使用算盘,他经常要小憩一会(sleep),又或是去吃饭上厕所(阻塞 io 操作),有 时还需要一根烟,没烟时思路全无(wait)这些情况统称为(阻塞)在这些时候,算盘没利用起来(不能收钱了),老王觉得有点不划算另外,小女也想用用算盘,如果总是小
原创
发布博客 2021.09.11 ·
427 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

并发一-线程

并发1.进程与线程1.1 进程程序由指令和数据组成,但这些指令要运行,数据要读写,就必须将指令加载至 CPU,数据加载至内存。在指令运行过程中还需要用到磁盘、网络等设备。进程就是用来加载指令、管理内存、管理 IO 的。当一个程序被运行,从磁盘加载这个程序的代码至内存,这时就开启了一个进程。进程就可以视为程序的一个实例。大部分程序可以同时运行多个实例进程(例如记事本、画图、浏览器 等),也有的程序只能启动一个实例进程(例如网易云音乐、360 安全卫士等)1.2 线程一个进程之内可以分为一到
原创
发布博客 2021.09.06 ·
107 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java语法糖

语法糖编译期处理(javac)定义编译器在编译期javac会进行一些优化处理(语法糖)是指在java编译器把*.java源码编译成*.class字节码大的过程中,自动生成和转换的一些代码,主要是为了减轻程序员的负担,算是java编译器给的一些福利默认构造器不写构造方法时 ,编译器会默认生成一个无参的构造方法自动拆装箱JDK5之后加入Integer x = 1 ;int y = x;Integer x = Integer.valueOf(1); // -128 到
原创
发布博客 2021.08.27 ·
106 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

JVM-字节码

类加载-字节码字节码文件所谓的方法入口就是你调用的这个方法在实际内存中的地址,一段方法的代码块,一定是存在内存中的某个地址,那么这个代码块开始的地址,也就是所谓的方法的入口,因为你要从这个地址进入到你要调用的这个方法,然后去执行该方法的逻辑。而所谓的静态绑定,就是因为这个类的这个方法不能够被改变了,也就是说你不能重写这个方法了,类如 私有的,静态的,final的,即使你是子类继承了他,但是你也不能够重写这个方法,你要想调用这个方法,你只能以父类去调用这个方法,或者你想调用,你调用的也只能是父类中的这个
原创
发布博客 2021.08.27 ·
527 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

图解类加载

类加载类加载阶段加载将类的字节码载入方法区(1.8后为元空间,在本地内存中)中,内部采用 C++ 的 instanceKlass 描述 java 类,它的重要 field 有:_java_mirror 即 java 的类镜像,例如对 String 来说,它的镜像类就是 String.class,作用是把 klass 暴露给 java 使用,镜像起到一个桥梁的作用,Java对象不能直接访问instanceKlass 的信息,它得通过镜像_java_mirror 来访问。例如,对于String,Jav
原创
发布博客 2021.08.27 ·
185 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Netty学习笔记八Reactor模型

Netty学习笔记八八. Reactor典型实现常见的线程模型传统阻塞IO服务模型: 一个线程处理一个连接,阻塞。Reactor模型: 基于IO复用模型。Reactor(反应器模式,分发者模式,通知者模式)三种典型实现单Reactor单线程单Reactor多线程主从Reactor多线程Netty线程模式(Netty主要基于主从Reactor多线程模型做了一定的改进,其中主从Reactor多线程模型有多个Reacotr)核心组成Reactor:Reactor在一个单
原创
发布博客 2021.08.26 ·
186 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Netty学习笔记七Netty源码

Netty学习笔记七七. Netty源码写的比较乱,请见谅。1. 启动剖析Nio流程// 1. 创建SelectorSelector selector = Selector.open(); // 2. 创建serverSocketChannelServerSocketChannel ssc = ServerSocketChannel.open(); // 3. 将serverSocketChannel注册到selector上SelectionKey selectionKey
原创
发布博客 2021.08.26 ·
228 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Netty学习笔记六RPC框架简略版

Netty学习笔记六六. RPC框架服务端package com.sunyang.netty.study.server;import com.sunyang.netty.study.protocol.MessageCodecSharable;import com.sunyang.netty.study.protocol.ProtocolFrameDecoder;import com.sunyang.netty.study.server.handler.RpcRequestMessageHand
原创
发布博客 2021.08.26 ·
145 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Netty学习笔记五Netty参数

Netty学习笔记五五. 优化与参数1. 优化1.1 扩展序列化算法序列化,反序列化主要用在消息正文的转换上序列化时,需要将 Java 对象变为要传输的数据(可以是 byte[],或 json 等,最终都需要变成 byte[])反序列化时,需要将传入的正文数据还原成 Java 对象,便于处理package com.sunyang.netty.study.protocol;import com.google.gson.*;import java.io.*;import java
原创
发布博客 2021.08.26 ·
488 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Netty学习笔记四Netty进阶协议相关

Netty学习笔记四四. Netty 进阶1. 粘包半包1.1 粘包server端package com.sunyang.netty.study.nettydemo;import io.netty.bootstrap.ServerBootstrap;import io.netty.channel.ChannelFuture;import io.netty.channel.ChannelHandlerContext;import io.netty.channel.ChannelInboun
原创
发布博客 2021.08.26 ·
422 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Netty学习笔记三Netty基础

Netty学习笔记三三. Netty基础1. 概述1.1 Netty 是什么?Netty is an asynchronous event-driven network application frameworkfor rapid development of maintainable high performance protocol servers & clients.Netty 是一个异步的、基于事件驱动的网络应用框架,用于快速开发可维护、高性能的网络服务器和客户端这里的异
原创
发布博客 2021.08.26 ·
308 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Netty学习笔记二网络编程

Netty学习笔记二二. 网络编程1. 阻塞模式阻塞主要表现为:连接时阻塞读取数据时阻塞缺点:阻塞单线程在没有连接时会阻塞等待连接的到达,连接到了以后,要进行读取数据,如果没有数据,还要阻塞等待数据的到达。如果在等待连接期间其他线程发来了数据,依然读取不到数据,只能等待新的连接到达后,再次遍历所有channel的时候才能读取。如果在一个客户端连接上以后,迟迟不发送数据,那么下一个客户端来的时候,想请求连接就只能阻塞的等待,等待第一个客户端发送数据到服务器端,并处理完成,才会和新的客户
原创
发布博客 2021.08.26 ·
198 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Netty学习笔记一NIO基础

Netty学习笔记一一. NIO 基础non-blocking io 非阻塞IO (也可称为new IO, 因为是JDK1.4加入的)1. 三大组件1.1 Channel通道:数据的传输通道。我们之前使用的Stream也是数据的传输通道,只不过他们是单向的数据传输通道(输出(流)通道,输入(流)通道),但是Channel是读写数据的**【双向通道】**,可以将数据读入buffer,也可以将buffer的数据写入channel,而之前的stream要么是输入,要么是输出,channel比stream
原创
发布博客 2021.08.26 ·
228 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多