Month: 6月 2023

Memcache简介

什么是 Memcached?

免费开源、高性能、分布式内存对象缓存系统, 本质上是通用的,但旨在通过减轻数据库负载来加速动态 Web 应用程序d.

Memcached ( memcache )  是一种内存中的键值存储,用于缓存来自数据库调用、API 调用或页面呈现结果的任意小块数据(字符串、对象).

Memcached简单而强大. 其简单的设计促进了快速部署、易于开发,并解决了大数据缓存面临的许多问题。其 API 适用于大多数流行语言.…

gRPC简介

gRPC(Remote Procedure Calls)

概述

GRPC是一个高性能、通用的开源RPC框架,基于底层HTTP/2协议标准协议层Protobuf序列化协议开发,支持众多的开发语言。

gRPC 也是基于以下理念:定义一个服务,指定其能够被远程调用的方法(包含参数和返回类型)。在服务端实现这个接口,并运行一个 gRPC服务器来处理客户端调用。在客户端拥有一个存根能够像服务端一样的方法。

gRPC使用protocol buffers作为接口描述语言(IDL)以及底层的信息交换格式


优点

  1. 基于 HTTP/2 之上的二进制协议(Protobuf 序列化机制);
  2. 一个连接上可以多路复用,并发处理多个请求和响应;
  3. 多种语言的类库实现;
  4. 服务定义文件和自动代码生成(.proto 文件和 Protobuf 编译工具)。
  5. RPC 还提供了很多扩展点,用于对框架进行功能定制和扩展,例如,通过开放负载均衡接口可以无缝的与第三方组件进行集成对接(Zookeeper、域名解析服务、SLB 服务等)

原理

https://www.colabug.com/4616436.html


通信方式

Simple RPC

简单rpc ,这就是一般的rpc调用,一个请求对象对应一个返回对象

proto语法:

    

gRPC详解

1.什么是gRPC

gRPC是rpc框架中的一种,是rpc中的大哥

是一个高性能,开源和通用的RPC框架,基于Protobuf序列化协议开发,且支持众多开发语言。

面向服务端和协议端,基于http/2设计,带来诸如双向流,流控,头部压缩,单TCP连接上的多路复用请求等特性。这些特性使得其在移动设备上表现的更好,更省电和节省空间。

在 gPRC 里客户端可以向调用本地对象一样直接调用另一台不同机器上服务端应用的方法,使得您能够更容易地创建分布式应用和服务。

与许多RPC系统类似,gRPC也是基于以下理念:定义一个服务,指定其能够被远程调用的方法(包含参数和返回类型)。在服务端实现这个接口。并运行一个gRPC服务器来处理客户端调用。在客户端拥有一个存根能够向服务端一样的方法。

补充一个知识点(HTTP/2 与HTTP1.X的区别)

用于数据传输的二进制分帧

HTTP/2采用二进制格式传输协议,而非HTTP/1.x的文本格式。

img

多路复用

HTTP/2支持通过同一个连接发送多个并发的请求。

HTTP/1.x虽然通过pipeline也能并发请求,但多个请求之间的响应依然会被阻塞。

 

服务端推送

服务端推送是一种在客户端请求之前发送数据的机制。在HTTP/2中,服务器可以对客户端的一个请求发送多个响应。而不像HTTP/1.X一样,只能通过客户端发起request,服务端才产生对应的response

减少网络流量的头部压缩。

HTTP/2对消息头进行了压缩传输,能够节省消息头占用的网络流量。至于如何压缩的,可以查看这篇:HPACK: Header Compression for

    

Ubuntu 将在明年推出完全基于 Snap 的桌面版本

根据 Canonical 工程师 Oliver Grawert 的说法,Ubuntu 的下一个长期支持版本将有 2 个桌面版本可供下载:

  • 默认是基于 deb 格式的传统版本
  • 以及完全基于 Snap 格式构建的全新试验性版本

据称后者是 Ubuntu 第一次为爱好者提供不可变的、基于 Snap 的试验性构建。当然,基于 Snap 的桌面版本不是默认版本,这将是一个替代下载,那些更愿意忍受 “痛点” 的爱好者可以开始尝试。…

Bootstrap v5.3 正式发布,支持黑暗模式

Bootstrap v5.3.0 的稳定版本正式发布,新版本带来的变化包括:

  • 支持黑暗模式

    Bootstrap 的核心已被重写,为黑暗模式提供了支持。此外,Bootstrap 现在支持任何数量的颜色模式,允许你建立自己的自定义主题或更细微的颜色模式。

  • 除亮色和黑暗模式外,还支持自定义颜色模式的主题

    为 Bootstrap 添加黑暗模式支持时,Bootstrap 团队并不想只是添加一个黑暗模式,而是想为一个颜色模式系统打下基础,这个系统可以用来创建任何数量的主题和颜色模式。

    要添加一个自定义的颜色模式,需要创建你自己的 data-bs-theme 选择器,用一个自定义值作为你的颜色模式的名称,然后根据需要修改任何 Sass 和 CSS 变量。

  • 为适应颜色模式的主题颜色扩展调色板

    新版本修改了调色板,包括新的 Sass 变量、CSS 变量和用于设置 color 、 background-color 和 border-color 的实用程序。

  • 新的链接辅助工具和实用程序

    在 v5.3.0 版本中,链接的风格设计有了很大的改善,有了一系列全新的链接帮助器和工具。首先,新版本增加了一些样式,用新的图标链接助手将图标(如 Bootstrap Icons)与链接放在一起。

  • 新的导航下划线

    将 .nav-underline 添加到 

nginx 1.25.0 实验性支持 HTTP/3

Nginx 是一个高性能的开源 Web 服务器和反向代理服务器。它最初由 Igor Sysoev 开发,现在由 Nginx Inc. 进行维护。Nginx 可以处理高并发的连接请求和数据传输,同时拥有出色的稳定性和高可靠性。

Nginx 的优势在于其高效的内存管理和事件驱动模型。它能够支持更多的并发连接,而且在高负载情况下也能保持高性能和稳定性。此外,Nginx 还具有灵活性和可扩展性,因为它可以通过各种模块进行扩展,以满足不同的需求。…