always pass an explicit PSR-16 cache when initializing the PHP client, one backed by Redis or Memcached in production, never rely on the FileSystem default outside local dev. Set the SDK key as the first init argument and leave the base URL unset unless you run a custom endpoint. If you deploy to a read-only filesystem and see cache write failures on boot, the missing cache argument is the cause. This applies to the other optional init pieces too: pass your own PSR-18 HTTP client and PSR-17 request factory in production rather than letting discovery pick whatever is installed.