0%

问题描述

最近,我们在开发Shopify应用时,遇到了一个非常恼人的问题。我们希望允许商家降级他们当前的订阅计划,但是要求降级要在下一个计费周期才生效,当前的计划应该保持不变直到下一个计费周期。

我们发现了Shopify的 APPLY_ON_NEXT_BILLING_CYCLE 替换行为,本以为这就是我们想要的功能。但是,在测试时,我们发现当前的订阅立即被取消,降级后的订阅直接变成了 ACTIVE 状态,而这个行为应该是在下一个计费周期才触发的。

阅读全文 »

在尝试从一个使用Cloudflare Web应用程序防火墙(WAF)保护的网站获取数据时,我遇到了一些挑战.该网站的安全措施非常严格,以至于在正常浏览几个页面后,Cloudflare的检查页面就会出现.

传统的HTTP客户端方法,如直接使用httpclient来抓取页面数据,很快就会遭遇阻碍.

即便尝试使用代理IP池,问题依旧存在,因为Cloudflare的检测机制能够在短时间内多次访问后迅速触发.在多次尝试后,我决定使用playwright这个自动化库来模拟正常的浏览器行为.

虽然在使用playwright的过程中遇到了一些问题,但我最终找到了解决方案.现在,尽管速度稍慢,但我能够正常地从网站获取数据.接下来,我将分享如何克服这些挑战的经验.

阅读全文 »

现在和朋友一起搞点东西,部署都很简单,服务器上装个docker,服务丢上去,写个docker compose配置就跑着.
有个服务最近流量涨的比较多,再加上有段时间没有部署,看服务器上的磁盘使用越来越多.

起初以为是应用的日志太多了,应用日志每天归档为gzip,保留60天,看了下并没有多少,用lsof检查也确认没有roll掉的被持有,再去容器内部看了下发现体积远没有这么大.

于是开始用du --max-depth=1 检查发现是/var/lib/docker/containers/目录, 再一看容器id就是这个服务, 再定位是<container-id>-json.log 文件.

阅读全文 »

啊… …
一通操作下来感觉就是两个字 折磨
跨平台有跨平台的好处 但框架本身支持的有限 很多东西做起来很曲折 哎

这里总结一下笔者为了折腾本地图片显示的尝试
为什么要做本地图片展示呢 如果是做需要网络连接的app 这个一般是不需要的(要做上传前预览/编辑的话还是要的)
但对于离线的app肯定是要的 总会有场景用户导入图片/文件之类的吧

笔者只测试了windows和安卓这两个平台,mac和iOS因为没有设备和开发者账号所以调试不了😀

阅读全文 »

简介

Shopify作为流行的电商平台,支持安装各种插件扩展功能
插件开发中难免会遇到各种问题,记录和跟踪这些问题非常重要
emmmm…之前遇到过一些问题,但时间有点长记得不清楚了… …
这里先记录一些最近遇到的,之后再不断补充

阅读全文 »

记录一下快速模板,整体很简单,如果不接auth,只需要以下:

  • 提供一个/.well-known/ai-plugin.json接口,返回openAI所需要的格式
  • 提供openAPI规范的文档
  • CORS设置

其他的和普通的web开发类似.

本地开发就直接使用localhost即可,前几天官方localhost无法联通,最近应该修复了.

要让GPT更好理解接口内容,接口需要写详细的文档,在文档内写清楚各个参数作用和可选值以及示例.

阅读全文 »

原文来自:https://blog.stephencleary.com/2013/11/there-is-no-thread.html
作者:Stephen Cleary
翻译 by abaabaqua

这是最纯粹形式的异步的一个基本事实:没有线程。

反对这一事实的人很多。”不”,他们喊道,”如果我正在等待手术,一定有一个线程在等待!它可能是一个线程池线程。或者操作系统线程!或者带有设备驱动程序的东西……”

不要理会那些哭声。如果异步操作是纯粹的,那么就没有线程。

阅读全文 »

这本书去年11月出的,今年中文版也出了,并且直接上了微信读书,之后有空就读一读,分享下读书笔记~

原文内容比较充实,建议有时间可以读一下原文.
第一章主要是个概览.

MySQL的逻辑架构


默认情况下,每个客户端连接都会在服务器进程中拥有一个线程,该连接的查询只会在这个单独的线程中执行,该线程驻留在一个内核或者CPU上.
线程池

优化器会向存储引擎询问它的一些功能、某个具体操作的成本,以及表数据的统计信息.

query cache 5.7.20弃用 8.0移除
考虑应用自己在redis中缓存

阅读全文 »