<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>guest-checkout on </title>
    <link>/tags/guest-checkout/</link>
    <description>Recent content in guest-checkout on </description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en</language>
    <lastBuildDate>Wed, 08 Apr 2026 10:00:00 +0800</lastBuildDate><atom:link href="/tags/guest-checkout/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>电商 Guest-First 购物体验：无需注册也能完整下单</title>
      <link>/posts/shop-guest-first-shopping/</link>
      <pubDate>Wed, 08 Apr 2026 10:00:00 +0800</pubDate>
      
      <guid>/posts/shop-guest-first-shopping/</guid>
      <description>📦 本文基于的完整项目源码：https://github.com/meirongdev/shop
2026-04 实践更新 当前主线代码里，游客购物车已经从 StringRedisTemplate 统一切到 RedissonClient 的 RBucket&amp;lt;String&amp;gt;，但仍然保留“JSON 可读 + TTL 续期”的设计。下面示例已按当前实现同步。
在电商平台中，注册/登录常常是转化链路里的明显阻力之一。Baymard 长期跟踪 checkout 可用性时，也一直把“被迫注册账号”列为常见流失原因之一。Baymard Institute, Cart Abandonment Rate
Shop Platform 目前已经在 buyer-portal 这条链路上初步支持 Guest-First（游客优先）：用户可以不注册先创建游客订单、保存 order_token 并回查状态。需要补充说明的是，KMP buyer-app 目前仍要求登录后再触发结账，所以这里更接近“逐步 guest-first”，而不是所有前端入口都已经完全等价。
整体流程 flowchart TD Visit[&#34;访问网站&#34;] Browse[&#34;浏览商品&#34;] AddCart[&#34;加入购物车&#34;] Checkout[&#34;结账&#34;] Pay{&#34;支付&#34;} Guest[&#34;auth-server 签发 guest JWT&#34;] RedisCart[&#34;Redis 购物车TTL 48 小时&#34;] GuestOrder[&#34;创建 GUEST 订单带 order_token&#34;] Track[&#34;通过 order_token 追踪订单&#34;] Login[&#34;注册/登录&#34;] Merge[&#34;购物车合并Redis → DB&#34;] SignedIn[&#34;登录态购物车&#34;] Visit --&gt; Browse --&gt; AddCart --&gt; Checkout --&gt; Pay Pay --&gt;|&#34;</description>
    </item>
    
    <item>
      <title>Spring Boot 3.5 &#43; Java 25 &#43; Cloud Native 系列（三）：BFF 聚合层</title>
      <link>/posts/shop-platform-bff-aggregation/</link>
      <pubDate>Thu, 02 Apr 2026 10:00:00 +0800</pubDate>
      
      <guid>/posts/shop-platform-bff-aggregation/</guid>
      <description>在上一篇中，我们看了 API Gateway 如何作为统一入口处理 JWT 校验和路由分发。请求经过 Gateway 后，到达的就是本文的主角——BFF（Backend for Frontend）聚合层。
📦 本文基于的完整项目源码：https://github.com/meirongdev/shop
上一篇：（二）API Gateway 架构
2026-04 实践更新 当前主线代码里，buyer-bff / seller-bff 都已经完成了 typed @HttpExchange 客户端改造；BuyerAggregationService / SellerAggregationService 不再直接持有一堆 raw RestClient 调用链，而是通过 HttpServiceProxyFactory 注入声明式客户端。本文下面与客户端装配相关的表述已按当前实现校正。
BFF 模式：为什么需要聚合层 在微服务架构中，前端页面往往需要从多个领域服务获取数据。如果没有 BFF，前端直接调用每个领域服务会面临：
前端 ←→ profile-service (获取用户档案) ←→ wallet-service (获取钱包余额) ←→ promotion-service (获取可用优惠) ←→ marketplace-service (获取推荐商品) ←→ loyalty-service (获取积分账户) 问题显而易见：前端需要知道每个服务的地址、认证方式、数据格式；任何服务变动都会影响前端代码；更重要的是，前端暴露了内部服务拓扑，安全和治理成本都会明显上升。
graph LR FE1[&#34;前端&#34;] P[&#34;profile-service&#34;] W[&#34;wallet-service&#34;] PM[&#34;promotion-service&#34;] M[&#34;marketplace-service&#34;] L[&#34;loyalty-service&#34;] FE1 -.-&gt; P FE1 -.-&gt; W FE1 -.-&gt; PM FE1 -.</description>
    </item>
    
  </channel>
</rss>
