java技术圈 为您找到相关结果 11

一文解决内存屏障

内存屏障是硬件之上、操作系统或JVM之下,对并发作出的最后一层支持。再向下是是硬件提供的支持;向上是操作系统或JVM对内存屏障作出的各种封装。内存屏障是一种标准,各厂商可能采用不同的实现。 本文仅为了帮助理解JVM提供的并发机制。首先,从volatile的语义引出可见性与重排序问题;接下来,阐述问题的产生原理,了解为什么需要内存屏障;然后,浅谈内存屏障的标准、厂商对内存屏障的支持,并以volatile为例讨论内存屏障如何解决这些问题;最后,补充介绍JVM在内存屏障之上作出的几个封装。为了帮助理解,会简要讨论硬件架构层面的一些基本原理(特别是CPU架构),但不会深入实现机制。 内存屏障的实现涉及大量硬件架构层面的知识,又需要操作系统或JVM的配合才能发挥威力,单纯从任何一个层面都无法理解。本文...阅读全文

博文 2020-02-20 15:43:00 程序猿说你好

【hive】cube和rollup函数 - zzhangyuhang

cube 数据立方体(Data Cube),是多维模型的一个形象的说法.(关于多维模型这里不讲述,在数据仓库设计过程中还挺重要的,有兴趣自行查阅) 立方体其本身只有三维,但多维模型不仅限于三维模型,可以组合更多的维度 为什么叫数据立方体? 一方面是出于更方便地解释和描述,同时也是给思维成像和想象的空间; 另一方面是为了与传统关系型数据库的二维表区别开来 下图为数据立方体的形象图 其实并不用把cube理解得很高大上,只要理解为分别按照不同维度进行聚合. hive中也有cube函数,可以实现多个任意维度的查询 cube(a,b,c)则首先会对(a,b,c)进行group by, 然后依次是(a,b),(a,c),(a),(b,c),(b),(c),最后在对全表进行group by,他会统计所选列...阅读全文

博文 2022-07-08 08:28:34 博客园

[白话解析] Flink的Watermark机制 - 罗西的思考

[白话解析] Flink的Watermark机制 0x00 摘要 对于Flink来说,Watermark是个很难绕过去的概念。本文将从整体的思路上来说,运用感性直觉的思考来帮大家梳理Watermark概念。 0x01 问题 关于Watermark,很容易产生几个问题 Flink 流处理应用中,常见的处理需求/应对方案是什么? Watermark究竟应该翻译成水印还是水位线? Watermark本质是什么? Watermark是如何解决问题? 下面我们就来简要解答这些问题以给大家一个大致概念,在后文中,会再深入描述。 问题1. Flink 流处理应用中常见的需求/方案是什么 聚合类的处理 Flink可以每来一个消息就处理一次,但是有时我们需要做一些聚合类的处理,例如:在过去的1分钟内有多少用户...阅读全文

博文 2022-05-09 09:31:25 博客园

java.nio.ByteBuffer用法小结_java bytebuffer用法_水蓝城城主的博客

文章目录 简介初始化向ByteBuffer写数据手动写入数据从SocketChannel中读入数据至ByteBuffer 从ByteBuffer中读数据复位position读取数据确保数据长度字节序处理 继续写入数据总结 简介 在Java的Socket编程中,若使用阻塞式(BIO),则往往通过ServerSocket的accept()方法获取到客户端Socket之后,再使用客户端Socket的InputStream和OutputStream进行读写。Socket.getInputstream.read(byte[] b)和Socket.getOutputStream.write(byte[] b)的方法中的参数都是字节数组。这种阻塞式的Socket编程显然已经远远不能满足目前的并发式访问需求...阅读全文

博文 2023-09-13 16:38:22 CSDN博客

还在为如何高效绘制时序图而苦恼?让PlantUML来拯救你!

作为一个软件攻城狮,在日常板砖中,经常会涉及到和其他模块的交互,为了理清这些交互关系,我们需要绘制各个模块间的时序交互图。以前绘制这些交互时序图,用的都是visio,实际使用下来感觉也不是很方便(可能我比较菜,不是visio大神),痛点如下:在绘制时序图时,我们经常会对各个模块的位置和交互的线序进行调整,用visio画图的话,调整模块位置和线序真是又酸又爽。2. 操作不够行云流水,一会儿拖个框,一会儿打个字,要是画图都能像打字一样方便该多好。3. OFFICE全家桶的启动速度你懂得。。。从学生时代我就一直在忍受visio带来的诟病,无奈毕业论文钦定要这玩意画图,不然我早就送他去。。。。。。直到工作后遇到这款神器!!!!!!PlantUML简介顺序图用例图类图对象图活动图组件图部署图状态图时序...阅读全文

flink实时规则营销系统(39期,2023版)

![1.png](http://static.itsharecircle.com/240220/9b22c1eab60964ff6648b1ef78d361de.png) flink实时规则营销系统(39期,2023版)——简单来说,本系统核心是一个基于事件驱动且可进行动态规则计算的实时系统,在技术上它是通用的;本套架构及系统内核,不仅可以用于“实时运营”,也可以用于“实时风控”,“实时推荐”,“实时交通监控”等场景。运营场景举例:下单促付款,新品发布信息精准送达。 本系统,在核心规则引擎之外,也集成了大量metric及跟踪数据输出,能在系统中及系统外进行多维度数据分析,以深度掌握各类市场运营活动的效果,以及系统运行的各类状态 什么是flink? flink是一个分布式,高性能,随时可用的以...阅读全文

博文 2024-02-20 10:30:52 udbmaidns

Snipaste for Mac 公测版推出,改变你在 Mac 上的截图体验

作为一个 Mac 电脑的重度用户,我一度羡慕过两款 Windows 上的应用,一个是 Powershell,一个是 Snipaste。而后者——一款强大的截图工具——现已登陆 macOS 平台,开启公测。 Mac 原生截图以优雅著称,也比较易用,殊不知截图可不是按下快捷键那一瞬间的事,前前后后还包括了标注、分享、预览等许多步骤。用过 Snipaste,你才能体会到原来截图中还有那么多见惯不怪的痛点,原来截图是一个流程而不是一个简单的动作。 截图:检测界面元素 截图时我们往往只需要画面中的一部分,平时往往需要手动框选,总是小心翼翼的,防止截进来多余的内容。Snipase 最线打动我的就是检测界面元素,光标移到对应元素上,就会自动出现矩形的选区。 这在截取屏幕上的文字时尤其有用,我不用再去纠结边...阅读全文

博文 2024-03-06 19:05:20 少数派

HTML常用布局标签:提升网页颜值!不可不知的HTML布局技巧全解析!

在HTML的世界里,一切都是由容器和内容构成的。容器,就如同一个个盒子,用来装载各种元素;而内容,则是这些盒子里的珍宝。理解了这一点,我们就迈出了探索HTML布局的第一步。 在HTML中,布局标签主要用于控制页面的结构和样式。本文将介绍一些常用的布局标签及其使用方法,并通过代码示例进行演示。 ## 一、理解布局的重要性 布局在我们前端开发中担任什么样的角色呢?想象一下,你面前有一堆散乱的积木,无序地堆放在那里。 ![image.png](http://static.itsharecircle.com/240314/42465c70aa2b41f9d7f36d7e9e494d03.png) 而你的任务,就是将这些积木按照图纸拼装成一个精美的模型。HTML布局标签的作用就像那张图纸,它指导浏览器...阅读全文

博文 2024-03-14 18:11:10 YDYXCODE

“分离”“聚合”两手抓,天翼云聚合计算赋能多元化应用场景!

随着大数据、人工智能和高性能计算的迅猛发展,在大数据分析、基因测序、芯片设计、数据库和AI训练等“大计算”应用场景中,计算资源需求呈现爆发式增长态势,而传统的计算架构在资源利用率、扩展性、IO性能等方面存在诸多挑战。为了应对这些挑战,天翼云提出全新的云计算基础设施产品理念——聚合计算,旨在突破物理限制,资源池化分离,聚合异构算力。天翼云聚合计算是由天翼云自主研发的下一代云计算算力基础设施,面向数据库、芯片设计、大数据、AI训练等场景,提供超聚合主机、超大内存主机、内存即服务、池化计算加速四种产品和服务。通过高速总线互联技术,聚合计算不仅继承了传统云主机弹性、高可靠等优势,同时具备内存跨机共享、vCPU“无限”扩展和内存空间热变配等特性,为复杂业务场景提供源源不断的算力。依托领先的高速总线互联...阅读全文

Flink1.19源码剖析【完结】

Flink1.19源码剖析【完结】 Flink是一个复杂的分布式计算框架,通过对其源代码进行分析,可以深入了解Flink的内部实现原理,包括任务调度、数据流处理、状态管理等方面。而从源代码目录入手,进行Flink源代码分析是非常必要的。因为Flink是一个开源的项目,其源代码是公开的,其组织结构非常清晰,不同模块的代码都被分别放置在不同的目录中,因此从源代码目录入手可以更加方便地找到需要分析的代码,而且可以更加系统地了解Flink的整体架构和设计思路。 一、时间类型解析 1、处理时间(Processing Time):处理时间是指数据被计算引擎处理的时间,以各个计算节点的本地时间为准。 2、事件事件(Event Time):事件时间是指数据发生的时间,通常产生于数据采集设备中,与Flink计...阅读全文

博文 2024-09-05 15:44:33 woaidaqipaiqiu1122

Flink入门到实战-阶段八(CEP)_flink cep geteventsforpattern

总结起来,复杂事件处理( CEP )的流程可以分成三个步骤: ( 1 )定义一个匹配规则 (2)将匹配规则应用到事件流上,检测满足规则的复杂事件 (3)对检测到的复杂事件进行处理,得到结果进行输出 入门 引入依赖 org.apache.flink flink-cep_${scala.binary.version} ${flink.version} 把连续3次登录失败的用户查询出来 public class LoginEvent { public String userId; public String ipAddr...阅读全文

博文 2024-10-09 14:11:07 CSDN博客