委派模式——从SLF4J说起

本文从业内流行的既有工具包入手,解析实现思路,沉淀一般方法。为技术建设的初学者提供一些实践思路的参考。 ...

读Java8函数式编程笔记06_Lambda表达式编写并发程序

1. 阻塞式I/O 1.1. 一种通用且易于理解的方式,因为和程序用户的交互通常符合这样一种顺序执行的方式 1.2. 将系统扩展至支持大量用户时,需要和服务器建立大量TCP连接,因此扩展性不是很好 2. 非阻塞式I/O 2.1. 异步I/O 2.2. 可以处理大量并发网络连接,而且一个线程可以为多个 ...

一文弄懂三色标记算法

本文已收录至Github,推荐阅读 👉 Java随想录 微信公众号:Java随想录 CSDN: 码农BookSea 你愈是少说你的伟大,我将愈想到你的伟大。——培根 面试官:我们先从JVM基础开始问,了解三色标记算法吗? 我:额......不了解。 面试官:出去的时候记得把门带上。 现在Java面 ...

Quarkus入门体验,22ms启动一个Web服务

简介 Quarkus是类似于Spring Boot的框架,可以方便大家进行Java开发。利用GraalVM的魔力,能更好的适应云原生的场景,极快的启动速度。 创建项目 在IDEA就直接有创建Quarkus项目的初始化工具,直接根据自己需要填好即可,非常方便: 选择自己需要的一些组件和依赖,我这里只选 ...

第三天Java——基础知识

创建项目 1.先创建空项目Empty project 2.再创建模板Module 3.设置项目结构 4.创建Java class 5.创建包 一、注释 注释颜色设置 Java中的注释有三种: 1.单行注释 //(双斜杠开头) 2.多行注释 /* 注释*/ 3.文档注释 /** * */ 二、标识符和 ...

JVM是如何解决跨代引用问题的?

本文已收录至Github,推荐阅读 👉 Java随想录 微信公众号:Java随想录 CSDN: 码农BookSea 不知道自己的无知,乃是双倍的无知。——柏拉图 跨代引用问题 跨代引用是指新生代中存在对老年代对象的引用,或者老年代中存在对新生代的引用。 假如要现在进行一次只局限于新生代区域内的收集 ...

day14-JdbcTemplate-01

JdbcTemplate-01 看一个实际需求: 如果希望使用spring框架做项目,Spring框架如何处理对数据库的操作呢? 方案一:使用之前的JdbcUtils类 方案二:spring提供了一个操作数据库(表)的功能强大的类JdbcTemplate。我们可以通过ioc容器来配置一个JdbcTe ...

rust写一个im聊天服务

工作之余,想搞一些东西,于是写了这么一个服务。目标是做一个通用的聊天程序,包含群聊、单聊、群聊天增删成员这些必须功能,以及支持各种类型的聊天等。 后端使用 rust ,前端使用 react 这一套,ui 上做的比较简单,主要是验证一下后端能力,展示使用。 主要功能有:用户体系,聊天组,组成员和消息, ...

【Python】爬虫实战-基于代理池的高并发爬虫

最近在写一个基于代理池的高并发爬虫,目标是用单机从某网站 API 爬取十亿级别的JSON数据。 代理池 有两种方式能够实现爬虫对代理池的充分利用: 搭建一个 Tunnel Proxy 服务器维护代理池 在爬虫项目内部自动切换代理 所谓 Tunnel Proxy 实际上是将切换代理的操作交给了代理服务 ...

离线环境解决maven编译外网下包问题

引言 近日一直忙着做持续集成,处于安全性考虑,需要在离线环境运行。项目依托Jenkins做Java/Python/Vue等工程的镜像构建,其中Java工程基本基于Maven,在外网条件下通过IDEA或者mvn命令均可正常打包,原本思路是将本地的repo全量拷贝到服务器,再执行同样的mvn命令,但实际 ...

SSL 证书基本概念扫盲

keytool VS openssl keytool 和 openssl 是俩个证书管理工具。 keytool 是 java JDK 自带的证书管理工具,使用 keytool 可以生成密钥,创建证书。只要装了 jdk,并正确设置了环境变量,就可以之间通过命令行执行 keytool 命令来管理证书。 ...