- 博客(10)
- 收藏
- 关注
原创 各种各样的序列化方式
简述序列化语言格式XML和JSON - 知乎 (zhihu.com)xml、json、protobuf序列化协议 - 知乎 (zhihu.com)各种各样的序列化方式 - 知乎 (zhihu.com)
2023-06-12 12:10:04 53
原创 netty
HTTP服务器之所以称为HTTP服务器,是因为编码解码协议是HTTP协议,如果协议是Redis协议,那它就成了Redis服务器,如果协议是WebSocket,那它就成了WebSocket服务器,等等。使用Netty你就可以定制编解码协议,实现自己的特定协议的服务器。
2023-06-12 12:01:17 40
原创 java 服务器 在不同局域网内怎么解决
他这用的就是socket bind那几步,纯纯的BIO通过分析,我们的解决方法有多种1.两台电脑在同一局域网(这不是我们想要的)将我女朋友的电脑拿来和我一起连一个无线网,这样她的电脑就可以发现我的电脑的IP,然后就可以正常连接服务器了。2.修改服务器主机路由器中的映射关系,将内网映射到外网(不是我们想要的)该方法我没试过,因为我不知道我宿舍的路由器登录密码。。。以下简单说原理:上面介绍了NAT,如果你在百度搜IP,你会发现百度的IP地址和ipconfig出来的IP地址并不一样。
2023-06-10 11:28:07 256
原创 【无标题】
如果已配置,则在没有同步备机连接的情况下,后台业务线程可以直接提交,不用阻塞等待。在openGauss的存储引擎中,磁盘引擎和内存引擎共用同一套日志系统,以保证在数据库故障恢复场景下,各个引擎内和各个引擎间的数据持久性和一致性。为了保证数据库数据的可靠和高可用,当主机上执行的事务修改产生日志之后,在事务提交之前需要将本事务产生的日志同步到多个备机上。其中SyncRepQueue是等待不同同步方式(备机日志写入磁盘、备机日志接收、备机日志回放等同步方式)的业务线程等待队列,用于当某一种同步方式满足条件之后,
2023-06-08 10:24:14 20
转载 java编译期、运行期
java对象的内存分配绝大部分在堆上,而C++的对象既可以分配在栈上,也可以分配在堆上(需要手动回收),所以在内存回收时java性能要差一些。而这些java都是可以做的。java是动态扩展语言,意味着运行时加载的类可能改变程序类型的继承关系,这使得编译期很多全局优化难于C++的静态编译;编译期分配内存:并不是说在编译期就把程序所需要的空间在内存中分配好,而是说在编译期生成的代码中产生一些指令,说明:在java中内存的分配是在运行期的,这也是为什么我们把jvm的内存模型称作运行时数据区(五大部分)。
2023-06-08 09:56:31 426
原创 【详解】JVM中,编译器和解释器的作用和区别(转载)
本地机器码(Native Code)是指针对特定硬件平台和操作系统的机器语言代码,可以直接在该平台上运行。与高级语言(例如 Java)不同,本地机器码不需要经过翻译或解释,可以直接被计算机硬件执行。java跨平台的原因 就是jvm 对同样的.class字节码可以翻译成适用于不同平台的机器码在 Java 中,源代码被编译成字节码文件,而字节码文件需要通过解释器或即时编译器转换成本地机器码才能被执行。本地机器码的优势在于它可以直接在硬件上运行,因此执行速度相对较快,并且可以更好地利用硬件资源。
2023-06-08 09:36:08 156
原创 java引用
就是这个数据的别名,就像一个人的外号一样,你处理这个外号,就是对个人本身的处理 相当于C里面的引用,即&,存有某个类的实例地址。,它指向了一个A对象,也可以说它引用了一个A对象。此时,变量a的值为它所引用对象的地址。,而对象的具体信息都存储在堆内存上,然后由栈上面的引用指向堆中对象的地址。java另一大数据类型为基本数据类型,其包括包括数值型,字符型和布尔型。基本数据类型在被创建时,在栈上给其划分一块内存,将数值直接存储在栈上;而当变量指向一个对象时,这个变量就被称为。a就是变量的名名,1就是变量的值。
2023-06-07 22:24:28 32
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人