• 修复升级后 Magento 2 上结账和 webhook 中的严重错误 - Stripe/PayPal - Redis/Varnish

    5 小时 前
    • 所需预算高达 900.74 USD
    • 等待表演者...
  • Magento 2.4.6-p3(PHP 8.2)更新后,在线商店的生产(B2C,约15000个SKU,800-1200个订单/天)出现下单失败和付款不同步的情况。有些客户在付款步骤中收到错误,或者订单在没有交易的情况下创建,有时甚至是重复的。日志包含 500/502、超时、MySQL 死锁消息以及自定义 ERP 集成模块中的异常的混合。还注意到 Stripe webhooks 有时无法确认,而 PayPal IPN 会出现两次。有必要定位根本原因并纠正错误,以便结帐在负载下稳定运行。

    技术环境:Magento 开源 2.4.6-p3、Nginx、PHP-FPM 8.2、MySQL 8.0、Redis(会话+缓存)、Varnish、Elasticsearch/OpenSearch、RabbitMQ。通过 GitLab CI 部署,有暂存,通过 SSH 访问。有APM(New Relic)和中心化日志(ELK)。有几个自定义模块:与 ERP (REST) 集成、促销逻辑、结帐自定义。付款:Stripe(PaymentIntents + webhooks)和 PayPal。

    预期结果:修复结帐错误的原因,正确处理网络钩子/通知,无重复订单/交易,负载下稳定运行。需要一组代码和配置更改,以及一份简短的技术报告,说明损坏的内容及其测试方式。

    限制:禁止停产,仅允许10-15分钟的短暂释放窗口。更改必须与当前的自定义模块兼容。你不能在生产中禁用Varnish/Redis,你可以进行点设置。客户数据无法上传到服务器之外。

    工作阶段:
    1) 诊断:日志分析(Magento/系统/异常、Nginx、PHP-FPM)、New Relic 跟踪、相关 cron/队列、启用分析器的分段回放、按位置顺序搜索竞争条件、Stripe/PayPal 的幂等性检查。
    2) 修复:自定义结帐/ERP 模块中的编辑(事务、重试、阻塞/唯一键)、修正 webhooks 处理(签名、重复、事件顺序、幂等性键)、消除死锁原因(索引/记录顺序)、超时/fastcgi 设置、特定慢速 SQL/消费者的优化。
    3) 验证:针对 3DS/非 3DS 结账场景的暂存 (k6/JMeter) 负载测试、重复 Webhooks 的模拟、非重复验证、促销代码/运费/税费的回归。
    4)发布:MR准备、部署说明、回滚计划、发布支持和24小时指标监控。

    验收标准(测量):
    - 在 50 个虚拟用户的情况下,在 30 分钟的测试中结账成功率至少为 99%,付款步骤中没有 500/502。
    - 发布后24小时内投入生产:下单错误率<0.2%(根据New Relic),不存在具有相同 payment_intent_id/PayPal txn_id 的重复订单。
    - Stripe Webhook 在 99.9% 的情况下均通过 2xx 确认进行处理,重复事件不会创建新的发票/发货。
    - 存储库有一个 MR,其中包含更改的描述和一份简短的报告(1-2 页),其中包含根本原因和日志/指标的链接。

    我将提供访问权限和材料:通过 SSH 连接到 staging/prod、访问 GitLab、New Relic、有问题的订单/付款 ID 示例、事件时间窗口。
  • How would you rate this task?

    Sign in to leave your rating.

    Total ratings: 0

您的报价

您尚未提交此订单的报价。
点击“提交报价”发送您的报价。

需要类似的任务吗?

如果该项目接近您的需求,您可以查看该类别中的现成服务或发布您自己的任务以及所需的预算、截止日期和要求。

项目“修复升级后Magento 2上结账和webhook中的严重错误 - Stripe/PayPal - Redis/Varnish”可以作为自己简述的参考:应该做什么,需要什么结果以及设定什么预算。