双子座(Gemini)协议:Web 协议最简单的一种替换

2023-11-07 20:40

本文主要是介绍双子座(Gemini)协议:Web 协议最简单的一种替换,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

我已经开始对现在的 Web 非常反感了,它在各个层面上都是臃肿的。网站的规模正在以惊人的速度翻倍,Web 标准也在以惊人的速度扩张。试图从头开始建立一个能与现代网络兼容的 Web 浏览器,需要的人力相当于雪山工程(Snowy Mountains Scheme )或曼哈顿计划(没有夸张)。

Web 的现状让我只能得出一个结论,它已经糟糕到无法修复的地步。

我不认为 Web 可以被简单取代,但我们仍然可以寻找更简单开放标准的替代品来转移我们的作品,双子座(Gemini)是我感兴趣的替代品之一。Gemini 是一个相当新的协议,创建于 2019 年,它定义了一个受 markdown 启发的文件格式,并使用自己的协议来服务这些文件,也支持其他格式的文件。

如果你只想寻找早期 Web 世界的 1:1 克隆,你可能会失望。Gemini 从 Gopher 中得到的设计启发要比从 Web 中得到的要多得多。Gopher(被广泛认为是 Web 的前身)是建立在纯文本文档的基础上的。Gemini 通过提供基本的格式化和修复原始 Gopher 协议中没有考虑到的缺点来扩展这个想法。

Gemini 避开了 Web 中大量的标准功能,虽然可能有很多习惯于 Web 的人无法识别的好处。例如,缺乏样式表可能意味着 Gemini 网站看起来很普通,然而这允许您的读者决定最适合他们的颜色方案。夜间阅读者会喜欢深色主题,有视力障碍的人会喜欢高对比度,等等。

Gemini 不提供在线图片支持,也不提供客户端脚本(如 JavaScript)。但服务器端脚本(CGI)可以工作,所以你可以期待 Gemini 成为一些在线服务的有效接口。

Gemini 协议不适合传输大文件,因为它没有 FTP 或 HTTP 协议中用于不稳定网络的断点续传等类似特性。

旧的互联网协议默认是不加密的,因为在 80 年代末 90 年代初,安全并不被视为一个重要的问题。值得庆幸的是,Gemini 作为一个全新的协议,强制使用 TLS,目前还没有未加密的 Gemini 版本。

我完全可以把 Gemini 视为一种 Web 替代方案,特别是对于那些使用文本作为主要媒介的非商业人士。博客、诗歌、食谱、教程都是 Gemini 格式的完美选择。并且总有方法解决多媒体功能的不足,因为虽然 Gemini 缺乏内嵌图片,但你仍然可以使用内嵌链接到图片。随着时间的推移,我可以想象一些 Gemini 浏览器提供一个花哨的图像查看器,用于显示链接包含的图像。

现在,Gemini 能提供什么?最好的方法是前往 Gemini 浏览器中的官方网站:gemini.circumlunar.space。在这里,你可以找到两个搜索引擎,专门根据你搜索的内容找到网页。还有两个聚合器,作为 Gemini 帖子的新闻源。

就我个人而言,我很喜欢滚动浏览聚合器,看看人们在博客上写些什么,我经常能找到有趣的东西。

从服务器管理的角度来看,Gemini 只是一个瘦身的 Web。你购买一个域名(使用网络),获得或租用一个服务器,安装一个 Gemini 服务器,然后开始为你的网站服务。为了发布内容到 Gemini 上,你需要自行托管,或者利用目前由 circlunar.space 提供的 Gemini 托管。这里没有花哨的 P2P 或区块链解决方案,只是一个良好的传统的客户/服务器模式。

我无疑会关注 Gemini,我的博客文章已经是 markdown 格式的,所以将其提供给 Gemini 应该很容易,当然还并非完全确定。

我分享下面这句话,还有我发现的一些有趣的链接给读者。

当我在脑海中,早期的 Web 更像是一个图书馆,但随着时间的推移,它已经转型为一个购物中心。

chris_f,HackerNews 评论

相关资源

  • (www) Project Gemini - The official website for the Gemini project. FAQ is recommended reading. (hn thread) https://gemini.circumlunar.space/

  • (gmi) Project Gemini - The defacto Gemini main page. gemini://gemini.circumlunar.space/

  • (gmi) Gemini software - The official page on Gemini lists out some clients and servers. gemini://gemini.circumlunar.space/software/

  • (gmi) List of services with a gemini mirror - Includes Wikipedia, YouTube and Lobste.rs. gemini://gempaper.strangled.net/mirrorlist/

英文原文:

https://toffelblog.xyz/blog/gemini-overview/

参考阅读:

  • 十年以上程序员才懂的一些 coding 心得

  • 一次K8S容器内存占用居高不下的排查案例

  • 类型化消息的一种设计模式

  • Go 新版泛型使用:80余行代码构建一个哈希表

  • 哔哩哔哩「会员购」在流量回放上的探索

  • 为什么我放弃使用 Kotlin 中的协程?

技术原创及架构实践文章,欢迎通过公众号菜单「联系我们」进行投稿。

高可用架构

改变互联网的构建方式


长按二维码 关注「高可用架构」公众号

这篇关于双子座(Gemini)协议:Web 协议最简单的一种替换的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:https://blog.csdn.net/weixin_45583158/article/details/107194370
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/366167

相关文章

Nginx中配置HTTP/2协议的详细指南

《Nginx中配置HTTP/2协议的详细指南》HTTP/2是HTTP协议的下一代版本,旨在提高性能、减少延迟并优化现代网络环境中的通信效率,本文将为大家介绍Nginx配置HTTP/2协议想详细步骤,需... 目录一、HTTP/2 协议概述1.HTTP/22. HTTP/2 的核心特性3. HTTP/2 的优

使用Python开发一个简单的本地图片服务器

《使用Python开发一个简单的本地图片服务器》本文介绍了如何结合wxPython构建的图形用户界面GUI和Python内建的Web服务器功能,在本地网络中搭建一个私人的,即开即用的网页相册,文中的示... 目录项目目标核心技术栈代码深度解析完整代码工作流程主要功能与优势潜在改进与思考运行结果总结你是否曾经

关于WebSocket协议状态码解析

《关于WebSocket协议状态码解析》:本文主要介绍关于WebSocket协议状态码的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录WebSocket协议状态码解析1. 引言2. WebSocket协议状态码概述3. WebSocket协议状态码详解3

使用C#代码在PDF文档中添加、删除和替换图片

《使用C#代码在PDF文档中添加、删除和替换图片》在当今数字化文档处理场景中,动态操作PDF文档中的图像已成为企业级应用开发的核心需求之一,本文将介绍如何在.NET平台使用C#代码在PDF文档中添加、... 目录引言用C#添加图片到PDF文档用C#删除PDF文档中的图片用C#替换PDF文档中的图片引言在当

Mysql表的简单操作(基本技能)

《Mysql表的简单操作(基本技能)》在数据库中,表的操作主要包括表的创建、查看、修改、删除等,了解如何操作这些表是数据库管理和开发的基本技能,本文给大家介绍Mysql表的简单操作,感兴趣的朋友一起看... 目录3.1 创建表 3.2 查看表结构3.3 修改表3.4 实践案例:修改表在数据库中,表的操作主要

JSON Web Token在登陆中的使用过程

《JSONWebToken在登陆中的使用过程》:本文主要介绍JSONWebToken在登陆中的使用过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录JWT 介绍微服务架构中的 JWT 使用结合微服务网关的 JWT 验证1. 用户登录,生成 JWT2. 自定义过滤

springboot简单集成Security配置的教程

《springboot简单集成Security配置的教程》:本文主要介绍springboot简单集成Security配置的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录集成Security安全框架引入依赖编写配置类WebSecurityConfig(自定义资源权限规则

一文教你如何将maven项目转成web项目

《一文教你如何将maven项目转成web项目》在软件开发过程中,有时我们需要将一个普通的Maven项目转换为Web项目,以便能够部署到Web容器中运行,本文将详细介绍如何通过简单的步骤完成这一转换过程... 目录准备工作步骤一:修改​​pom.XML​​1.1 添加​​packaging​​标签1.2 添加

如何将Tomcat容器替换为Jetty容器

《如何将Tomcat容器替换为Jetty容器》:本文主要介绍如何将Tomcat容器替换为Jetty容器问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Tomcat容器替换为Jetty容器修改Maven依赖配置文件调整(可选)重新构建和运行总结Tomcat容器替

如何使用Python实现一个简单的window任务管理器

《如何使用Python实现一个简单的window任务管理器》这篇文章主要为大家详细介绍了如何使用Python实现一个简单的window任务管理器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起... 任务管理器效果图完整代码import tkinter as tkfrom tkinter i