最新文章
-
linux 如何更改网卡 MAC 地址
原文出处:暗无天日查看网卡MAC地址使用ip命令就能查看MAC地址了:iplinkshow${interface}2:enp0s25:<NO-CARRIER,BROADCAST,MULTICAST,UP>mtu1500qdiscfq_codelstateDOWNmodeDEFAULTgroupdefaultqlen1000link/etherf0:de:f1:ad:1d:f0brdff......
-
Spring Boot 自动配置的 “魔法” 是如何实现的?
原文出处:sylvanassunSpringBoot是Spring旗下众多的子项目之一,其理念是约定优于配置,它通过实现了自动配置(大多数用户平时习惯设置的配置作为默认配置)的功能来为用户快速构建出标准化的应用。SpringBoot的特点可以概述为如下几点:内置了嵌入式的Tomcat、Jetty等Servlet容器,应用可以不用打包成War格式,而是可以直接以Jar格式运行。提供了多个可选择的”s......
-
JDK 源码阅读 : FileDescriptor
原文出处:木杉的博客操作系统使用文件描述符来指代一个打开的文件,对文件的读写操作,都需要文件描述符作为参数。Java虽然在设计上使用了抽象程度更高的流来作为文件操作的模型,但是底层依然要使用文件描述符与操作系统交互,而Java世界里文件描述符的对应类就是FileDescriptor。Java文件操作的三个类:FileIntputStream,FileOutputStream,RandomAcces......
-
Python 爬虫简单架构
-
深入 Spring Boot :实现对 Fat Jar jsp 的支持
原文出处:Hengyunabcspringboot对于jsp支持的限制对于jsp的支持,SpringBoot官方只支持了war的打包方式,不支持fatjar。参考官方文档: https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-developing-web-applications.html#boo......
-
使用 JITWatch 查看 JVM 的 JIT 编译代码
原文出处:刘正阳背景我们知道Java代码通过编译器编译成字节码,一般是class文件,有JVM的各个类加载器加载后,根据JVM的启动配置可以进行解释执行和编译执行,编译执行是由JIT(JustInTime)Compiler将字节码编译成本地代码来提高执行速度,缺点是编译本身会消耗时间并且会占用堆外空间(codecache中),但是一般Server应用内存足够且能够忍受启动时的略微缓慢。查看Java......
-
RocketMQ 源码学习 4 : 消息发送
原文出处:谢晞鸣1.Client端,三种发送方式RocketMQ支持常见的三种发送方式,SYNCproducer.send(msg)同步的发送方式,会等待发送结果后才返回。可以用send(msg,timeout)的方式指定等待时间,如果不指定,就是默认的3000ms.这个timeout最终会被设置到ResponseFuture里,再发送完消息后,用countDownLatch去awaittimeo......
-
linux 重要日志说明
原文出处:暗无天日从 https://linuxtechlab.com/important-logs-monitor-identify-issues/ 看到的/var/log/boot.log存储了与系统启动相关的信息。当启动有问题,或者系统莫名其妙的关机或重启,则可以查看该日志。/var/log/secure(RHEL/CentOS)&/var/log/auth.log(Debian/u......
-
深入Spring Boot :怎样排查 java.lang.ArrayStoreException
原文出处:Hengyunabcjava.lang.ArrayStoreException分析这个demo来说明怎样排查一个springboot1应用升级到springboot2时可能出现的java.lang.ArrayStoreException。demo地址:https://github.com/hengyunabc/spring-boot-inside/tree/master/demo-Arr......
-
透过现象看原理:详解 Spring 中 Bean 的 this 调用导致 AOP 失效的原因
原文出处:光闪前言在我们使用Spring时,可能有前辈教导过我们,在bean中不要使用this来调用被@Async、@Transactional、@Cacheable等注解标注的方法,this下注解是不生效的。那么大家可曾想过以下问题为何致this调用的方法,注解会不生效这些注解生效的原理又是什么如果确实需要调用本类方法,且还需要注解生效,该怎么做?代理是否可以做到this调用注解就直接生效?通过......
-
Service Mesh 及其主流开源实现解析
原文出处:行思錄什么是ServicemeshServiceMesh直译过来是 服务网格,目的是解决系统架构微服务化后的服务间通信和治理问题。服务网格由sidecar节点组成。在介绍servicemesh之前,我们先来看一下什么是sidecar.Sidecar在软件系统架构中特指边车模式。这个模式的灵感来源于我们生活中的边三轮:即在两轮摩托车的旁边添加一个边车的方式扩展现有的服务和功能。在绝地求生吃......
-
Http 持久连接与 HttpClient 连接池
原文出处:kingszelda一、背景HTTP协议是无状态的协议,即每一次请求都是互相独立的。因此它的最初实现是,每一个http请求都会打开一个tcpsocket连接,当交互完毕后会关闭这个连接。HTTP协议是全双工的协议,所以建立连接与断开连接是要经过三次握手与四次挥手的。显然在这种设计中,每次发送Http请求都会消耗很多的额外资源,即连接的建立与销毁。于是,HTTP协议的也进行了发展,通过持久......
-
Kafka 源码分析2 : Network相关
原文出处:刘正阳背景我们直接跑到最底层,看看kafka的网络层处理是怎么处理的。因为Java的NIO还是偏底层,不能直接用来做应用开发,所以一般都使用像netty的框架或者按照自己的需要封装一些nio,让上层业务不用关心网络处理的细节,只需要创建服务监听端口、接受请求、处理请求、写返回就可以了。我在看netty、thrift等涉及到网络的Java框架时比较喜欢去看他们的nio是怎么封装的,这里也是......
-
numfmt : 让数字变得更容易理解
原文出处:暗无天日像 ls, df, du 这类命令都带有一个选项可以将数字直接转换成人类容易阅读的形式来展现。比如,直接执行 df 时,容量显示的是多少个块,而当用 df-h 时,容量会根据块的数量转换成G/M/K的形式。[lujun9972@T520~]$df文件系统1K-块已用可用已用%挂载点dev1900280019002800%/devrun190693286819060641%/run......
-
kafka 源码分析3: Producer
原文出处:刘正阳ProducerProducer是生产者的接口定义常用的方法有publicFuture<RecordMetadata>send(ProducerRecord<K,V>record);publicFuture<RecordMetadata>send(ProducerRecord<K,V>record,Callbackcallback);......
文章总数:781
本月热门
-
Android 自建maven库
-
Map
-
. StringBuffer及其方法使用
-
常用类API String类
-
如何开发一个自己的Python组件?
-
Linux中more和less命令用法【转载】
-
Ubuntu16.04 安装 Gnome
-
SpringBoot 整合 sharding jdbc 做数据库分库分表 DEMO (Sharding-jdbc+mybatis+springboot+druid)
-
Eclipse创建Web工程
-
Java8 - ChronoUnit 日期枚举类
-
System.currentTimeMillis()代替new Date().getTime()
-
springcloud课程设计
-
java 纯socket发送邮件
-
Java实现TFIDF算法