同一个账号如何实现多端登录强制下线的功能
在实际的开发中有很多的业务场景会涉及到同一个账号只能允许在一个地方登录,典型的如在一些视频类的网站中为了避免一个VIP会员被多人同时使用的问题,通过就会设计强制…
Python数据爬虫爬取超详细入门学习步骤(零基础入门)
1. 爬虫基础
1.1 爬虫定义与作用
网络爬虫,通常被称为网页蜘蛛或网络机器人,是一种按照一定规则自动抓取互联网信息的程序。爬虫技术使得我们能够从互联网的海量…
as-if-serial语义和happens-before原则
1、重排序
为了提高程序的执行性能,编译器(如JVM在编译Java代码)和处理器(如CPU在执行JVM字节码)常常会对指令做成重排序。
在Java中重排序有以下…
Linux安装Kafka以及避坑整理
1、什么是kafka
Kafka 是由Linkedin 公司开发的一个分布式、支持多分区、多副本,基于 Zookeeper的分布式消息流平台(高版本已经不再依赖…
深度剖析 AQS 设计原理,内容相当硬核!
一、背景介绍
在之前的文章中,我们介绍了 ReentrantLock、ReadWriteLock、CountDownLatch、CyclicBarrier、S…
如何实现在用户无感的情况下修复线上问题
我们经常会遇到一些线上需要及时修复的问题,但是如何在用户无感知的情况下悄悄的修复线上问题呢?今天聊一聊一些常见的在用户无感的情况下发布线上系统的方案。
1、Ng…
在 golang 中执行 javascript 代码的方案详解
在 Golang 中执行 JavaScript 代码可以通过几种不同的方式来实现。通常,这些方法包括使用外部 JavaScript 引擎或通过调用 JavaS…
如何在 Golang 中执行 Python 脚本代码——两种方法
在许多应用场景中,我们可能需要在 Golang(Go 语言)程序中执行 Python 脚本,特别是在处理一些特定的功能时,比如数据分析、机器学习或文本处理。如…
深入解析线程的等待与唤醒机制,硬核干货!
01、背景介绍
在之前的线程文章中,我们介绍了synchronized和volatile关键字,使用它能解决线程同步的问题,但是它们无法解决线程之间协调和通信…
项目中的BO、DTO、VO、PO如何区分以及规范的使用
我们在日常开发中经常会看到各种的以‘O’结尾的类,那么这些类代表什么含义呢,我们如何规范的使用这些类呢?今天我们就来聊一聊这个话题。
1、区分BO、DTO、VO…
聊一聊比synchronized更强大的同步锁:ReentrantLock
01、背景介绍
采用synchronized进行加锁,这种锁一般都比较重,里面的实现机制也非常复杂,同时获取锁时必须一直等待,没有额外的尝试机制,如果编程不当…
lua 脚本语言基础语法
1、变量声明
a=1
b=2
local c=3
a,b=1,2
(1)lua中默认声明的变量是全局变量(a=1),如果当前文件A引用了另外的文件B,在B…
盘点并发编程中几个实用的线程同步技术
01、背景介绍
下面我们一起来了解一下这些常用的并发工具类!
02、常用并发工具类
2.1、CountDownLatch
CountDownLatch是 J…
