本本本添哥
奶爸的编程之路,也就一周冷个三天~
专门分享Java微服务、计算机软考、项目管理、个人成长等相关内容
欢迎关注我的公众号:本本本添哥
展开
-
【项目实战】常见的序列化方式
常见的序列化方式包括:原创 2024-11-04 22:31:34 · 264 阅读 · 0 评论 -
【好物推荐】Fiddler Everywhere,允许开发者捕获、检查、操作和监控所有的 HTTP(S) 流量在计算机与互联网之间传输。
Fiddler Everywhere ,是一个跨平台的网络调试代理工具。Fiddler Everywhere ,允许开发者捕获、检查、操作和监控所有的 HTTP(S) 流量在计算机与互联网之间传输。Fiddler Everywhere ,适用于 Windows、macOS 和 Linux 操作系统,使得开发者可以在不同的开发环境中使用统一的工具来调试网络请求。Fiddler Everywhere ,对于前端开发者、后端开发者以及任何需要调试网络流量的人来说都是一个非常有用的工具。原创 2024-11-03 08:22:16 · 15 阅读 · 0 评论 -
【异常】InvalidProtocolBufferException: Protocol message end-group tag did not match expected tag
Protocol Buffers 是 Google 开发的一种语言中立、平台中立、可扩展的序列化结构数据的方式。表示消息中的结束标签(end-group tag)与预期的标签不匹配。文件,确保所有相关的代码都是最新的。如果是生产环境中的问题,则需要更加小心地处理,避免造成更大的影响。当使用 Protocol Buffers 进行数据通信时,如果发送方和接收方的数据定义(文件)不一致,或者数据在传输过程中被破坏,就可能发生这样的错误。如果是在开发环境中遇到此问题,可以尝试重新编译。原创 2024-11-03 08:18:51 · 13 阅读 · 0 评论 -
【项目实战】远程信息处理控制单元(TCU),集成了多种通信技术,如蜂窝网络、Wi-Fi、蓝牙等,使得车辆能够与外部系统进行数据交换和通信。
TCU,远程信息处理控制单元(Telematics Control Unit)TCU,是车辆中用于实现远程信息处理功能的关键组件。TCU,集成了多种通信技术,如蜂窝网络、Wi-Fi、蓝牙等,使得车辆能够与外部系统进行数据交换和通信。原创 2024-10-29 23:00:25 · 195 阅读 · 0 评论 -
【项目实战】网络通信协议Socket和WebSocket入门介绍
既然题目要求选择不属于WebSocket的常见应用场景,但实际上所列的所有选项都是合适的,这可能意味着题目本身可能存在误导或者没有给出不适用的选项。如果必须选择一个,那么在某些特定实现下,A(视频直播)可能会更倾向于使用专门的流媒体协议如HLS (HTTP Live Streaming) 或 RTMP (Real-Time Messaging Protocol),但这并不排除WebSocket也能胜任这项工作。对于判断题部分,您只提供了“对”这个答案,但没有给出具体的陈述内容。原创 2024-10-29 09:11:39 · 246 阅读 · 0 评论 -
【项目实战】HTTP协议入门介绍之HTTP的Cookie机制
HTTP协议作为互联网上使用最为广泛的一种网络协议,具有“无状态”的特性,即服务器无法直接感知客户端的状态信息。为了解决这个问题,HTTP引入了Cookie机制,使得服务器能够记住客户端的状态。HTTP的Cookie机制是一种用于解决HTTP协议“无状态”特性的有效方法。通过创建、发送、接收和验证Cookie信息,服务器可以记住客户端的状态并为用户提供个性化的服务。然而,在使用Cookie时也需要注意其安全性问题,并采取相应的防护措施来保护用户的隐私和数据安全。原创 2024-10-29 09:11:28 · 11 阅读 · 0 评论 -
【项目实战】HTTP协议入门介绍之HTTP的重定向与转发
HTTP协议是用于从Web服务器传输超文本到本地浏览器的传送协议,它定义了客户端(通常是浏览器)和服务器之间通信的消息格式及方法。在HTTP中,重定向与转发是两种常见的机制,它们允许客户端请求被导向至不同的资源或由服务器内部处理后返回响应。重定向涉及到客户端浏览器行为的变化,而转发则是服务器端处理逻辑的一部分,客户端对此无感知。两者都是用来管理HTTP请求流向的重要手段。原创 2024-10-28 22:55:06 · 13 阅读 · 0 评论 -
【软考】计算机网络 - 网络协议TCP/IP协议的七层网络协议模型和四层网络协议模型,网络通信模型
计算机网络构建于七层模型之上图注:中继器:信号会随着距离的增加而逐渐衰减,而中继器则接受一端的信息再将其原封不动的发给另一端,起到延长传输距离的作用,而集线器就是多端口的中继器;网桥是用于连接两个同类型网络的设备,交换机则是多端口的网桥,用来将多个设备联网起来,而三层交换机则是添加了路由功能的交换机;局域网只能在两层设备内进行交流,第三层的设备则不能进行交流。原创 2024-10-28 22:47:39 · 80 阅读 · 0 评论 -
【项目实战】分布式RPC调用之 使用 Thrift 创建服务、消费服务和调用服务
首先,你需要定义一个 Thrift 接口定义语言(IDL)文件,该文件描述了你的服务接口。这个文件包含了服务的方法定义、数据类型定义等。示例 IDL 文件 (// 基本类型定义// 结构体定义// 异常定义// 服务定义。原创 2024-09-12 21:29:21 · 169 阅读 · 0 评论 -
【项目实战】分布式RPC调用之Thrift的接口定义语言(IDL),允许开发者定义服务接口,并自动生成多语言的客户端和服务端代码
服务定义指定了服务的接口,包括方法名、参数列表和返回值类型。此外,还可以定义方法可能抛出的异常。原创 2024-09-12 21:25:50 · 199 阅读 · 0 评论 -
【项目实战】分布式RPC调用之Thrift,提供了一种接口定义语言(IDL)来定义服务的抽象,以及代码生成工具来生成客户端和服务端的代码。
Thrift,是一个跨语言的服务开发框架。Thrift,用于构建可扩展的跨平台服务。Thrift,提供了一种接口定义语言(IDL)来定义服务的抽象,以及代码生成工具来生成客户端和服务端的代码。Thrift,被设计用于构建高性能、可伸缩的分布式系统。Thrift,在构建分布式系统方面具有强大能力和灵活性。Thrift,不仅简化了跨语言服务间的通信,还促进了不同团队之间的协作。原创 2024-09-12 21:25:37 · 60 阅读 · 0 评论 -
【项目实战】使用maven编译proto文件的插件:protobuf-maven-plugin,在构建过程中自动化地处理 Protocol Buffers 相关的任务,比如生成 Java 类
2、proto中指定一下生成的类所在的包名,如:option java_package = “com.demo.service.grpc”;,帮助在构建过程中自动化地处理 Protocol Buffers 相关的任务,比如生成 Java 类或者其他语言的类。请根据你的项目需求调整版本号和其他配置项,检查是否有更新版本的插件和依赖项可用,提供更好的兼容性和新特性。第二个目标,用于生成 gRPC 相关的代码。PS:以上proto文件所在目录,和生成的java所在目录,可以在插件中更改。文件并生成相应的源代码。原创 2024-09-12 19:38:46 · 179 阅读 · 0 评论 -
【项目实战】网络通讯编程之BIO入门介绍
BIO (Blocking I/O) ,是一种同步阻塞式的网络通信编程模型BIO (Blocking I/O) ,其中I/O操作(如读写数据)会阻塞调用线程直到操作完成。BIO (Blocking I/O) ,模型中,每个客户端连接通常需要一个独立的线程来处理其请求。BIO (Blocking I/O) ,模型中,服务器能够为每个客户端提供服务,但同时也会导致线程资源的大量消耗。原创 2024-09-10 12:20:04 · 126 阅读 · 0 评论 -
【项目实战】NIO 与 直接内存 (Direct Memory),由JVM直接管理,而不是通过垃圾回收器来管理,容易造成内存泄漏`OutOfMemoryError`
Buffer: 用于存储数据的对象,是NIO中的基本单位。ByteBuffer: 一种特殊的Buffer,用于处理字节数据。: Java堆内存,由垃圾回收器管理。原创 2024-09-10 12:19:52 · 172 阅读 · 0 评论 -
【项目实战】网络通讯编程之AIO入门介绍
AIO,异步I/O(Asynchronous Input/Output)AIO,可以高效处理并发I/O操作。AIO,是一种允许程序在发起I/O操作后继续执行其他任务,而不必等待I/O完成的技术。AIO,这种非阻塞的方式可以极大地提高应用程序的性能,尤其是在处理大量并发连接或进行高频率的读写操作时。AIO,通常用于网络服务器、数据库系统以及其他需要高效数据传输的应用中。原创 2024-09-10 12:19:40 · 47 阅读 · 0 评论 -
【异常】protobuf提示报错 java.lang.String cannot be converted to com.google.protobuf.ByteString
从错误信息来看,正在尝试编译一个Java项目,其中包含使用了Google Protocol Buffers(protobuf)的代码。进行这些更改后,重新编译您的项目,错误应该会被解决。如果您的字符串不是UTF-8编码,那么您应该使用相应的字符集。,是protobuf提供的一个类,用于处理字节序列。是Java 7引入的,用来方便地访问常用的字符集。如果您使用的是较早版本的Java,您可能需要使用。在Java中表示的是Unicode字符序列,而。确保您导入了必要的包,这里的。常量,用于指定编码格式。原创 2024-09-09 12:43:29 · 62 阅读 · 0 评论 -
【异常】IDEA提示文件大小(4.16MB)超出了配置的限制(2.56MB),代码洞察功能不可用,需要在IDEA中调整文件大小限制
IntelliJ IDEA处理大文件时的功能限制问题,IDEA对于大文件有一些默认的限制,以优化性能和用户体验。当文件大小超过默认限制时,某些代码洞察功能(如代码补全、跳转定义等)可能无法正常工作。原创 2024-09-09 12:42:50 · 1015 阅读 · 0 评论 -
【异常】Jenkins提示异常Error while executing process.: Cannot run program/protoc.exe
如果问题依然存在,建议检查整个构建环境的权限设置,确保所有必要的文件和目录都具有正确的权限。如果是在CI/CD环境中遇到问题,还需要确保构建脚本或工具具有适当的权限来执行所需的操作。如果是Windows环境下的Jenkins Slave节点,可能需要以管理员身份运行Jenkins服务。对于Windows系统,确保文件不在只读状态,并且Jenkins用户有足够的权限执行该文件。如果是在Jenkins环境中构建,确保Jenkins进程使用的用户账户具有执行。的位置,确保路径是正确的,并且文件存在。原创 2024-09-09 12:42:31 · 52 阅读 · 0 评论 -
【项目实战】Webhook 技术概览
Webhook 是一种回调机制,允许应用程序在特定事件发生时向另一个应用程序发送即时通知。Webhook 通常通过 HTTP 请求的方式实现,接收方通过注册一个 URL 来接收这些通知。Webhook 是一种机制,允许应用程序在特定事件发生时向另一个应用程序发送即时通知。这种机制通常用于实现实时数据交换和自动化工作流。下面详细介绍 Webhook 的定义、优点和缺点、重要性及其历史背景和发展历程。Webhook 技术是一种基于 HTTP 的通信机制Webhook技术是一种在安卓及更广泛的Web开发领域中重原创 2024-09-06 00:11:53 · 90 阅读 · 0 评论 -
【项目实战】CDN(Content Delivery Network)内容分发网络技术概览
CDN,是一种全球分布式的网络架构。CDN,是一种分布式网络架构。CDN,用于加速静态或动态内容的传输,提高内容的可用性和性能。CDN,通过在全球范围内部署边缘服务器节点来加速内容的传输。原创 2024-09-06 00:11:42 · 65 阅读 · 0 评论 -
【项目实战】常见的HTTP状态码(426-Upgrade Required)
在这个例子中,服务器告诉客户端可以升级到 HTTP/2(h2c 或 h2)或 WebSocket(ws)协议。当客户端尝试使用旧版 HTTP 协议连接到服务器时,服务器可能会返回 426 状态码,并在。在这个例子中,服务器希望客户端升级到 HTTP/2(h2c),并指定了。响应头中指明需要升级到的协议版本。原创 2024-09-06 00:10:07 · 389 阅读 · 0 评论 -
【项目实战】HTTP/2入门介绍
HTTP/2 ,是HTTP协议的第二个版本。HTTP/2 ,旨在提高网页加载速度和服务器资源利用率。HTTP/2 ,引入了多项改进,包括二进制分帧、多路复用、头部压缩、服务器推送等功能。HTTP/2 ,目标是在不改变HTTP语义的前提下,通过更高效的传输方式来改善性能。原创 2024-08-26 22:24:44 · 40 阅读 · 0 评论 -
【项目实战】Protocol Buffers系列文章之Java使用 Protocol Buffers (protobuf) 进行序列化和反序列化
/ 消息定义详细参考文章:【项目实战】Protocol Buffers系列文章之proto基本语法和概念。原创 2024-08-25 19:59:47 · 70 阅读 · 0 评论 -
【项目实战】并发编程之运用线程池(ThreadPoolExecutor)+CountDownLatch + AtomicInteger自己设计一个压测工具类
接口代码如下,test1接口,很简单,没有任何逻辑,这个接口效率很高。原创 2024-08-25 10:17:56 · 45 阅读 · 0 评论 -
【项目实战】Protocol Buffers系列文章之Protobuf入门介绍
简称 Proto,Protobuf,Protocol Buffers。,是一种跨平台的数据交换格式,一种数据传输格式。,是一种语言无关、平台无关、可扩展的序列化结构数据。,是一种轻便高效的结构化数据存储格式。,可以用来序列化结构化的数据。,允许开发者定义数据结构,并通过简单的 API 在各种语言中进行序列化和反序列化。,由 Google 开发,旨在提供一种高效、简洁的方式来传输结构化数据。,支持多种编程语言,如 C++、Java、Python 等。原创 2024-08-25 10:17:15 · 52 阅读 · 0 评论 -
【项目实战】Protocol Buffers系列文章之proto基本语法和概念
消息是 Protocol Buffers 中最基本的单位。消息是由字段组成的容器,每个字段都有一个唯一的标识符(标签),用于序列化和反序列化。Protocol Buffers v3 引入了服务定义,这使得它可以直接用于 gRPC 等远程过程调用框架。使用package关键字定义包名,帮助组织消息和服务。原创 2024-08-25 09:39:05 · 1067 阅读 · 0 评论 -
【项目实战】数据安全技术之防火墙技术介绍
包过滤: 一种基于IP包头信息进行过滤的技术。应用网关: 一种代理服务器,负责处理客户端和服务端之间的通信。状态检查: 一种跟踪连接状态并基于此决定是否允许数据包的技术。原创 2024-08-25 08:52:43 · 66 阅读 · 0 评论 -
【项目实战】四种实时web通信技术(HTTP轮询,服务器发送事件SSE,WebSocket,Webhooks)
HTTP轮询: 客户端定期向服务器发送请求以获取更新。服务器发送事件(SSE): 服务器向客户端推送数据的一种简单方法。WebSocket: 提供全双工通信通道的持久连接。Webhooks: 服务器向第三方应用发送数据的一种机制。websocket是一个双向通讯的协议,他的优点是,可以同时支持客户端和服务端彼此相互进行通讯。功能上很强大。缺点也很明显,websocket是一个新的协议,ws/wss。也就是说,支持http协议的浏览器不一定支持ws协议。原创 2024-08-21 00:02:35 · 302 阅读 · 0 评论 -
【项目实战】虚拟专用网络VPN
VPN系统,虚拟专用网络,简称虚拟专网(VPN)其主要功能是在公用网络上建立专用网络,进行加密通讯虚拟专用网络(VPN)是一种网络技术,它通过公共网络(如互联网)创建一个安全的加密通道,允许远程用户或站点像局域网内的用户一样访问资源。隧道: 加密的数据传输通道。加密: 保护数据免遭窃听的过程。认证: 确认用户身份的过程。密钥: 用于加密和解密数据的代码。原创 2024-08-21 00:02:28 · 171 阅读 · 0 评论 -
【项目实战】HTTP状态码 与 API错误码
HTTP状态码,是标准化的响应状态指示HTTP状态码,由三个数字组成。HTTP状态码,用于描述服务器对请求的处理结果。原创 2024-08-16 16:49:46 · 74 阅读 · 0 评论 -
【项目实战】HTTP请求,GET和POST方法
对于HTTP请求中的`GET`和`POST`是最常用的两种方法,它们在功能和用途上有一些关键的区别。在选择使用GET还是POST时,主要考虑请求的目的以及是否需要保证数据的安全性和隐私。原创 2024-08-16 16:28:14 · 42 阅读 · 0 评论 -
【项目实战】使用Hutool工具包中的HttpUtil.createPost 存入Query的值
是Hutool库中用于创建HTTP POST请求的方法。如果你想在POST请求中添加查询参数(通常在URL中作为?后面的部分),实际上你应该在构造URL时就包含这些参数,因为POST请求的主体部分是用来发送数据的,而不是查询字符串。但是,如果你想要发送的是POST请求体中的form表单数据,你可以使用。如果你要发送JSON数据,那么应该使用。如果你想添加多个键值对,可以使用。为你的实际API URL,以及。方法,并确保设置正确的。原创 2024-08-15 14:31:19 · 417 阅读 · 0 评论 -
【项目实战】常见的车载TSP通信协议(如OBD-II、CAN、LIN 、FlexRay、MOST、Ethernet、UDS、DoIP、OTA 等)
为了与车辆通信,TSP需要使用一系列的车载通信协议来获取车辆数据、发送控制命令或更新软件。这些车载通信协议覆盖了从低级别的硬件接口到更高级别的服务层。车载通信协议在现代车辆的高级功能中起着重要作用,如ADAS(高级驾驶辅助系统)和自动驾驶技术。TSPs 通常需要与车载通信协议交互,以实现车辆监控、诊断、预测性维护、远程控制、软件更新和数据分析等服务。TSP 可能会利用车载通信协议来获取更先进的车辆数据,但通常这些协议的访问权限会更加受限,需要汽车制造商的授权和配合。原创 2024-08-01 00:15:47 · 212 阅读 · 0 评论 -
【项目实战】网络发现服务(Network Service Discovery)
网络发现服务技术,是指Network Service Discovery网络发现服务技术,是指一种使计算机能够在网络上自动检测并识别其他设备和服务的技术。网络发现服务技术,简化了网络设备和服务之间的通信,使得用户不必手动配置复杂的网络设置就能实现设备间的互联。网络发现服务技术,是指一种技术,它允许计算机在网络上自动检测并识别其他设备和服务。网络发现服务技术,简化了网络设备和服务之间的通信,提高了用户体验,尤其是在家庭网络和小型办公网络中。原创 2024-07-30 20:47:08 · 84 阅读 · 0 评论 -
【项目实战】GSMA全球移动通信协会
GSMA,即全球移动通信协会GSMA,是全球最大的移动通信组织GSMA,由800多家移动运营商、设备制造商、网络技术公司、互联风网企业、应用开发商等组成GSMA,推出的许多技术标准和规范,为全球移动通信行业的发展做出了巨大贡献。原创 2024-07-27 09:15:45 · 127 阅读 · 0 评论 -
【软考】计算机网络 - TCP协议
网桥是用于连接两个同类型网络的设备,交换机则是多端口的网桥,用来将多个设备联网起来,而三层交换机则是添加了路由功能的交换机;局域网只能在两层设备内进行交流,第三层的设备则不能进行交流。中继器:信号会随着距离的增加而逐渐衰减,而中继器则接受一端的信息再将其原封不动的发给另一端,起到延长传输距离的作用,而集线器就是多端口的中继器;计算机网络构建于七层模型之上。原创 2024-07-22 16:45:55 · 40 阅读 · 0 评论 -
【软考】计算机网络 - 网络规划与设计
图注:核心层只负责高速数据的交换,且采用冗余设计,即采用几台设备处理这些数据,这样做可以提高安全性,因此对设备的性能有较高要求。原创 2024-07-22 16:45:35 · 37 阅读 · 0 评论 -
【软考】计算机网络 - HTML与无线网
HTML是一种标签语言,是一种网页设计语言。原创 2024-07-22 16:45:14 · 37 阅读 · 0 评论 -
【软考】计算机网络 - 网络接入技术
ADSL:是ISDN的发展,目前是主流的有线网络接入方式,速度达到了8MBS;TD—SCDMA:是国产的技术,只在中国应用,由移动公司主导推广;目前最为广泛应用的技术是WCDMA,而FDD则是其发展版本,PSTN:在十多年前非常流行,其上网和通话功能不能同时进行,目前基本被淘汰,但pos机和传真依旧在使用;TDD:是LTE—Advanced发展而来,是4G时代智能机的主流接入网络的方式。ISDN:解决了上网和通话不能同时进行的问题,速度达到128KB;网络接入技术分为有线接入和无线接入以及3G/4G接入。原创 2024-07-22 16:42:01 · 68 阅读 · 0 评论 -
【软考】计算机网络 - IPv6
IPv6是设计用于替代现行版本IP协议(IPv4)的下一代IP协议,提出的背景是IP资源不够用以及IP地址分配的不公平,因为世界上百分之70的IP地址都在美国,但目前应用并不广泛。原创 2024-07-22 16:41:01 · 63 阅读 · 0 评论