Lese mich gerade etwas in #protobuf ein. Erinnert mich an die frühen 2000er #COBOL #Copystrecke.
Bin ich schon so alt, dass ich mich am Ende der Schleife befinde ?
Lese mich gerade etwas in #protobuf ein. Erinnert mich an die frühen 2000er #COBOL #Copystrecke.
Bin ich schon so alt, dass ich mich am Ende der Schleife befinde ?
Работа с callback_data в Telegram-боте с использованием protobuf + base85
Если Вы когда-либо разрабатывали Telegram-бота, Вы наверняка знаете, что такое callback_data . Если нет, вкратце, это произвольная строка, которая привязывается к кнопкам в чате, при помощи которой на бэкенде Вы определяете, какая именно кнопка была нажата. Когда Ваш бот масштабируется, скорее всего управление значениями callback_data превращается в “кашу”. По крайней мере, так произошло у меня. Поэтому сегодня я хочу поделиться с Вами практикой по организации этой всей “каши” в красивый и органичный код.
Due to working on services that do quite a bit of dynamic protobuf marshalling and unmarshalling, this seems like an exciting project https://mcyoung.xyz/2025/07/16/hyperpb/
🪧 Breaking gRPC: How to avoid breaking gRPC clients.
https://kmcd.dev/posts/breaking-grpc/
#protobuf #grpc #api
🪧 Breaking gRPC: How to avoid breaking gRPC clients.
https://kmcd.dev/posts/breaking-grpc/
#protobuf #grpc #api
If you ever notice that handling your Telegram bot scenarios has become a mess, you should probably take a look at the callback_data field. This is the place that often spoils things, so take a look at refactoring approach using base85 + protobuf:
🔍 https://seroperson.me/2025/02/05/enhanced-telegram-callback-data/
gRPC-микросервис на tonic
Привет, Хабр! Сегодня мы рассмотрим, как поднять gRPC-микросервис на tonic и обвязать его аутентификацией плюс метриками через Tower-middleware.
https://habr.com/ru/companies/otus/articles/930778/
#микросервисная_архитектура #grpc #микросервисы #бэкенд #ProtoBuf #аутентификация #Prometheus #tracing
🌕 , the text:
➤ 超越傳統,打造高效能 Protobuf 解析器
✤ https://mcyoung.xyz/2025/07/16/hyperpb/
本文介紹了 hyperpb,一個全新的 Go 語言函式庫,其目標是大幅提升 Protobuf 訊息解析的效能。作者過去曾參與 C++、Rust 以及 UPB (由同事 Josh Haberman 撰寫的最快速 Protobuf 執行時態) 等多個高效能 Protobuf 專案。hyperpb 透過許多優化技術,如零複製模式、arena 重用、以及 profile-guided 優化,在各項基準測試中都超越了競爭對手,包括 Go 內建的 Protobuf 編譯器和 vtprotobuf。與傳統依賴生成特定類型解析器的做法不同,hyperpb 採用了類似 UPB 的動態解析方式,利用 table-driven parser 和 interpreter VM 的概念。
+ 聽起來很棒!我一直對 Protobuf 的效能很關注,很期待能試試這個新的函式庫。
+ Go 的 cgo 確實很麻
#技術 #效能最佳化 #Protobuf
🌗 Introducing hyperpb: 10x faster dynamic Protobuf parsing that’s even 3x faster than generated code
➤ 突破性 Protobuf 解析技術,加速資料處理
✤ https://buf.build/blog/hyperpb
Buf 宣佈推出 hyperpb,一種完全動態的 Protobuf 解析器,其速度比標準的 Go 解決方案 dynamicpb 快 10 倍,甚至比生成的程式碼快 3 倍。hyperpb 在幾乎所有基準測試中都能與 vtprotobuf 的生成程式碼相匹甚至超越,同時不犧牲正確性。Bufstream 利用 hyperpb 實現了 Broker-side 的驗證,並結合 Protovalidate,提供高效且可靠的資料處理能力。這項技術的開發歸功於 Protobuf 編譯器專家 Miguel Young de la Sota。
+ 哇,這速度提升太驚人了!對於需要處理大量 Protobuf 資料的應用程式來說,這絕
#Protobuf #性能優化 #Bufstream
Wspaniały dzisiejszy #Python: #Gentoo uruchamia testy w paczkach związanych z #ProtoBuf z pomocą #PyTest-forked, żeby obejść segfaulty podczas GC.
Oczywiście, oznacza to, że zwykłe programy też mogą łapać segfaulty przy wyjściu.
https://github.com/protocolbuffers/protobuf/issues/22067
https://gitweb.gentoo.org/repo/gentoo.git/tree/dev-python/protobuf/protobuf-6.31.1.ebuild?id=54e20d4bb0ec99ab868695a2980c4307d179cb10#n150
Nowadays in quality #Python: #Gentoo is running #ProtoBuf-related test suite via #PyTest-forked to workaround protobuf segfaulting during GC.
Of course, it implies random programs can segfault on exit too.
https://github.com/protocolbuffers/protobuf/issues/22067
https://gitweb.gentoo.org/repo/gentoo.git/tree/dev-python/protobuf/protobuf-6.31.1.ebuild?id=54e20d4bb0ec99ab868695a2980c4307d179cb10#n150
GoogleがProtobufとgRPCのRust公式サポート発表 - 広がる賛否両論
https://qiita.com/yonaka15/items/76394364118d965b6974?utm_campaign=popular_items&utm_medium=feed&utm_source=popular_items
🌘 GitHub - nathanhleung/protobuf-ts-types:無需代碼生成與編譯的Protobuf訊息至TypeScript型別推斷工具
➤ 實驗性工具實現Protobuf與TypeScript型別無縫對接
✤ https://github.com/nathanhleung/protobuf-ts-types
透過TypeScript模板字面類型技術,直接從Protobuf訊息定義推導TypeScript型別,免除傳統代碼生成流程。
+ 「終於有工具能跳過繁瑣的protoc生成步驟,期待正式版支援oneof和map類型!」
+ 「概念驗證階段就如此實用,但生產環境導入前可能需等服務調用功能完備。」
##開源工具 #TypeScript #Protobuf
Zero-codegen, no-compile TypeScript type inference from Protobufs
https://github.com/nathanhleung/protobuf-ts-types
#HackerNews #ZeroCodegen #TypeScript #Protobuf #TypeInference #NoCompile #TechInnovation
Why is it the language-agnostic formats for defining data models are either
1. Grossly over-engineered for one purpose
2. Grossly over-verbose
3. Both
Where's my clean, easy syntax for defining data classes that can be generated into *simple* PHP, JS, Kotlin, etc? Where's my DTO-maker format?
#Programming #Rant #Protobuf #Openapi #jsonschema #PHP #Javascript
PHP friends. I am looking to experiment with Protobuf as a way to define an API, for which we'll want code-generation for both (modern) PHP and Javascript/TypeScript. What's your recommendation? I'm finding lots of decade-old projects...
Alternatively, is there tooling to generate Protobuf off of PHP code/attributes, the way OpenAPI can?
[Перевод] Эффективная передача данных: используем Protocol Buffers для коммуникации между ESP32 и QT/QML
Привет, Хабр! Сегодня я хочу рассказать вам о том, как можно эффективно использовать Protocol Buffers в сочетании с ESP32 и Qt Framework. Для наглядности я сделаю это на примере собственного хобби-проекта, который представляет из себя гидропонную систему. В этом проекте мы попытаемся наладить коммуникацию между ESP32 и приложением Qt/QML, используя Protocol Buffers через UDP.
[Перевод] Мы взломали Google Gemini и скачали его исходный код (частично)
В 2024 году мы выпустили пост We Hacked Google A.I. for $50,000 , в котором говорилось, как наша группа в составе Рони «Lupin» Карта (это я), Джозефа «rez0» Тэкера и Джастина «Rhynorater» Гарднера поехала в 2023 году в Лас-Вегас, чтобы искать уязвимости Gemini на проводимом Google мероприятии LLM bugSWAT. В этом году мы повторили нашу поездку…
🚀 #Protobuf (Protocol Buffers) is a way to serialize data into a compact binary format . This makes it smaller and faster to transmit over the network, though at the cost of being less human-readable.
📚 Learn more in Phuong's latest #GoLang post!