《HelloGitHub》第 89 期

news2024/11/17 11:37:03

兴趣是最好的老师,HelloGitHub 让你对编程感兴趣!

b0eed55cae4d919fe45a3c52097d0417.png

简介

HelloGitHub 分享 GitHub 上有趣、入门级的开源项目。

https://github.com/521xueweihan/HelloGitHub

这里有实战项目、入门教程、黑科技、开源书籍、大厂开源项目等,涵盖多种编程语言 Python、Java、Go、C/C++、Swift...让你在短时间内感受到开源的魅力,对编程产生兴趣!


以下为本期内容|每个月 28 号更新

C 项目

1、barco:用 C 语言从头写一个 Linux 容器。该项目仅依赖底层的 Linux 功能,用 C 语言实现的一个 Linux 容器,可用来了解更多关于 Linux 容器和内核的技术细节。

$ sudo ./bin/barco -u 0 -m / -c /bin/sh -a . [-v]

22:08:41 INFO  ./src/barco.c:96: initializing socket pair...
22:08:41 INFO  ./src/barco.c:103: setting socket flags...
22:08:41 INFO  ./src/barco.c:112: initializing container stack...
22:08:41 INFO  ./src/barco.c:120: initializing container...
22:08:41 INFO  ./src/barco.c:131: initializing cgroups...
22:08:41 INFO  ./src/cgroups.c:73: setting memory.max to 1G...
22:08:41 INFO  ./src/cgroups.c:73: setting cpu.weight to 256...
22:08:41 INFO  ./src/cgroups.c:73: setting pids.max to 64...
22:08:41 INFO  ./src/cgroups.c:73: setting cgroup.procs to 1458...
22:08:41 INFO  ./src/barco.c:139: configuring user namespace...
22:08:41 INFO  ./src/barco.c:147: waiting for container to exit...
22:08:41 INFO  ./src/container.c:43: ### BARCONTAINER STARTING - type 'exit' to quit ###

# ls
bin         home                lib32       media       root        sys         vmlinuz
boot        initrd.img          lib64       mnt         run         tmp         vmlinuz.old
dev         initrd.img.old      libx32      opt         sbin        usr
etc         lib                 lost+found  proc        srv         var
# echo "i am a container"
i am a container

地址:https://github.com/lucavallin/barco

2、quake2-rerelease-dll:《雷神之锤 2》官方重制版源码。《雷神之锤 2》是 id Software 在 1997 年发布的一款第一人称射击游戏,被许多玩家视为经典。该项目是官方 2023 年重新发布的 《雷神之锤 2》游戏源码。

971b2557ccd52974eeaeb4ead53d643f.jpeg

地址:https://github.com/id-Software/quake2-rerelease-dll

3、trurl:解析和操作 URL 的命令行工具。该项目是 cURL 作者的新作,可用来解析 URL、替换/提取/设置 URL 中的参数。

地址:https://github.com/curl/trurl

C# 项目

4、GeekDesk:小巧的 Windows 桌面启动工具。这款名为极客桌面的免费工具,拥有极简的界面,支持搜索全盘文件、一键呼出、自定义壁纸、定时提醒等功能。

7e07f24c5ff4d98853d0e8e0f9a07eeb.gif

地址:https://github.com/BookerLiu/GeekDesk

5、Starward:一款开源的 miHoYo 游戏启动器。这是一款支持米哈游旗下所有桌面端游戏的启动器,支持下载游戏、记录游戏时间、切换账号、保存抽卡记录、米游社工具箱等功能,可运行在 Windows 10 及以上的操作系统。

ecf0edcfe89b0779a182daf8377f2101.gif

地址:https://github.com/Scighost/Starward

C++ 项目

6、citra:开源的任天堂 3DS 模拟器。能够完美运行几乎所有 3DS 游戏的模拟器,支持 Windows、Linux、macOS 和 Android 操作系统。

c699e8a5bed5613cf12bca0e735e512b.jpeg

地址:https://github.com/citra-emu/citra

7、implot:实时绘图的 GUI 库。该项目可根据用户交互和数据更新,实时更新图像的 Dear ImGui 绘图库,支持 GPU 加速、多种绘图类型、混合绘图等功能。仅需少量的代码,就能集成实时数据可视化的功能。

int   bar_data[11] = ...;
float x_data[1000] = ...;
float y_data[1000] = ...;

ImGui::Begin("My Window");
if (ImPlot::BeginPlot("My Plot")) {
    ImPlot::PlotBars("My Bar Plot", bar_data, 11);
    ImPlot::PlotLine("My Line Plot", x_data, y_data, 1000);
    ...
    ImPlot::EndPlot();
}
ImGui::End();
664385f3aaccde70318b21da5bd64289.gif

地址:https://github.com/epezent/implot

8、wslg:在 Windows 上运行 Linux 图形化应用的工具。该项目是微软开源的支持在 Windows 操作系统上,运行 Linux GUI 应用的工具。提供了原生和自然的 Linux GUI 应用使用体验,比如跨 Windows 和 Linux 应用的剪切粘贴等功能。WSLg 已内置在 Windows 10 及以上的系统中,可直接通过 wsl 命令启动。

2d1ecf3777757c36b382d8beec6102ad.png

地址:https://github.com/microsoft/wslg

Go 项目

9、etree:更好用的轻量级 Go 语言 XML 库。虽然 Go 语言内置了处理 XML 的库,但在使用时必须按照嵌套层级定义结构体非常繁琐。这个项目的设计灵感来源于 Python 语言的  ElementTree 库,可以在无需定义结构体的情况下灵活的读取、生成 XML 文档。来自 @两双筷子sqldc 的分享

doc := etree.NewDocument()
doc.CreateProcInst("xml", `version="1.0" encoding="UTF-8"`)
doc.CreateProcInst("xml-stylesheet", `type="text/xsl" href="style.xsl"`)

people := doc.CreateElement("People")
people.CreateComment("These are all known people")

jon := people.CreateElement("Person")
jon.CreateAttr("name", "Jon")

sally := people.CreateElement("Person")
sally.CreateAttr("name", "Sally")

doc.Indent(2)
doc.WriteTo(os.Stdout)

地址:https://github.com/beevik/etree

10、golang-design-pattern:Go 语言设计模式的实例代码。该项目是作者阅读《研磨设计模式》一书的读书笔记,并用 Go 语言实现了书中涉及的 23 个设计模式。

地址:https://github.com/senghoo/golang-design-pattern

11、ls-lint:检查目录和文件命名风格的工具。这是一款 Go 编写的目录和文件名 Lint 工具,它依赖少、速度快,可通过 yml 配置文件自定义检测规则和忽略目录,适用于 Git Hooks、GitHub Action、Docker Image 等多种场景。

ls:
  .js: snake_case
  .ts: snake_case | camelCase
  .d.ts: PascalCase
  .html: regex:[a-z0-9]+

ignore:
  - node_modules
48462d5d5b2c82663ccd4fcc71f975f2.gif

地址:https://github.com/loeffel-io/ls-lint

12、webp_server_go:一款开箱即用的 WebP 服务器。WebP 是谷歌开发的一种为了提升图像加载速度的图片格式,该项目是用 Go 写的 WebP 服务,无需二次开发就能实现将 JPG、PNG、BMP、SVG 等格式的图片,转化成 WebP 格式的服务,能够有效地减小图片体积、节省带宽、提升图片加载速度。

c272d4d11f4d398c6f540e0cd639f3bb.png

地址:https://github.com/webp-sh/webp_server_go

Java 项目

13、Jailer:一款强大的数据库提取数据工具。用于数据库子集和关系数据浏览的工具,支持按照表之间关系浏览数据库、生成 DML 拓扑关系等功能。可用来从生产数据库中提取出,支持测试一条完整业务线所需的数据库表和数据。

ca2461486777c7a1170f658201168693.png

地址:https://github.com/Wisser/Jailer

14、OneAccount:一款简约的 Android 记账应用。这是一款支持自定义支出/收入分类、定时提醒、预算设置、花费统计等功能的记账 APP。

a0b69af00f3d3d2771011d9b41c4e7e8.jpeg

地址:https://github.com/LouBii/OneAccount

15、triplea:一款 Java 的回合制战争游戏。这是一款免费、开源的战争棋盘类游戏,玩家可以在游戏中模拟第二次世界大战、拿破仑战争等经典战役,支持 Windows、Linux 和 macOS 操作系统。

7af4a728252513af4e3e9ad862efce50.png

地址:https://github.com/triplea-game/triplea

JavaScript 项目

16、biomes-game:一款开源沙盒 MMORPG 游戏。这是由已被 OpenAI 收购的 Global Illumination 公司,采用 React+Next.js+TypeScript 和 WebAssembly 等技术,构建的大型多人在线角色扮演游戏。玩家可以在游戏里探索世界、建造房子、交易、社交等,无需下载打开浏览器就可以玩。

b629dd16045e1782e17462e8f1e4f3b9.gif

地址:https://github.com/ill-inc/biomes-game

17、docsify:开箱即用的文档网站生成器。该项目可以帮你快速生成文档网站,开箱即用无需构建,写完文档即可发布。支持全文搜索、自定义主题、丰富的 API、Emoji 等实用功能。

a9c6c34228e5061dd22181ac79bb0b8a.png

地址:https://github.com/docsifyjs/docsify

18、poster-design:一款强大的在线设计图片工具。采用 Vue3+Vite2+Vuex+ElementPlus 技术实现的在线海报图片设计工具,可用于生成电商分享图、文章长图、视频/公众号封面等。

2815bc2fa657e5475f9f3fa3612a287f.gif

地址:https://github.com/palxiao/poster-design

19、warriorjs:一个有趣的 JavaScript 编程 RPG 游戏。在游戏中你将通过 JavaScript 语法指挥战士与敌人战斗、营救俘虏,一步步走向塔顶,获得传说中的 JavaScript 之剑。

00ad6c9aeb7ef21ce0c348deccf8ad51.gif

地址:https://github.com/olistic/warriorjs

20、WeHalo:清爽的微信小程序版博客。该项目是基于 Halo 博客后端的微信小程序,可以轻松地将博客内容搬到微信小程序上,支持个人名片、博文展示、评论、搜索文章、自定义导航栏等功能。来自 @umail.com 的分享

d1987bbbde9ce7025a174835bff59020.png

地址:https://github.com/savingrun/WeHalo

Python 项目

21、DrissionPage:类似 selenuium 的网页自动化工具。这是一个基于 Python 的网页自动化工具,支持 Chromium 内核浏览器。它将控制浏览器和收发请求两大功能合二为一,并提供了统一、简洁的接口。来自 @马小六 的分享

# 下载星巴克产品图
from DrissionPage import SessionPage
from re import search

# 以s模式创建页面对象
page = SessionPage()
# 访问目标网页
page.get('https://www.starbucks.com.cn/menu/')

# 获取所有class属性为preview circle的元素
divs = page.eles('.preview circle')
# 遍历这些元素
for div in divs:
    # 用相对定位获取当前div元素后一个兄弟元素,并获取其文本
    name = div.next().text

    # 在div元素的style属性中提取图片网址并进行拼接
    img_url = div.attr('style')
    img_url = search(r'"(.*)"', img_url).group(1)
    img_url = f'https://www.starbucks.com.cn{img_url}'

    # 执行下载
    page.download(img_url, r'.\imgs', rename=name)

地址:https://github.com/g1879/DrissionPage

22、learndb-py:从头用 Python 写一个数据库。该项目是用 Python 从零实现一个关系型数据库,从而更好地了解数据的内部构造,此数据库仅可作为学习和练手项目,无法应用在生产环境。

地址:https://github.com/spandanb/learndb-py

23、nvitop:用 top 命令的方式查看 NVIDIA GPU 和进程状态。这是一款 NVIDIA 设备和进程监控工具,拥有多彩高亮的界面,实时更新的进程和设备信息,支持过滤进程、鼠标控制、发送信号等功能。

3d5f4a508c01171e15aa17b8e534820c.png

地址:https://github.com/XuehaiPan/nvitop

24、upiano:运行在命令行里的电子琴。这是一个小型的电子琴命令行应用,它安装简单、运行方便,支持鼠标和键盘两种操作方式。

0d9443f39c619da5f1a8e50ca2dc13c8.png

地址:https://github.com/eliasdorneles/upiano

25、watchgha:在本地查看 GitHub Action 运行状态的工具。仅需一条命令就可以实时显示当前分支,在 GitHub Action 上运行状态的命令行工具。

071f78d1a480fbb9550699b4b0738416.gif

地址:https://github.com/nedbat/watchgha

Ruby 项目

26、OpenFarm:一个教你如何种植农作物的网站。这是一个关于种植农作物的知识库,你可以在里面找到如何种植西红柿、土豆、草莓等植物的步骤,这一切都是免费的。

90b5e1e483c1d40d0ba7449a98da4e3c.png

地址:https://github.com/openfarmcc/OpenFarm

Rust 项目

27、rjvm:用 Rust 写一个迷你 JVM 的学习项目。这是一个用 Rust 写 JVM7 的练手项目,已实现 Java 基础类型、异常处理、堆栈跟踪、垃圾回收、解析 .class 文件等功能。

地址:https://github.com/andreabergia/rjvm

28、starship:轻量、速度超快的高颜值终端。这是一个 Rust 写的高颜值、适用于各种 Shell 的终端,它开箱即用,可定制各式各样的提示符,适用于 Windows、Linux、Android 和 macOS 系统。

3fa52d9b2881c09ddc2b76b652ac9861.gif

地址:https://github.com/starship/starship

Swift 项目

29、Mist:自动下载 macOS 系统固件的工具。这款工具可以列出所有可供下载的 macOS 固件/安装程序的信息,包括名称、版本号、发布日期和大小。

1ce94f2f8f9e86993f5ae7652c012367.png

地址:https://github.com/ninxsoft/Mist

30、SkeletonView:一款优雅的 Swift 骨架屏库。骨架屏是在页面展示所需的数据还未加载完成时,先展示出页面大致结构的一项技术。这个 Swift 骨架屏库容易上手、接口友好,支持所有 UIView、自定义动画等功能。

6e5da68a02df85bf4c5764dfb72016fd.gif

地址:https://github.com/Juanpe/SkeletonView

其它

31、beepy:一款全键盘便携式的 Linux 计算机。这是一个结合了黑莓键盘、400*200 LCD 显示屏、2000mAh 电池的板子,售价 79 美元。插上树莓派 Zero W,立马变成了一个黑莓版的 Linux 游乐场。

54e604ab3d2873967281171a7ab75244.jpeg

地址:https://github.com/beeper/beepy

32、cloc:计算代码行数的工具。这是一款可以统计源码中空白行、注释、不同编程语言代码行数的工具。

71c7fb0cb1031c1473ea1a06e53bf8b2.png

地址:https://github.com/AlDanial/cloc

33、How-To-Secure-A-Linux-Server:一份 Linux 服务器安全指南。这是一份专注于保护非企业场景下的 Linux 服务器安全的操作指南,它虽然不够专业但对于个人来说足够了。

地址:https://github.com/imthenachoman/How-To-Secure-A-Linux-Server

34、linux-tutorial:一份实用的 Linux 教程。不同于大而全的 Linux 教程,该项目的内容主要侧重于实用性,内容包括 Linux 常用命令、Linux 系统运维、软件运维、常用 shell 脚本等。来自 @孤胆枪手 的分享

地址:https://github.com/dunwu/linux-tutorial

35、weekly:独立开发产品变现周刊。关于独立开发者、产品变现相关内容的周刊。

地址:https://github.com/ljinkai/weekly

开源书籍

36、lean-side-bussiness:《精益副业:程序员如何优雅地做副业》。该书扩展了《程序员如何优雅地挣零花钱》的内容,引入了精益创业流程,将其优化为副业专用精益副业流程,并增添了独立开发变现和网课变现实践的内容。

地址:https://github.com/easychen/lean-side-bussiness

37、putting-the-you-in-cpu:当你运行程序时发生了什么?这是一份关于程序是如何跑起来的迷你书,内容涉及计算机基础、操作系统、Linux 如何加载可执行文件等。

e0ea60102d3c2cf9e9925d3cc962dee5.png

地址:https://github.com/hackclub/putting-the-you-in-cpu

38、theByteBook:《深入架构原理与实践》。随着云计算的兴起,技术架构的关注点也从集群可用性治理,发展到云原生和 FinOps 成本管理。该书涵盖了网络、容器、网关、微服务与分布式、云原生、质量监测和成本管理方面的内容,帮助读者快速理清云时代下的技术架构体系。

512f4a1730be198b84e785065f2d2a74.jpeg

地址:https://github.com/isno/theByteBook

39、typescript-tutorial:阮一峰的 TypeScript 教程。这是一份面向初学者的 TypeScript 开源教程,内容涵盖 TypeScript 的基本概念和用法。

地址:https://github.com/wangdoc/typescript-tutorial

机器学习

40、audiocraft:Meta 开源的文本生成音乐的库。该项目可根据文本提示词生成高质量、高保真的音频和音乐,比如吹着风吹口哨、一段适合海滩场景的流行舞曲,生成效果十分惊艳。

938c3a9f74c78f4bfca8570c2b255ac6.png

地址:https://github.com/facebookresearch/audiocraft

41、Fooocus:一款开箱即用的图片生成软件。该项目在设计时吸收了 Stable Diffusion 和 Midjourney 的优点,它安装简单、操作方便,省去了复杂的参数调节步骤。用户只需要输入提示词,就可以生成与 Midjourney 水平相当的图片。支持本地部署、离线使用,最低配置要求 8GB 内存和 4GB 的 Nvidia 显卡。来自 @刘三非 的分享

9905b1d7fef295ab9e8bfc8e657e49c6.png

地址:https://github.com/lllyasviel/Fooocus

42、machine-learning-notes:徐亦达的机器学习课程。该项目是香港浸会大学(HKBU)徐亦达教授开源的关于机器学习、概率模型、深度学习的讲义和视频课程链接。

eb636864f535110564c310543e3c8dcf.jpeg

地址:https://github.com/roboticcam/machine-learning-notes

最后

感谢乐于分享开源项目的小伙伴们,欢迎更多的开源爱好者来 HelloGitHub 自荐/推荐开源项目。

以上就是本期的所有内容,感谢您的阅读,如果觉得本期内容还不错的话 求赞、求分享 ❤️ 还没看过瘾?点击阅读往期内容。

- END -

👆 关注「HelloGitHub」收到第一时间的更新👆

点击阅读原文可按照编程语言查看项目

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/947055.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

教程更新 | RK3568驱动指南第六篇-平台总线

《iTOP-RK3568开发板驱动开发指南》更新,本次更新内容对应的是驱动(第六期_平台总线_全新升级)视频,后续资料会不断更新,不断完善,帮助用户快速入门,大大提升研发速度。 ✦ 第一篇 驱动基础 第1…

启莱OA messageurl.aspx SQL注入

​子曰:“不患人之不己知,患不知人也。” 漏洞复现 访问漏洞url: 使用SQLmap对参数 user 进行注入 漏洞证明: 文笔生疏,措辞浅薄,望各位大佬不吝赐教,万分感谢。 免责声明:由于…

java八股文面试[多线程]——synchronized 和lock的区别

其他差别: synchronized是隐式的加锁,lock是显式的加锁; synchronized底层采用的是objectMonitor,lock采用的AQS; synchronized在进行加锁解锁时,只有一个同步队列和一个等待队列, lock有一个同步队列,可以有多个等待队列; synchronized使用了object类的wait和noti…

视频垂直镜像播放,为您的影片带来新鲜感

大家好!在制作视频时,我们常常希望能够给观众带来一些新鲜感和独特的视觉效果。而垂直镜像播放是一个能够让您的影片与众不同的技巧。然而,传统的视频剪辑软件往往无法直接实现视频的垂直镜像播放,给我们带来了一些困扰。现在&…

Flink CDC介绍

1.CDC概述 CDC(Change Data Capture)是一种用于捕获和处理数据源中的变化的技术。它允许实时地监视数据库或数据流中发生的数据变动,并将这些变动抽取出来,以便进行进一步的处理和分析。 传统上,数据源的变化通常通过…

计算机网络-笔记-第五章-运输层

目录 五、第五章——运输层 1、运输层概述 2、运输层端口号、复用、分用 (1)熟知端口号、登记端口号、短暂端口号 (2)熟知端口号 (3)发送方复用、接收方分用 3、UDP与TCP对比 (1&#x…

十二、集合(2)

本章概要 添加元素组集合的打印列表 List 添加元素组 在 java.util 包中的 Arrays 和 Collections 类中都有很多实用的方法,可以在一个 Collection 中添加一组元素。 Arrays.asList() 方法接受一个数组或是逗号分隔的元素列表(使用可变参数&#xff…

8.react18并发模式与startTransition(搜索高亮思路)

React 18 之前,渲染是一个单一的,不间断的,同步的事务,一旦渲染开始,就不能被中断 React 18引入并发模式,它允许你将标记更新作为一个transitions,这会告诉React他们可以被中断执行.这样可以将紧急任务先更新,不紧急任务后更新. 将任务给紧急任务先执行, 优先级低的任务后执行…

avue实现用户本地保存自定义配置字段属性及注意事项

avue实现用户本地保存自定义配置字段属性及注意事项 先看一段基于vue-nuxt2的page代码&#xff1a; 代码文件AvueSaveOption.vue <template><div><p>用户保存自定义表格项</p><avue-crudref"crud":defaults.sync"defaults":opt…

华为云服务器前后端分离项目打包上传及nginx配置

目录 1、Spring Boot项目打包 2、后端上传到云服务器 3、前端打包 1&#xff09;前端请求路径修改 2&#xff09;打包上传 4、下载nginx 1&#xff09;添加源 2&#xff09;安装Nginx 3&#xff09;查看nginx安装目录和版本 4&#xff09;启动 重启nginx命令 5&#…

接口测试与功能测试的区别~

今天为大家分享的是我们在日常测试工作中, 一定会接触并且目前在企业中是主要测试内容的 功能测试与接口测试 一.功能测试与接口测试的基本概念。 1.1 什么是功能测试呢? 功能测试: 是黑盒测试的一方面, 检查实际软件的功能是否符合用户的需求 功能测试测试的内容包括以下…

工程制造领域:企业IT架构

一、500强IT部门的组织规划架构图 1.1 IT服务保证梯队与指导思想 二、工程制造领域&#xff0c;整体业务规划架构图 三、工程制造领域&#xff0c;数据化项目规划架构图 四、工程制造领域&#xff0c;IT应用系统集成架构图

15. 实现业务功能--帖子操作

1. 集成编译器 editor.md 支持 MarkDown 语法编辑&#xff0c;在需要用户输⼊内容的页面按以下代码嵌入编辑器 1.1 编写 HTML <!-- 引⼊编辑器的CSS --> <link rel"stylesheet" href"./dist/editor.md/css/editormd.min.css"> <!-- 引⼊编…

学习pytorch6 torchvision中的数据集使用

torchvision中的数据集使用 1. torchvision中的数据集使用官网文档注意点1 totensor实例化不要忘记加括号注意点2 download可以一直保持为True代码执行结果 2. DataLoader的使用 1. torchvision中的数据集使用 官网文档 注意左上角的版本 https://pytorch.org/vision/0.9/ 注…

行业趋势和新兴领域分析:分析当前网络安全行业的发展趋势,如IoT安全、AI安全、区块链安全等。

第一章&#xff1a;引言 随着数字化时代的迅速发展&#xff0c;网络安全已经成为各行各业不可忽视的重要领域。恶意攻击、数据泄露以及黑客入侵等威胁逐渐增多&#xff0c;推动着网络安全行业不断创新与进步。本文将深入探讨当前网络安全领域的发展趋势&#xff0c;聚焦于新兴…

肿瘤科医师狂喜,15分RNA修饰数据挖掘文章

Biomamba荐语 与这个系列的前面一些论文类似&#xff0c;这次给大家推荐的是一篇纯生物信息学数据挖掘的文章&#xff0c;换句话说&#xff0c;这又是一篇不需要支出科研经费&#xff08;白嫖&#xff09;的论文(当然&#xff0c;生信分析用的服务器还是得掏点费用的)。一般来…

springboot第37集:kafka,mqtt,Netty,nginx,CentOS,Webpack

image.png binzookeeper-server-start.shconfigzookeeper.properties.png image.png image.png 消费 image.png image.png image.png image.png image.png image.png image.png image.png image.png Netty的优点有很多&#xff1a; API使用简单&#xff0c;学习成本低。功能强大…

【操作系统】聊聊文件传输的零拷贝、PageCache、异步IO机制

在目前主流的系统中&#xff0c;其实大多数都是数据密集型系统&#xff0c;所以设计数据密集型应用一书非常经典&#xff0c;推荐一读。而大多数遇到的问题都是存储问题。CPU、内存 因为本身的读写速度比较快&#xff0c;所以磁盘就成为了一个性能瓶颈。 针对磁盘优化的技术层…

对class文件进行base64编码

使用以下代码 package org.springframework.cloud.gateway.sample;import org.springframework.util.Base64Utils;import java.io.*; import java.nio.charset.StandardCharsets;public class EncodeShell {public static void main(String[] args){byte[] data null;try {In…

大数据之linux入门

一、linux是什么 linux操作系统 开发者是林纳斯-托瓦兹&#xff0c;出于个人爱好编写。linux是一个基于posix和unix的多用户、多任务、支持多线程和多CPU的操作系统。 Unix是20世纪70年代初出现的一个操作系统&#xff0c;除了作为网络操作系统之外&#xff0c;还可以作为单…