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

Tmux 使用教程

Tmux 是一个终端复用器(terminal multiplexer),非常有用,属于常用的开发工具。 本文介绍如何使用 Tmux。 一、Tmux 是什么? 1.1 会话与进程 命令行的典型使用方式是,打开一个终端窗口(terminal window,以下简称"窗口"),在里面输入命令。用户与计算机的这种临时的交互,称为一次"会话"(session) 。 会话的一个重要特点是,窗口与其中启动的进程是连在一起的。打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完。 一个典型的例子就是,SSH 登录远程计算机,打开一个远程窗口执行命令。这时,网络突然断线,再次登录的时候,是找不回上一次执行的命令的。因为上一次 SSH 会话已经终止了,里面的进程也随之消失了。 为...阅读全文

博文 2019-12-16 08:14:17 阮一峰的网络日志

HTTP/2 学习笔记

Why HTTP/2HTTP/1.1 是文本协议对用户友好,但对计算机不友好 (parse 不高效)TCP 连接管理TCP 慢启动,因此尽可能的复用连接 (keep-alive)一个 TCP 连接上只能有一个 request/response,可以使用 pipeline 实现并发请求,但会有头部阻塞问题,现代浏览器默认不启用 pipeline,而是通过对一个域名同时建立多个连接 workaround头部 field 重复,造成资源浪费资源没有优先级HTTP/2 特性:HTTP/2 没有改变 HTTP/1.1 的语义 (method, status code, URI, header 均保留),其改变了数据是如何传输的。多路复用: 为了更高效地利用多路复用,另外实现了 Flow Control...阅读全文

Flink窗口全解析:三种时间窗口、窗口处理函数使用及案例

我写的《Flink原理与实践》已由人民邮电出版社出版,感兴趣的朋友请到电商平台购买,谢谢!微信公号:ilulaoshi 个人网站:https://lulaoshi.info/flink/chapter-time-window/window.html我们经常需要在一个时间窗口维度上对数据进行聚合,窗口是流处理应用中经常需要解决的问题。Flink的窗口算子为我们提供了方便易用的API,我们可以将数据流切分成一个个窗口,对窗口内的数据进行处理。本文将介绍如何在Flink上进行窗口的计算。一个Flink窗口应用的大致骨架结构如下所示:// Keyed Window stream .keyBy(...) <- 按照一个Key进行分组 .window(...) <- 将数据流中的元素分配到相应的窗口中 ...阅读全文

TCP流量控制、拥塞控制

一:流量控制什么是流量控制?流量控制的目的?如果发送者发送数据过快,接收者来不及接收,那么就会有分组丢失。为了避免分组丢失,控制发送者的发送速度,使得接收者来得及接收,这就是流量控制。流量控制根本目的是防止分组丢失,它是构成TCP可靠性的一方面。如何实现流量控制?由滑动窗口协议(连续ARQ协议)实现。滑动窗口协议既保证了分组无差错、有序接收,也实现了流量控制。主要的方式就是接收方返回的 ACK 中会包含自己的接收窗口的大小,并且利用大小来控制发送方的数据发送。流量控制引发的死锁?怎么避免死锁的发生?当发送者收到了一个窗口为0的应答,发送者便停止发送,等待接收者的下一个应答。但是如果这个窗口不为0的应答在传输过程丢失,发送者一直等待下去,而接收者以为发送者已经收到该应答,等待接收新数据,这样双...阅读全文

博文 2020-09-06 14:33:09 知乎

Nagle算法-

说明:本文是最近项目上使用tcp时遇到的问题找到的原因,参考了网络上的几篇文章整理出来,如有版权问题,请留言。 Nagle 算法用于对缓冲区内的一定数量的消息进行自动连接。该处理过程(称为Nagling),通过减少必须发送的封包的数量,提高了网络应用程序系统的效率。 **1. ** Nagle算法的规则 (可参考tcp_output.c文件里tcp_nagle_check函数注释): 1)如果包长度达到MSS(MSS是最大分段大小Maxitum Segment Size ,MTU是最大传输单元Maxitum Transmission Unit),则允许发送; 2)如果该包含有FIN,则允许发送; 3)设置了TCP_NODELAY选项,则允许发送; 4)未设置TCP_CORK选项时,若所有发出...阅读全文

博文 2021-11-05 07:39:41 TCP缓冲区管理算法

分布式理论

# 分布式理论 - BASEBASE是“Basically Available, Soft state, Eventually consistent(基本可用、软状态、最终一致性)”的首字母缩写。其中的软状态和最终一致性这两种技巧擅于对付存在分区的场合,并因此提高了可用性。@pdai分布式理论 - BASE什么是BASECAP 与 BASE 关系CAP 与 ACID 关系# 什么是BASEeBay 的架构师 Dan Pritchett 源于对大规模分布式系统的实践总结,在 ACM 上发表文章提出 BASE 理论,BASE 理论是对 CAP 理论的延伸,核心思想是即使无法做到强一致性(Strong Consistency,CAP 的一致性就是强一致性),但应用可以采用适合的方式达到最终一致性(...阅读全文

博文 2023-11-23 14:11:14 BASE | Java 全栈知识体系

HBase原理 – 所有Region切分的细节都在这里了 – 有态度的HBase/Spark/BigData

Region自动切分是HBase能够拥有良好扩张性的最重要因素之一,也必然是所有分布式系统追求无限扩展性的一副良药。HBase系统中Region自动切分是如何实现的?这里面涉及很多知识点,比如Region切分的触发条件是什么?Region切分的切分点在哪里?如何切分才能最大的保证Region的可用性?如何做好切分过程中的异常处理?切分过程中要不要将数据移动?等等,这篇文章将会对这些细节进行基本的说明,一方面可以让大家对HBase中Region自动切分有更加深入的理解,另一方面如果想实现类似的功能也可以参考HBase的实现方案。 Region切分触发策略 在最新稳定版(1.2.6)中,HBase已经有多达6种切分触发策略。当然,每种触发策略都有各自的适用场景,用户可以根据业务在表级别选择不同的...阅读全文

博文 2023-09-21 14:20:13 hbasefly.com

一课掌握Java并发编程精髓(完结13章)

一课掌握Java并发编程精髓(完结13章) 分享一套Java课程——一课掌握Java并发编程精髓(完结13章),附源码+PDF课件下载。 并发编程 1.多线程 Java 是最先支持多线程的开发的语言之一,Java 从一开始就支持了多线程能力。由于现在的 CPU 已经多是多核处理器了,是可以同时执行多个线程的。 多线程优点 多线程技术使程序的响应速度更快 ,可以在进行其它工作的同时一直处于活动状态,程序性能得到提升。 性能提升的本质 就是榨取硬件的剩余价值(硬件利用率)。 并行与并发 单核 cpu 下,线程实际是串行执行的。操作系统中有一个组件叫做任务调度器,将 cpu 的时间片,分给不同的线程使用,只是由于 cpu 在线程间(时间片很短)的切换非常快,人类感觉是同时运行的。 总结为一句话就是...阅读全文

博文 2023-12-20 16:06:06 woaiwodejia333

MySQL必会核心问题50讲|完结

MySQL必会核心问题50讲|完结​来百度APP畅享高清图片获课获取ZY↑↑方打开链接↑↑MySQL 必会核心问题解释MySQL 是世界上最流行的开源关系型数据库管理系统之一,广泛应用于各种规模的应用程序中。以下是一些MySQL的核心问题及其解释,帮助你更好地理解和使用MySQL。1. 什么是InnoDB和MyISAM?它们有什么区别?InnoDB:事务支持:支持ACID事务,确保数据的一致性和完整性。行级锁定:支持行级锁定,提高并发性能。外键约束:支持外键,确保数据的引用完整性。崩溃恢复:具有自动崩溃恢复机制,提高数据可靠性。存储引擎默认:MySQL 5.5及以后版本的默认存储引擎。MyISAM:事务不支持:不支持事务,适合读多写少的场景。表级锁定:支持表级锁定,适合大量读操作。全文索引:...阅读全文

博文 2024-11-27 16:27:31 asdas

「2024期」奇牛 跨平台Qt高级开发

「2024期」奇牛 跨平台Qt高级开发获课:aixuetang点xyz/14215/获取ZY↑↑方打开链接↑↑QtQQ-常用操作类在开发基于Qt框架的QQ类应用(如QtQQ)时,会用到一系列常用的操作类。这些类不仅帮助开发者构建用户界面,还实现了与QQ相关的各种功能。以下是一些在QtQQ开发中可能会用到的常用操作类及其简要说明:核心框架类QObject:它是所有Qt对象的基类,提供了对象模型的核心功能,如信号与槽机制。QWidget:所有窗口部件的基类,提供了窗口部件的基本功能,如大小、位置、显示等。QMainWindow:代表一个带有菜单栏、工具栏和状态栏的主窗口。用户界面类QPushButton:按钮类,用于触发事件,如点击事件。QLabel:用于显示文本或图像,可以作为静态文本展示或动...阅读全文

博文 2025-01-05 20:13:53 jihkk

专栏课ACM Fellow算法

​获课:keyouit.xyz/13442/获取ZY↑↑方打开链接↑↑开设一门以 ACM Fellow 和 《算法(第 4 版)》 为核心的专栏课程,旨在帮助学习者深入理解算法设计与分析,掌握经典算法及其在实际问题中的应用。以下是一个详细的课程大纲和内容设计:课程名称ACM Fellow 带你学算法:从理论到实战(基于《算法(第 4 版)》)课程目标掌握经典算法的设计与实现。理解算法的时间复杂度和空间复杂度分析。学会将算法应用于实际问题解决。为参加编程竞赛(如 ACM-ICPC)或面试算法题做准备。课程大纲第 1 部分:算法基础算法导论什么是算法?算法的重要性与应用领域《算法(第 4 版)》简介算法分析时间复杂度与空间复杂度渐进符号(O、Ω、Θ)递归算法的分析方法数据结构回顾数组、链表、栈、...阅读全文

博文 2025-02-23 12:46:04 hechunyan

ICMPv6 如何替代 ARP 功能?

IPv6 中确实不存在类似于 IPv4 的 ARP(地址解析协议)的独立协议(如用户提到的“ARP6”),这是因为 IPv6 通过 **ICMPv6(Internet Control Message Protocol version 6)** 将地址解析、邻居发现等功能直接集成到协议栈中,并实现了更高效的自动化机制。 --- ### **1. ICMPv6 如何替代 ARP 功能?** 在 IPv4 中,ARP 协议通过广播请求和单播应答实现 **IP 地址到 MAC 地址的映射**。而在 IPv6 中,这一功能由 **邻居发现协议(NDP,Neighbor Discovery Protocol)** 完成,NDP 基于 ICMPv6 定义以下两种报文实现地址解析: • **邻居请求报文(N...阅读全文

博文 2025-03-27 20:07:07 dalang

小滴课堂-新版Vue3.4+ElementPlus全家桶开发视频项目实战

小滴课堂-新版Vue3.4+ElementPlus全家桶开发视频项目实战获课♥》789it.top/14129/获取ZY↑↑方打开链接↑↑新版 Vue3.4+ElementPlus 全家桶实战:打造高性能前端视频项目一、技术栈选型与优势解析Vue3.4 作为 2024 年前端框架的标杆版本,在性能与开发体验上实现了跨越式升级:渲染引擎重构:基于状态机的模板解析器使解析速度提升 2 倍,虚拟 DOM 初始化速度显著优化。响应式系统增强:计算属性仅在值变化时触发更新,内存占用降低 30%。双向绑定革新:defineModel成为正式功能,组件间数据流转更简洁。模块化开发:全面支持 Tree-Shaking,打包体积减少 15%-20%。ElementPlus 作为 Vue3 生态的旗舰 UI 库...阅读全文