<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">
    <channel>
        <title>GRPC - 标签 - lihuu — 系统工程、AI 工具链与 Rust 开发博客</title>
        <link>https://silentstormic.top/tags/gRPC/</link>
        <description>GRPC - 标签 - lihuu — 系统工程、AI 工具链与 Rust 开发博客</description>
        <generator>Hugo -- gohugo.io</generator><language>zh-CN</language><lastBuildDate>Tue, 24 Jun 2025 15:09:47 &#43;0800</lastBuildDate><atom:link href="https://silentstormic.top/tags/gRPC/" rel="self" type="application/rss+xml" /><item>
    <title>gRPC 技术浅析：原理、优势与实战</title>
    <link>https://silentstormic.top/post/grpc-first-step/</link>
    <pubDate>Tue, 24 Jun 2025 15:09:47 &#43;0800</pubDate>
    <author>lihuu</author>
    <guid>https://silentstormic.top/post/grpc-first-step/</guid>
    <description><![CDATA[<h2 id="第一章grpc-简介与核心理念">第一章：gRPC 简介与核心理念</h2>
<p>在现代分布式系统和微服务架构中，服务间的通信效率、可靠性和可维护性至关重要。gRPC 作为一种现代化的通信框架，应运而生，旨在解决传统 RPC 技术的诸多局限性。</p>
<h3 id="11-grpc-的起源与演进">1.1 gRPC 的起源与演进</h3>
<p>gRPC 的诞生并非偶然，它源于谷歌内部长达十余年的大规模实践。自 2001 年起，谷歌便开发并使用一个名为 “Stubby” 的通用 RPC 基础架构，用于连接其数据中心内部和跨数据中心的成千上万个微服务 。随着微服务架构的复杂性与日俱增，对一个更高效、更标准化的通信框架的需求也愈发迫切。</p>]]></description>
</item>
<item>
    <title>gRPC 交互式技术探索</title>
    <link>https://silentstormic.top/research/4/</link>
    <pubDate>Mon, 23 Jun 2025 20:37:19 &#43;0800</pubDate>
    <author>lihuu</author>
    <guid>https://silentstormic.top/research/4/</guid>
    <description><![CDATA[<!DOCTYPE html>
<html lang="zh-CN" class="scroll-smooth">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>gRPC 交互式技术探索</title>
    <script src="https://cdn.tailwindcss.com"></script>
    <script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
    <link rel="preconnect" href="https://fonts.googleapis.com">
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
    <link href="https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@300;400;500;700&display=swap"
        rel="stylesheet">
    <!-- Chosen Palette: Serene Slate -->
    <!-- Application Structure Plan: A single-page application with a sticky top navigation bar for seamless scrolling to thematic sections. The structure is designed for non-linear exploration, diverging from the source report's linear chapters. It starts with a high-level overview, then dives into a "Core Deep Dive" combining Protobuf and HTTP/2. A dedicated "gRPC vs. REST" section provides direct comparison with visualizations. "Communication Modes" are explained with interactive diagrams. "Pros & Cons" are presented side-by-side for a balanced view. A tabbed interface clarifies the "Practical Code Example", and a "Decision Guide" helps users determine suitability. This user-centric, thematic structure facilitates targeted information discovery and comparison, enhancing usability for both technical evaluation and strategic decision-making. -->
    <!-- Visualization & Content Choices: 
        - Report Info: Performance comparison (gRPC vs REST) -> Goal: Compare -> Viz/Presentation: Bar Chart (Chart.js) -> Interaction: Static visual -> Justification: Instantly communicates the significant performance difference mentioned in the report.
        - Report Info: Four communication modes -> Goal: Organize/Explain -> Viz/Presentation: Custom diagrams built with HTML/Tailwind CSS -> Interaction: Tabbed view to select and display details for each mode -> Justification: Simplifies complex concepts into interactive, easily digestible visual chunks.
        - Report Info: Protobuf vs. JSON/XML comparison table -> Goal: Compare -> Viz/Presentation: Styled HTML table -> Interaction: Static -> Justification: Provides a clear, structured comparison of data format features.
        - Report Info: Java code example -> Goal: Inform/Organize -> Viz/Presentation: Styled code blocks within a container -> Interaction: Tabbed interface to switch between different code files (.proto, .gradle, Server, Client) -> Justification: Presents a multi-file code example in an organized, space-efficient manner on a single page.
        - Report Info: When to choose gRPC vs. REST -> Goal: Guide/Inform -> Viz/Presentation: Styled HTML comparison table -> Interaction: Static -> Justification: Delivers a clear, at-a-glance decision-making framework for users.
    -->
    <!-- CONFIRMATION: NO SVG graphics used. NO Mermaid JS used. -->
    <style>
        body {
            font-family: 'Noto Sans SC', sans-serif;
            background-color: #f8fafc;
            color: #1e293b;
        }

        .nav-link {
            transition: color 0.3s, border-color 0.3s;
        }

        .nav-link.active {
            color: #0284c7;
            border-bottom-color: #0284c7;
        }

        .nav-link:hover {
            color: #0ea5e9;
        }

        .chart-container {
            position: relative;
            width: 100%;
            max-width: 600px;
            margin-left: auto;
            margin-right: auto;
            height: 300px;
            max-height: 40vh;
        }

        @media (min-width: 768px) {
            .chart-container {
                height: 350px;
            }
        }

        .code-block {
            background-color: #1e293b;
            color: #e2e8f0;
            padding: 1rem;
            border-radius: 0.5rem;
            overflow-x: auto;
            font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace;
            font-size: 0.875rem;
            line-height: 1.6;
        }

        .tab-btn.active {
            background-color: #0284c7;
            color: white;
        }

        .section-fade-in {
            opacity: 0;
            transform: translateY(20px);
            transition: opacity 0.6s ease-out, transform 0.6s ease-out;
        }

        .section-fade-in.visible {
            opacity: 1;
            transform: translateY(0);
        }
    </style>
</head>

<body class="antialiased">

    <header id="header" class="bg-white/80 backdrop-blur-md shadow-sm sticky top-0 z-50 transition-all duration-300">
        <nav class="container mx-auto px-4 sm:px-6 lg:px-8">
            <div class="flex items-center justify-between h-16">
                <div class="flex items-center">
                    <span class="text-xl font-bold text-slate-800">gRPC 技术探索</span>
                </div>
                <div class="hidden md:block">
                    <div class="ml-10 flex items-baseline space-x-4">
                        <a href="#overview"
                            class="nav-link px-3 py-2 text-sm font-medium text-slate-600 border-b-2 border-transparent">概览</a>
                        <a href="#core-tech"
                            class="nav-link px-3 py-2 text-sm font-medium text-slate-600 border-b-2 border-transparent">核心揭秘</a>
                        <a href="#comparison"
                            class="nav-link px-3 py-2 text-sm font-medium text-slate-600 border-b-2 border-transparent">gRPC
                            vs REST</a>
                        <a href="#modes"
                            class="nav-link px-3 py-2 text-sm font-medium text-slate-600 border-b-2 border-transparent">通信模式</a>
                        <a href="#pro-con"
                            class="nav-link px-3 py-2 text-sm font-medium text-slate-600 border-b-2 border-transparent">优势与挑战</a>
                        <a href="#example"
                            class="nav-link px-3 py-2 text-sm font-medium text-slate-600 border-b-2 border-transparent">实战演练</a>
                        <a href="#decision"
                            class="nav-link px-3 py-2 text-sm font-medium text-slate-600 border-b-2 border-transparent">决策指南</a>
                    </div>
                </div>
            </div>
        </nav>
    </header>

    <main class="container mx-auto px-4 sm:px-6 lg:px-8 py-8 md:py-12">

        <section id="overview" class="section-fade-in my-16 text-center">
            <h1 class="text-4xl md:text-5xl font-extrabold text-slate-900 mb-4">gRPC 交互式技术深度研究</h1>
            <p class="max-w-3xl mx-auto text-lg text-slate-600">
                本应用将 gRPC 技术报告转化为一种动态、可视化的探索体验。gRPC 是一个由 Google 开发的高性能、开源 RPC 框架，基于 HTTP/2 和 Protocol
                Buffers。让我们一起深入了解它的工作原理、核心优势、应用场景以及实践方法。
            </p>]]></description>
</item>
</channel>
</rss>
