<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Grpc on Hi, I&#39;m Muhammad Amal</title>
    <link>https://muhammadamal.my.id/tags/grpc/</link>
    <description>Recent content in Grpc on Hi, I&#39;m Muhammad Amal</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Mon, 28 Jul 2025 09:00:00 +0700</lastBuildDate>
    <atom:link href="https://muhammadamal.my.id/tags/grpc/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>OpenTelemetry for gRPC Services in Go, A Production Walkthrough</title>
      <link>https://muhammadamal.my.id/blog/opentelemetry-grpc-go-production-walkthrough/</link>
      <pubDate>Mon, 28 Jul 2025 09:00:00 +0700</pubDate>
      <guid>https://muhammadamal.my.id/blog/opentelemetry-grpc-go-production-walkthrough/</guid>
      <description>OpenTelemetry has stabilized enough that you can wire it up once and forget. Here&amp;rsquo;s the configuration that ships.</description>
    </item>
    <item>
      <title>Streaming gRPC for Real Time Data, A Hands On Guide</title>
      <link>https://muhammadamal.my.id/blog/streaming-grpc-realtime-data-guide/</link>
      <pubDate>Wed, 16 Jul 2025 09:00:00 +0700</pubDate>
      <guid>https://muhammadamal.my.id/blog/streaming-grpc-realtime-data-guide/</guid>
      <description>Streaming gRPC is more than calling Send in a loop. Here&amp;rsquo;s how to build streams that don&amp;rsquo;t fall over in production.</description>
    </item>
    <item>
      <title>Connect Go for Browser Friendly gRPC, A Production Tutorial</title>
      <link>https://muhammadamal.my.id/blog/connect-go-browser-friendly-grpc-tutorial/</link>
      <pubDate>Wed, 09 Jul 2025 09:00:00 +0700</pubDate>
      <guid>https://muhammadamal.my.id/blog/connect-go-browser-friendly-grpc-tutorial/</guid>
      <description>Connect-Go gives you gRPC ergonomics with a wire format browsers can actually speak. Here&amp;rsquo;s how to use it well.</description>
    </item>
    <item>
      <title>gRPC Deep Dive in 2025, Patterns for High Throughput Services</title>
      <link>https://muhammadamal.my.id/blog/grpc-deep-dive-2025-high-throughput-patterns/</link>
      <pubDate>Mon, 07 Jul 2025 09:00:00 +0700</pubDate>
      <guid>https://muhammadamal.my.id/blog/grpc-deep-dive-2025-high-throughput-patterns/</guid>
      <description>What still trips people up about gRPC in 2025, and the production patterns that actually move the needle.</description>
    </item>
    <item>
      <title>gRPC for Internal Services in Go, A buf Powered Workflow</title>
      <link>https://muhammadamal.my.id/blog/grpc-internal-services-go-buf/</link>
      <pubDate>Mon, 08 Jul 2024 09:00:00 +0700</pubDate>
      <guid>https://muhammadamal.my.id/blog/grpc-internal-services-go-buf/</guid>
      <description>How I wire up gRPC for internal Go services in 2024 with buf CLI 1.34, lint rules, and breaking change detection.</description>
    </item>
    <item>
      <title>Testing gRPC Services in Go with testcontainers and bufconn</title>
      <link>https://muhammadamal.my.id/blog/testing-grpc-services-golang-testcontainers/</link>
      <pubDate>Thu, 30 Mar 2023 09:00:00 +0700</pubDate>
      <guid>https://muhammadamal.my.id/blog/testing-grpc-services-golang-testcontainers/</guid>
      <description>Unit, integration, and contract testing for Go gRPC services — bufconn, testcontainers-go, and where the lines belong.</description>
    </item>
    <item>
      <title>Observability for Go gRPC Services with OpenTelemetry</title>
      <link>https://muhammadamal.my.id/blog/observability-grpc-opentelemetry-golang/</link>
      <pubDate>Mon, 27 Mar 2023 09:00:00 +0700</pubDate>
      <guid>https://muhammadamal.my.id/blog/observability-grpc-opentelemetry-golang/</guid>
      <description>Traces, metrics, and logs in a Go gRPC service with OpenTelemetry — propagation, conventions, and sampling that scale.</description>
    </item>
    <item>
      <title>Connection Pooling for gRPC and Postgres in Go</title>
      <link>https://muhammadamal.my.id/blog/connection-pooling-grpc-postgres-golang/</link>
      <pubDate>Mon, 20 Mar 2023 09:00:00 +0700</pubDate>
      <guid>https://muhammadamal.my.id/blog/connection-pooling-grpc-postgres-golang/</guid>
      <description>Right-sizing pgx pools and gRPC client connections in Go — the tuning, lifecycle, and math that survives real traffic.</description>
    </item>
    <item>
      <title>gRPC Interceptors in Go, Auth, Logging, and Recovery</title>
      <link>https://muhammadamal.my.id/blog/grpc-interceptors-middleware-golang/</link>
      <pubDate>Thu, 16 Mar 2023 09:00:00 +0700</pubDate>
      <guid>https://muhammadamal.my.id/blog/grpc-interceptors-middleware-golang/</guid>
      <description>Unary and stream interceptors in gRPC-Go — the middleware patterns for auth, logging, and recovery you&amp;rsquo;ll actually run in prod.</description>
    </item>
    <item>
      <title>Context, Deadlines, and Cancellation in gRPC Microservices</title>
      <link>https://muhammadamal.my.id/blog/context-deadlines-grpc-microservices/</link>
      <pubDate>Mon, 13 Mar 2023 09:00:00 +0700</pubDate>
      <guid>https://muhammadamal.my.id/blog/context-deadlines-grpc-microservices/</guid>
      <description>Context propagation across gRPC boundaries — deadlines, cancellation, and the subtle bugs that hide between services.</description>
    </item>
    <item>
      <title>gRPC Streaming RPCs in Go, Server, Client, and Bidirectional</title>
      <link>https://muhammadamal.my.id/blog/grpc-streaming-rpcs-golang/</link>
      <pubDate>Mon, 06 Mar 2023 09:00:00 +0700</pubDate>
      <guid>https://muhammadamal.my.id/blog/grpc-streaming-rpcs-golang/</guid>
      <description>The four RPC types in gRPC explained with Go 1.20 examples — when streaming helps and when it just adds complexity.</description>
    </item>
    <item>
      <title>gRPC Basics in Go, From Proto to Production Server</title>
      <link>https://muhammadamal.my.id/blog/grpc-basics-golang-microservices/</link>
      <pubDate>Thu, 02 Mar 2023 09:00:00 +0700</pubDate>
      <guid>https://muhammadamal.my.id/blog/grpc-basics-golang-microservices/</guid>
      <description>A pragmatic walkthrough of gRPC fundamentals in Go 1.20: protobuf schemas, code generation, and server setup.</description>
    </item>
    <item>
      <title>Adapters in Go, HTTP, gRPC, and Worker Patterns</title>
      <link>https://muhammadamal.my.id/blog/go-adapter-pattern/</link>
      <pubDate>Fri, 17 Jun 2022 09:00:00 +0700</pubDate>
      <guid>https://muhammadamal.my.id/blog/go-adapter-pattern/</guid>
      <description>Adapters in Go: HTTP, gRPC, workers. Translate between transport DTOs and use cases. Frameworks at edges.</description>
    </item>
    <item>
      <title>Communicating Between Go Microservices, REST vs gRPC in 2022</title>
      <link>https://muhammadamal.my.id/blog/grpc-vs-rest-go-microservices/</link>
      <pubDate>Fri, 14 Jan 2022 09:00:00 +0700</pubDate>
      <guid>https://muhammadamal.my.id/blog/grpc-vs-rest-go-microservices/</guid>
      <description>REST vs gRPC for Go microservices. Real benchmarks, ergonomics, the hidden cost of HTTP/JSON at scale, and what we picked for billing.</description>
    </item>
  </channel>
</rss>
