精彩博客

消息队列的消费语义和投递语义

引言 所谓的消费语义,指的就是如下三种情况 如何保证消息最多消费一次 如何保证消息至少消费一次 如何保证消息恰好消费一次 其实类似还有一个投递语义 如何保证消息最多投递一次 如何保证消...

昨天 14:41
126
0
浅谈Redis五种数据结构的底层原理

概念 Redis作为一个开源的用C编写的非关系型数据库,基于优秀的CRUD效率,常用于软件系统的缓存,其本身提供了以下五种数据格式: string:字符串 list:列表 hash:散列表 set:无序集合 zs...

前天 16:00
771
1
坐标转换(c#)

坐标转换 坐标转换,简言之就是讲一个坐标系的坐标通过特定模型转换到另一坐标下;转换中,需要用到不同的转换模型,例如三维空间下的布尔莎七参数、莫洛金斯模型;二维空间下的平面三参、四...

前天 15:14
207
0
tio-websocket-spring-boot-starter 的简单使用

引言 T-io网络通讯框架开源之后受到许多同学的喜欢,但是对于使用Spring系列技术的同学用起来稍许不适。于是乎抽时间写了个 starter,很荣幸代码被作者采纳,正式入驻T-io家族包。 tio-websoc...

06/17 08:16
2.2K
11
死磕 java同步系列之ReentrantLock VS synchronized——结果可能跟你想的不一样

问题 (1)ReentrantLock有哪些优点? (2)ReentrantLock有哪些缺点? (3)ReentrantLock是否可以完全替代synchronized? 简介 synchronized是Java原生提供的用于在多线程环境中保证同步的...

06/11 08:14
1K
4
线程池没你想的那么简单(续)

前言 前段时间写过一篇《线程池没你想的那么简单》,和大家一起撸了一个基本的线程池,具备: 线程池基本调度功能。 线程池自动扩容缩容。 队列缓存线程。 关闭线程池。 这些功能,最后也留下...

06/06 09:03
4.4K
7
死磕 java同步系列之ReentrantLock源码解析(二)——条件锁

问题 (1)条件锁是什么? (2)条件锁适用于什么场景? (3)条件锁的await()是在其它线程signal()的时候唤醒的吗? 简介 条件锁,是指在获取锁之后发现当前业务场景自己无法处理,而需要等...

06/03 00:17
494
0
死磕 java同步系列之ReentrantLock源码解析(一)——公平锁、非公平锁

问题 (1)重入锁是什么? (2)ReentrantLock如何实现重入锁? (3)ReentrantLock为什么默认是非公平模式? (4)ReentrantLock除了可重入还有哪些特性? 简介 Reentrant = Re + entrant,...

06/02 00:45
1K
6
Spring Boot 2 快速教程:WebFlux 集成 Thymeleaf(五)

这是泥瓦匠的第105篇原创 文章工程: JDK 1.8 Maven 3.5.2 Spring Boot 2.1.3.RELEASE 工程名:springboot-webflux-4-thymeleaf 工程地址:见文末 前言 上一讲,我们用 MongoDB 来实现 WebF...

05/31 11:22
765
0
设计模式看了又忘,忘了又看?

设计模式收藏这篇就够了 耗时了 5 个月,终于把设计模式一整个系列写完。其实设计模式这一系列文章网上已经有很多非常好、非常优秀的文章,为什么要写呢? 一方面是为了学得更扎实,印象中设...

05/29 08:25
1K
10
开发函数计算的正确姿势 —— 移植 next.js 服务端渲染框架

首先介绍下在本文出现的几个比较重要的概念: 函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传。函数计算准...

05/24 12:15
251
0
死磕 java同步系列之自己动手写一个锁Lock

问题 (1)自己动手写一个锁需要哪些知识? (2)自己动手写一个锁到底有多简单? (3)自己能不能写出来一个完美的锁? 简介 本篇文章的目标一是自己动手写一个锁,这个锁的功能很简单,能进...

05/23 22:45
839
0
Spring Boot 2 快速教程:WebFlux 集成 Mongodb(四)

摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘要,谢谢! 这是泥瓦匠的第104篇原创 文章工程: * JDK 1.8 * Maven 3.5.2 * Spring Boot 2.1....

05/23 20:16
684
0
Go语言中的代码重用 - 继承还是组合?

故事要从我在一个项目中,想要假装的专业一点而遇到的一个陷阱说起。 代码重用 在这个项目中,我们已经有了类似如下的代码: package main import ( "fmt" ) func main() { user := &User{na...

05/23 10:35
560
4
简单实用的对象转换复制工具

一、概述 工作中经常会遇到这样的场景,需要把对象A中的变量复制到对象B中,这是一个枯燥又没有技术含量的工作,最繁杂枯燥的方法是先调用A对象的get方法将A中待复制的变量取出然后再调用B对...

05/22 16:11
359
2
程序兵法:Java String 源码的排序算法(一)

摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘要,谢谢! 这是泥瓦匠的第103篇原创 《程序兵法:Java String 源码的排序算法(一)》 文章工...

05/21 13:44
140
1
死磕 java同步系列之synchronized解析

问题 (1)synchronized的特性? (2)synchronized的实现原理? (3)synchronized是否可重入? (4)synchronized是否是公平锁? (5)synchronized的优化? (6)synchronized的五种使用方...

05/21 07:56
609
2
BAT面试必问HashMap源码分析

HashMap 简介 HashMap 主要用来存放键值对,它基于哈希表的Map接口实现,是常用的Java集合之一。 JDK1.8 之前 HashMap 由 数组+链表 组成的,数组是 HashMap 的主体,链表则是主要为了解决哈...

05/20 21:06
1K
0
java 面试知识点笔记(十)多线程与并发-原理 上篇

问:线程安全问题的主要诱因? 存在共享数据(也称临界资源) 存在多条线程共同操作这些共享数据 解决方法:同一时刻有且只有一个线程在操作共享数据,其他线程必须等到该线程处理完数据后再...

05/20 14:33
199
0
在闲鱼,我们如何用Dart做高效后端开发?

背景 像阿里其他技术团队以及业界的做法一样,闲鱼的大多数后端应用都是全部使用java来实现的。java易用、丰富的库、结构容易设计的特性决定了它是进行业务开发的最好语言之一。后端应用中数...

05/20 10:50
3.9K
4

没有更多内容

加载失败,请刷新页面

tio-websocket-spring-boot-starter 的简单使用

引言 T-io网络通讯框架开源之后受到许多同学的喜欢,但是对于使用Spring系列技术的同学用起来稍许不适。于是乎抽时间写了个 starter,很荣幸代码被作者采纳,正式入驻T-io家族包。 tio-websoc...

06/17 08:16
2.2K
11
线程池没你想的那么简单(续)

前言 前段时间写过一篇《线程池没你想的那么简单》,和大家一起撸了一个基本的线程池,具备: 线程池基本调度功能。 线程池自动扩容缩容。 队列缓存线程。 关闭线程池。 这些功能,最后也留下...

06/06 09:03
4.4K
7
死磕 java同步系列之ReentrantLock源码解析(一)——公平锁、非公平锁

问题 (1)重入锁是什么? (2)ReentrantLock如何实现重入锁? (3)ReentrantLock为什么默认是非公平模式? (4)ReentrantLock除了可重入还有哪些特性? 简介 Reentrant = Re + entrant,...

06/02 00:45
1K
6
在闲鱼,我们如何用Dart做高效后端开发?

背景 像阿里其他技术团队以及业界的做法一样,闲鱼的大多数后端应用都是全部使用java来实现的。java易用、丰富的库、结构容易设计的特性决定了它是进行业务开发的最好语言之一。后端应用中数...

05/20 10:50
3.9K
4
线程池没你想的那么简单

前言 原以为线程池还挺简单的(平时常用,也分析过原理),这次是想自己动手写一个线程池来更加深入的了解它;但在动手写的过程中落地到细节时发现并没想的那么容易。结合源码对比后确实不得...

05/20 08:37
2.4K
7
GIL 已经被杀死了么?

本文原创并首发于公众号【Python猫】,未经授权,请勿转载。 原文地址:https://mp.weixin.qq.com/s/8KvQemz0SWq2hw-2aBPv2Q 花下猫语: Python 中最广为人诟病的一点,大概就是它的 GIL 了。...

05/19 23:07
2.4K
3
浅谈Java【代理设计模式】——看这篇文章就懂了

写在前面:设计模式源于生活,而又高于生活! 什么是代理模式 为其他对象提供一种代理以控制对这个对象的访问。 为什么使用代理模式 中介隔离:在某些情况下,一个客户类不想或者不能直接引用...

05/18 22:45
1K
7
0088足球分析预测笔记|编写高性能的Java代码需要注意的4个问题

一、并发 Unable to create new native thread …… 问题1:Java中创建一个线程消耗多少内存? 每个线程有独自的栈内存,共享堆内存 问题2:一台机器可以创建多少线程? CPU,内存,操作系统...

05/10 15:09
2.3K
6
【奇思妙想】如何给网关设计一款专属的权限控制【责任链设计模式】

写在前面:设计模式源于生活,而又高于生活! 什么是责任链模式 客户端发出一个请求,链上的对象都有机会来处理这一请求,而客户端不需要知道谁是具体的处理对象。这样就实现了请求者和接受者...

05/09 23:37
1K
4
gitbook 入门教程之解决windows热加载失败问题

破镜如何贴花黄 gitbook 在 Windows 系统无法热加载,总是报错! gitbook 是一款文档编写利器,可以方便地 markdown 输出成美观优雅的 html ,gitbook serve 启动服务器后,原来相貌平平的 markdo...

05/08 21:29
940
2
经典设计模式之策略模式【如何重构聚合支付平台,对接【支付宝,微信,银联支付】】

写在前面:设计模式源于生活,而又高于生活! 为什么要使用设计模式重构代码 使用设计模式可以重构整体架构代码、提高代码复用性、扩展性、减少代码冗余问题。 Java高级工程师装逼的技能! ...

05/08 09:29
2.4K
5
最全的JAVA知识汇总(附讲解和思维导图)

微信公众号:内核小王子 关注可了解更多关于数据库,JVM内核相关的知识; 如果你有任何疑问也可以加我pigpdong[^1] jvm 一行代码是怎么运行的 首先,java代码会被编译成字节码,字节码就是jav...

04/29 11:52
3.2K
13
使用lombok编写优雅的Bean对象

使用java编写代码,十之八九都是在写java类,从而构建java对象。lombok之前也说了不少,但使用了这么多年,感觉还是有很多技巧可以使用的。 毫无疑问,使用lombok,编写的java代码很优雅,而...

04/22 22:17
4.4K
22
len(x) 击败 x.len(),从内置函数看 Python 的设计思想

内置函数是 Python 的一大特色,用极简的语法实现很多常用的操作。 它们预先定义在内置命名空间中,开箱即用,所见即所得。Python 被公认是一种新手友好型的语言,这种说法能够成立,内置函数...

04/21 20:24
2.4K
1
通过MySQL存储原理来分析排序和锁

出自公众号 内核小王子 先抛出几个问题 1.为什么不建议使用订单号作为主键? 2.为什么要在需要排序的字段上加索引? 3.for update 的记录不存在会导致锁住全表? 4.redolog 和 binlog 有什么区别...

04/10 19:21
4.4K
17
关于 JDK 9 中的 JShell,你应该了解的 10 件事

JShell 是在 JDK 9 中首次引入的,以 Kulla 实现的 Java Enhancement Proposal (JEP) 222 规范的一部分。很多编程语言如 JavaScript、Python、Ruby 等,提供了非常易用的命令行执行工具,但 ...

04/06 08:30
2.9K
6
J2Cache 两级缓存中的 Region 到底是什么东西?

不时有人来询问 J2Cache 里的 Region 到底是什么概念,这里做统一的解答。 J2Cache 的 Region 来源于 Ehcache 的 Region 概念。 一般我们在使用像 Redis、Caffeine、Guava Cache 时都没有 Re...

04/03 10:55
1K
1
Java和操作系统交互细节

出自公众号 内核小王子 结合 CPU 理解一行 Java 代码是怎么执行的 根据冯·诺依曼思想,计算机采用二进制作为数制基础,必须包含:运算器、控制器、存储设备,以及输入输出设备,如下图所示。...

03/28 11:27
6.1K
46
Android 整体设计及背后意义

阿里妹导读:现实工作中经常可以听到这样的说法:框架的升级带来协议性能的提升、编程模式的变革带来业务的飞跃...... 姑且不论这些表述是否有问题,实际上如果系统地看待事物整体,可能会有...

03/22 13:09
1K
2
一个线程罢工的诡异事件

背景 事情(事故)是这样的,突然收到报警,线上某个应用里业务逻辑没有执行,导致的结果是数据库里的某些数据没有更新。 虽然是前人写的代码,但作为 Bug maker&killer 只能咬着牙上了。 因...

03/13 08:32
2.4K
8

没有更多内容

加载失败,请刷新页面

springmvc java对象转json,上传下载(未完)拦截器Interceptor以及源码解析(未完待续)

package com.atguigu.my.controller; import java.util.Collection; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; ...

33分钟前
16
0
所以说这才是Redis进化史吗?看Redis是如何变成最强缓存的

写在前面:笔者翻阅了很多资料,只能找到Redis2.2及以后的主要版本的发布日志。所以,让我们从2.2开始一步一步深入了解Redis。 2.2 redis-cli命令非常大的改进: Tab补全,支持help(例如help ...

昨天 22:09
16
0
JAVA8新特性(吐血整理)

一、Java 8 Lambda 表达式 Lambda 表达式,也可称为闭包,它是推动 Java 8 发布的最重要新特性。 Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中)。 使用Lambda 表达式可以...

昨天 21:42
6
0
大型网站系统的演化过程,必须掌握的几点技术!

一、前言 一个成熟的大型网站(如淘宝、京东等)的系统架构并不是开始设计就具备完整的高性能、高可用、安全等特性,它总是随着用户量的增加,业务功能的扩展逐渐演变完善的,在这个过程中,...

昨天 20:59
6
0
架构师五分钟带你读懂,Volatile的作用及原理

文章简介 分析volatile的作用以及底层实现原理,这也是大公司喜欢问的问题 内容导航 volatile的作用 什么是可见性 volatile源码分析 一、volatile的作用 在多线程中,volatile和synchronize...

昨天 20:53
33
0
一文带你理解Java中Lock的实现原理

当多个线程需要访问某个公共资源的时候,我们知道需要通过加锁来保证资源的访问不会出问题。java提供了两种方式来加锁,一种是关键字:synchronized,一种是concurrent包下的lock锁。synchro...

昨天 18:33
28
0
hibernate 删除表异常 DataIntegrityViolationException: Could not execute JDBC batch update

最近在做项目中, hibernate 物理删除 delete 方法的时候, 爆了诡异的错误, 比如 org.springframework.dao.DataIntegrityViolationException: Could not execute JDBC batch update; SQL ...

昨天 18:32
3
0
java的两种同步方式, Synchronized与ReentrantLock的区别

ava在编写多线程程序时,为了保证线程安全,需要对数据同步,经常用到两种同步方式就是Synchronized和重入锁ReentrantLock。 相似点: 这两种同步方式有很多相似之处,它们都是加锁方式同步,...

昨天 18:08
1
0
轻松学习java可重入锁(ReentrantLock)的实现原理

前言 相信学过java的人都知道 synchronized 这个关键词,也知道它用于控制多线程对并发资源的安全访问,兴许,你还用过Lock相关的功能,但你可能从来没有想过java中的锁底层的机制是怎么实现...

昨天 17:44
0
0
API鉴权及JWT详细分析

Web API常见的鉴权方法,即WebAPI中保障请求合法性的常见方法: (1)、API Key + API Secret (2)、cookie-session认证 这是比较老牌的鉴权方式了,这种鉴权方式有一下特点: A、为了使后台应用...

昨天 17:35
5
0
技术文章收集

必备 1. Java工程师成神之路(2019正式版) Java 1. HashMap容量的初始化 最佳参数:new HashMap<>((int) (预计个数 / 0.75) + 1) 1.1 关于HashMap容量的初始化,还有这么多学问 1.2 为什么阿...

昨天 16:53
1
0
(三)java版spring cloud+spring boot+redis多租户社交电子商务平台-Spring Cloud实战随机端口

我们经常会需要启动多个实例的情况来测试注册中心、配置中心等基础设施的高可用,也会用来测试客户端负载均衡的调用等。但是,我们一个应用只能有一个端口号,这就使得在本机测试的时候,不得...

昨天 16:52
1
0
Mysql-子查询

1、delete中的子查询(删除tableA中) delete a from tableA a, tableB b where a.column = b.column;

昨天 16:52
3
0
多线程安全(synchronized、三大特性、Java内存模型)

线程安全问题? 什么是线程安全问题?简单的说,当多个线程在共享同一个变量,做读写的时候,会由于其他线程的干扰,导致数据误差,就会出现线程安全问题。 比如说,多个窗口同时卖票这个案例...

昨天 16:33
15
0
spring面试专题一点通,再也不用担心面试不会回答了

文章内容有点小长,希望你能耐心阅读,更多Java面试题以及学习资料获取方式:加Qun:1017-599-436免费获取。 还有更多包括电子书,PDF文档以及视频精讲可以分享给大家,内容覆盖很广,分布式缓...

昨天 16:32
2
0
5月最热门的Java开源项目

1、LeetCodeAnimation https://github.com/MisterBooo/LeetCodeAnimation Star 28897 本项目将LeetCode 上所有的题目都用动画的形式演示出来 2、CS-Notes https://github.com/CyC2018/CS-No...

昨天 16:24
8
0
Redis高可用分布式

高可用 高可用(High Availability),是当一台服务器停止服务后,对于业务及用户毫无影响。 停止服务的原因可能由于网卡、路由器、机房、CPU负载过高、内存溢出、自然灾害等不可预期的原因导...

昨天 16:05
8
0
阿里Java岗一面被问到对Spring的理解,懵了?这些你又了解多少

还在机械地打代码?我们很多开发者在开发 Spring 的程序的时候,很多的情况下,都是被动的接受了前辈们为我们做好的 Spring 特性案例。这样以来,确实在很大的程度上减少了我们开发的成本,但...

昨天 16:05
5
0
值得收藏:《这 6 种实现负载均衡技术的方式不容错过》

负载均衡(Load Balance)是集群技术(Cluster)的一种应用,可以将工作任务分摊到多个处理单元,从而提高并发处理能力,有利于提升中大型网站的性能。接下来小编就为大家介绍6种实现负载均衡技术...

昨天 15:53
30
0
小猿圈WEB前端之HTML5+CSS3面试题(一)

越来越多人喜欢前端岗位,毕业季已经悄然来临,很多毕业生面临找工作,那你们在狂欢快乐最后恋恋不舍之际,是否想着过几天招工作的危机。如果想要毕业之后,走向前端的岗位,那看到小编的文章...

昨天 15:27
2
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部
0088足球分析预测版权所有,转载请说明出处