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

关于HTTP的Content-Length与Chunk编码方式_YotWei-CSDN博客_content

最近在学习netty,里面提到了一个TCP拆包粘包的问题,查阅资料了解到了几种解决的办法,例如 使用特殊分隔符 定长数据帧以及 自定义消息头+消息体,在消息头中定义数据包的长度 关于最后一种实现手段,最典型的代表就是我们常见的HTTP协议。 关于Content-Length Content-Length是HTTP头部的一个字段,用于表示HTTP的body数据的长度。但是在HTTP 1.0的时候,Content-Length字段可有可无,因为HTTP 1.0的每一个网络请求都是短连接,在发起TCP三次握手后,服务端返回数据,随后四次挥手,这个连接在HTTP请求结束后会立即关闭,浏览器在读到EOF(-1)的时候就可以认为数据传输完毕。下面用一个Java程序验证一下 public class Ht...阅读全文

博文 2020-06-29 12:06:32 length chunk

如何成为一名出色的产品经理?

围绕着出色的反面,还有有平庸。产品经理是一个职场人士、也是一个互联网从业者,今天出色的定义在职场中我们抛开不谈。 就产品经理一个互联网从业者,在职场、生活、以及人生态度如何算一个出色的产品经理? 我谈谈的理解。 一、出色的产品经理应该有的“互联网思维” 优秀的产品经理是什么?到底是多种硬货技能的集合体?还是一种思维方式? 可能答案层次不齐,但我认为优秀的产品经理是本身包含互联网思考方式与产品化解决需求的人。 优秀的产品经理一定不是为了产品而去设计产品,要考虑可行的商业模式。只有可行的商业模式成了固定的业务模式,才开始考虑产品进行承载,提供更好的服务、更好的体验、让用户留存,进行互联变现。 二、现在大部分的“产品经理” 那现在从业的产品经理大部分...阅读全文

Linux 中软链接和硬链接的区别 | Linux 中国

链接(Link)是一种快捷访问机制,它通过一个文件指向原始文件或目录的方式实现快捷访问,同时还记录了原始文件或目录的一些信息。来源:https://linux.cn/article-12270-1.html作者:Magesh Maruthamuthu译者:Hank Chow链接(Link)是一种快捷访问机制,它通过一个文件指向原始文件或目录的方式实现快捷访问,同时还记录了原始文件或目录的一些信息。链接允许多个不同文件对同一个文件进行引用。什么是软链接符号链接(Symbolic Link)(symlink),又称 软链接(Soft Link),是一种特殊的文件,它指向 Linux 系统上的另一个文件或目录。这和 Windows 系统中的快捷方式有点类似,链接文件中记录的只是原始文件的路径,并不...阅读全文

博文 2020-10-17 03:40:43 知乎

说说http协议中的编码和解码 - wangfengpaopao

一、字符集与文字编码简介 1. 计算机如何显示文字 我们知道,计算机是以二进制的“形式”来保存和处理数据的,也就是说,不管我们使用键盘进行输入,还是让计算机去读取一个文本文件,计算机得到的原始内容是一些二进制序列,当需要对这些二进制序列进行显示时,计算机会依照某种“翻译机制”(也就是编码方式),取到这些二进制序列所表示的每个文字的“轮廓描述”(点阵或者矢量图),知道了轮廓,计算机便可以将二进制序列所表示的实际的文字形状显示到屏幕上了,这里面的思想和用学号来表示一个学生是一样的。(当然,这里面具体的知识点会很多,相关知识可以参考《计算机图形学》中显示原理的部分和其他与计算机显示原理相关的基础书籍)。 2. 字符集 将一些自然语言中的字符组成一个集合,并对集合中的每个字符制定规范化的编码方式,这...阅读全文

[译] 如何杀死一个进程和它的所有子进程

文地址:Killing a process and all of its descendants原文作者:igor_sarcevic译文出自:掘金翻译计划本文永久链接:https://github.com/xitu/gold-miner/blob/master/TODO1/killing-a-process-and-all-of-its-descendants.md译者:江五渣校对者:TokenJan,portandbridge如何杀死一个进程和它的所有子进程在类 Unix 系统中杀死进程比预期中更棘手。上周我在调试一个在 Semaphore 中终止作业的问题。更具体地说,这是一个有关于在作业中终止正在运行的进程的问题。以下是我从中学到的要点:类 Unix 操作系统有着复杂的进程间关系:父子...阅读全文

Unicode与UTF-8/UTF-16/UTF-32的区别 - 刘宝成

Unicode与UTF-8/UTF-16/UTF-32的区别 Unicode的最初目标,是用1个16位的编码来为超过65000字符提供映射。但这还不够,它不能覆盖全部历史上的文字,也不能解决传输的问题 (implantation head-ache's),尤其在那些基于网络的应用中。已有的软件必须做大量的工作来程序16位的数据。 因此,Unicode用一些基本的保留字符制定了三套编码方式。它们分别是UTF-8,UTF-16和UTF-32。正如名字所示,在UTF-8中,字符 是以8位序列来编码的,用一个或几个字节来表示一个字符。这种方式的最大好处,是UTF-8保留了ASCII字符的编码做为它的一部分,例如,在 UTF-8和ASCII中,“A”的编码都是0x41. UTF-16和UTF-32分别...阅读全文

当执行kill -9 PID时系统发生了什么

我们时常遇到这样的需求:要杀死一个正在运行运行的进程。这时候可以在终端输入 1 kill -9 (其中9的意思是SIGKILL,完整的linux信号请看这里)之后你再用ps查看进程的时候,会发现那个进程已经被杀掉了。 本文将说明在LINUX系统下,用户在终端输入kill -9 之后,整个系统到底发生了什么,我们将深入到内核代码。一开始我在想这个问题的时候遇到了一些问题,比如进程是怎么知道自己收到信号的?在执行进程工作代码的同时还要不断轮询有没有新到的信号吗?代价也太大了吧?那是不是基于什么异步通知的方案呢?在说明LINUX是怎么做的之前,先解释一点基础的概念。 什么是信号(SIGNAL) 我自己的理解:信号之于进程,就好比中断之于CPU,是一种信息传递的方式。官方的解释...阅读全文

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

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

云电脑的显卡之谜与画面处理机制

本文分享自天翼云开发者社区《云电脑的显卡之谜与画面处理机制》,作者:2****m云电脑有显卡吗?云电脑,作为一种基于云计算技术的虚拟计算机,其硬件架构与传统电脑有所不同。传统电脑的显卡是负责图形处理和输出的重要组件,而在云电脑中,情况则有所不同。实际上,云电脑本身并没有传统意义上的显卡。这是因为云电脑的计算和存储资源都集中在远程的云端服务器上,而用户的终端设备(如瘦客户端、平板电脑等)仅负责显示和操作。云电脑的图形处理任务实际上是在云端服务器上完成的,通过高效的计算和传输技术,将处理后的画面传输到用户的终端设备上。一、云电脑怎么做画面处理?云电脑的画面处理主要经历以下几个阶段:图形指令传输:当用户在终端设备上执行图形相关的操作时(如打开游戏、播放视频等),这些操作会被转换成图形指令,并通过网...阅读全文

博文 2023-12-18 18:29:58 Tianyiyun

存储结构的种类与比较

本文分享自天翼云开发者社区《存储结构的种类与比较》,作者:3****m一、存储结构的种类顺序存储结构顺序存储结构是一种线性数据存储方式,数据按照顺序方式存储在一片连续的存储区域中。顺序存储结构的特点是数据元素之间的逻辑关系与物理位置的存储顺序一致。这种存储结构适用于数据量较小、数据元素之间关系简单的情况。链式存储结构链式存储结构是一种非线性数据存储方式,通过指针或链接将各个数据元素链接起来。链式存储结构的特点是数据元素的物理位置可以不相邻,但通过指针或链接保持逻辑上的关联。这种存储结构适用于数据量大、数据元素之间关系复杂的情况。散列存储结构散列存储结构是一种基于哈希函数的数据存储方式,通过将数据元素的键值映射到固定大小的数组中,实现数据的快速检索。散列存储结构的特点是数据的检索速度快,但需要...阅读全文

C++从0实现百万并发Reactor服务器[完结13章]

![1.png](http://static.itsharecircle.com/240130/b0c07642d8e8837d138ca05fd631160f.png) 一、reactor是什么?怎么理解? reactor是一种设计模式, 是服务器的重要模型, 是一种事件驱动的反应堆模式, 高效的事件处理模型。 reactor 反应堆: 事件来了才执行,事件类型可能不尽相同,所以我们需要提前注册好不同的事件处理函数。事件到来就由 epoll_wait 获取同时到来的多个事件,并且根据数据的不同类型将事件分发给事件处理机制 (事件处理器), 也就是提前注册的哪些接口函数。 reactor模型的设计思想和思维方式:它需要的是事件驱动,相应的事件发生,根据事件自动的调用相应的函数,所以需要提前注...阅读全文

博文 2024-01-30 10:06:55 feilipu2023nui

C++从0实现百万并发Reactor服务器[完结13章]

![1.png](http://static.itsharecircle.com/240129/bd9b789356a023d2a952390e901cfd0e.png) Reactor 模式也叫做反应器设计模式,它是一种为处理服务请求并发提交到一个或者多个服务处理程序的事件设计模式。当请求抵达后,服务处理程序使用解多路分配策略,然后同步地派发这些请求至相关的请求处理程序。 Reactor翻译过来的意思是:反应堆,所以Reactor设计模式本质是基于事件驱动的。在Reactor设计模式中,存在如下几个角色。 Handle(事件)。Reactor整体是基于Handle进行驱动,这里的Handle叫做事件,可以类比为BIO中的Socket,NIO中的Socket管道。比如当Socket管道有连接...阅读全文

深入讲解 linux 中 inode、硬链接、软链接的原理_软链接是怎么实现的 inode

inode定义 inode 是 linux 系统中用作数据索引的标识符。 简单来说,inode 指示了一个文件的基本信息,如inode编号、修改时间、文件的位置等,就如同一本书的目录,会直接告诉你想看的章节是在第几页。不同的是,书是以页为单位的,而 linux 文件存取是以“块”为单位的。 操作系统在读取硬盘的时候,会一次性读取一个“块”(一个“块”的大小往往是4KB,包含了连续8个扇区,每个扇区存储512个字节)。而inode就告诉了文件位于哪个“块”,于是系统就会从这个“块”开始读取内容,我们就可以看到这个文件的内容。 每个文件都有对应的inode,存储着关于这个文件的基本信息。linux 系统不使用文件名,而使用 inode 号来识别文件。对于使用者,我们是通过文件名打开的文件;但是对...阅读全文

博文 2024-02-28 10:53:51 CSDN博客

Spring Cloud Alibaba: 实现服务的无损下线功能

Spring Cloud Alibaba: 实现服务的无损下线功能作者:谁偷走了我的奶酪2024.01.18 02:49浏览量:2简介:在微服务架构中,服务的上线和下线是一个常见的操作。然而,直接关闭服务可能会导致数据丢失或服务中断。本文将介绍如何使用Spring Cloud Alibaba实现服务的无损下线功能。在微服务架构中,服务的上线和下线是一个常见的操作。但是,直接关闭服务可能会导致数据丢失或服务中断,这被称为“有损下线”。为了解决这个问题,我们可以使用Spring Cloud Alibaba提供的解决方案来实现服务的无损下线。无损下线的原理是在服务关闭之前,将所有待处理的任务或者请求全部处理完成,保证服务的正常运行,然后再安全地关闭服务。这样就可以避免数据丢失和服务中断的问题。要实...阅读全文

博文 2024-03-28 11:23:54 百度开发者中心