ਕਲਾਉਡ ਭੰਡਾਰਣ
ਕਲਾਉਡ ਘਰ ਵਰਤੋਂਕਾਰ ਦੇ ਪਹਿਲਾਂ ਹੀ ਮਾਲਕ ਭੰਡਾਰਣ ਵਿੱਚ ਇੱਕ ਥਾਂ ਹੈ। ਹਰ ਦਾਤਾ coven ਵਿੱਚ ਉਹੀ ਭੰਡਾਰਣ interface ਰਾਹੀਂ ਚਲਦਾ ਹੈ; ਦਾਤੇ ਅਨੁਸਾਰ ਜੋ ਵੱਖਰਾ ਹੈ ਉਹ ਪਰਮਾਣੀਕਰਨ ਅਤੇ ਦੂਜੇ ਯੰਤਰ ਨੂੰ ਪਹੁੰਚ ਕਿਵੇਂ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ।
ਦਾਤੇ
ਇਸ ਭਾਗ ਦਾ ਲਿੰਕ| ਦਾਤਾ | ਪਰਮਾਣ | ਨਵੇਂ ਯੰਤਰ ਲਈ ਪਹੁੰਚ |
|---|---|---|
| S3-compatible | Access ਕੁੰਜੀ + ਰਾਜ਼ | ਸੱਦੇ ਵਿੱਚ embedded ਯੋਗਤਾਵਾਂ |
| Google Drive | OAuth (PKCE) | ਫੋਲਡਰ ਜੁੜਨ ਵਾਲਾ ਦੇ ਖਾਤਾ ਨਾਲ ਸਾਂਝਾ |
| Dropbox | OAuth (PKCE) | ਫੋਲਡਰ ਜੁੜਨ ਵਾਲਾ ਦੇ ਖਾਤਾ ਨਾਲ ਸਾਂਝਾ |
| OneDrive | OAuth (PKCE) | ਫੋਲਡਰ ਜੁੜਨ ਵਾਲਾ ਦੇ ਖਾਤਾ ਨਾਲ ਸਾਂਝਾ |
| iCloud (CloudKit) | Apple ID, no ਸਾਈਨ-ਇਨ | ਜੁੜਨ ਵਾਲਾ ਵੱਲੋਂ accepted CloudKit share |
S3-compatible ਵਿੱਚ AWS, Backblaze B2, Cloudflare R2, Wasabi, MinIO, ਅਤੇ API ਬੋਲਣ ਵਾਲੀ ਹੋਰ ਹਰ ਚੀਜ਼ ਆਉਂਦੀ ਹੈ; ਬਕੇਟ, ਖੇਤਰ, ਅੰਤ-ਬਿੰਦੂ, ਅਤੇ ਕੁੰਜੀ ਉਪਸਰਗ ਬਦਲੇ ਜਾ ਸਕਦੇ ਹਨ, ਅਤੇ ਸੰਰਚਨਾ ਸਾਂਭਣ ਤੋਂ ਪਹਿਲਾਂ ਬਕੇਟ probe ਹੁੰਦਾ ਹੈ ਤਾਂ ਜੋ ਲਿਖਤ-ਗਲਤੀ ਸੈੱਟਅਪ ਉੱਤੇ ਫੇਲ੍ਹ ਹੋਵੇ, ਪਹਿਲੇ ਸਮਕਾਲੀਕਰਨ ਉੱਤੇ ਨਹੀਂ। OAuth ਦਾਤੇ ਸਿਰਫ਼ ਪੂਰੇ bae ਸੰਸਕਰਣ ਵਿੱਚ ਹਨ; baeium ਬਣਾਵਟਾਂ ਉਨ੍ਹਾਂ ਨੂੰ ਕੰਪਾਇਲ out ਕਰਦੇ ਹਨ।
OAuth
ਇਸ ਭਾਗ ਦਾ ਲਿੰਕਸਾਈਨ-ਇਨ PKCE ਨਾਲ authorization-code ਪ੍ਰਵਾਹ ਹੈ, ਜਨਤਕ ਕਲਾਇੰਟ ਵਜੋਂ। ਡੈਸਕਟਾਪ ਉੱਤੇ ਮੁੜ-ਦਿਸ਼ਾ ਇੱਕ ਵਾਪਸੀ-ਸੱਦਾ ਲਈ ਸਥਾਨਕ port ਨਾਲ ਬੰਨੇ loopback server ਉੱਤੇ ਆਉਂਦਾ ਹੈ; ਮੋਬਾਈਲ ਉੱਤੇ app ਇਸਦੀ ਥਾਂ custom-ਯੋਜਨਾ ਮੁੜ-ਦਿਸ਼ਾ ਫੜਦਾ ਹੈ। bae ਕੰਮ ਲਈ ਦਾਤੇ ਵੱਲੋਂ ਦਿੱਤਾ ਸਭ ਤੋਂ ਤੰਗ ਹੱਦ ਮੰਗਦਾ ਹੈ, Google Drive ਉੱਤੇ ਇਹ ਸਿਰਫ਼ app ਵੱਲੋਂ ਆਪ ਬਣਾਈਆਂ ਫਾਈਲਾਂ ਦੀ ਪਹੁੰਚ ਹੈ। ਟੋਕਨ OS keyring ਵਿੱਚ ਰੱਖੇ ਜਾਂਦੇ ਹਨ, ਦਾਤੇ ਦੇ ਤਾਜ਼ਾ grant ਨਾਲ ਤਾਜ਼ੇ ਹੁੰਦੇ ਹਨ, ਅਤੇ rejected ਤਾਜ਼ਾ silent retry ਚੱਕਰ ਦੀ ਥਾਂ ਮੁੜ-ਜੋੜ ਪੁੱਛਗਿੱਛ ਵਜੋਂ ਦਿਖਦਾ ਹੈ।
CloudKit ਨੂੰ ਕੋਈ ਪ੍ਰਵਾਹ ਨਹੀਂ ਚਾਹੀਦਾ: app ਵਿੱਚ ਲਾਗੂ ਕੀਤਾ ਅਤੇ core ਨੂੰ ਦਿੱਤਾ platform ਦਾ CloudKit driver signed-in Apple ID ਵਜੋਂ ਕੰਮ ਕਰਦਾ ਹੈ।
ਘਰ ਦੀ ਬਣਤਰ
ਇਸ ਭਾਗ ਦਾ ਲਿੰਕਘਰ ਦੇ ਅੰਦਰ, coven ਹਰ-ਯੰਤਰ ਬਦਲਾਅ-ਸਮੂਹ ਧਾਰਾਵਾਂ, ਸਨੈਪਸ਼ਾਟ ਪੀੜ੍ਹੀਆਂ, ਮੈਂਬਰਤਾ ਰਿਕਾਰਡ, ਅਤੇ ਬਲੌਬ ਨਾਮ-ਥਾਵਾਂ ਰੱਖਦਾ ਹੈ। bae ਤਿੰਨ ਬਲੌਬ ਨਾਮ-ਥਾਵਾਂ ਦਿੰਦਾ ਹੈ: release_files, covers, ਅਤੇ artist_images।
ਵਸਤੂਆਂ ਦੀ ਕੁੰਜੀ ਘਰ ਦੇ ਭੰਡਾਰਣ ਰੂਪ ਉੱਤੇ ਨਿਰਭਰ ਕਰਦੀ ਹੈ, ਜੋ ਬਣਾਉਣ ਵੇਲੇ ਨਿਸ਼ਚਿਤ ਹੁੰਦਾ ਹੈ:
- Opaque: ਵਸਤੂਆਂ ਇਨਕ੍ਰਿਪਟ ਹੁੰਦੀਆਂ ਹਨ ਅਤੇ ਸਮੱਗਰੀ-ਕੱਢਿਆ ਕੁੰਜੀਆਂ ਹੇਠ ਰੱਖੀਆਂ ਜਾਂਦੀਆਂ ਹਨ ਜੋ ਕੁਝ ਨਹੀਂ ਦੱਸਦੀਆਂ। ਇਹ ਕ੍ਰਿਪਟੋਗ੍ਰਾਫੀ ਉੱਤੇ ਪੂਰਾ ਭਰੋਸਾ ਕਰਨ ਵਾਲਾ ਰੂਪ ਹੈ; ਇਨਕ੍ਰਿਪਸ਼ਨ ਵੇਖੋ।
- Browsable: ਵਸਤੂਆਂ ਚੜ੍ਹਾਉਣਾ time ਉੱਤੇ ਹਰ ਬਲੌਬ ਲਈ ਦਰਜ ਪੜ੍ਹਨਯੋਗ ਮਾਰਗ ਉੱਤੇ ਸਧਾਰਨ ਲਿਖਤ ਹਨ:
release_files/{artist}/{album}/{filename},covers/{album}/{release}/cover.{ext},artist_images/{artist}/artist.{ext}। ਬਕੇਟ ਵਰਤਣਯੋਗ ਫਾਈਲ tree ਵਜੋਂ ਵੀ ਕੰਮ ਕਰਦਾ ਹੈ; ਲੈਣ-ਦੇਣ ਇਹ ਹੈ ਕਿ ਨਾ encryption ਹੈ ਨਾ ਮੈਂਬਰਤਾ, ਇਸ ਲਈ browsable homes ਹੋਰ ਲੋਕਾਂ ਨਾਲ ਸਾਂਝੇ ਨਹੀਂ ਕੀਤੇ ਜਾ ਸਕਦੇ।
ਅਸਲ ਨੈੱਟਵਰਕਾਂ ਹੇਠ ਵਰਤਾਅ
ਇਸ ਭਾਗ ਦਾ ਲਿੰਕਸੁਣਾਈ ਲਈ ਪੜ੍ਹਾਈ ਹੱਦਬੱਧ ਹੁੰਦੀ ਹੈ: ਸੁਣਾਉਣ ਵਾਲਾ ਪੂਰੀਆਂ ਫਾਈਲਾਂ ਦੀ ਥਾਂ ਲੋੜੀਂਦੇ ਬਾਈਟ windows ਧਾਰਾ ਕਰਦਾ ਹੈ। ਜਿੱਥੇ ਦਾਤਾ ਸਹਾਰਦਾ ਹੈ ਉੱਥੇ size ਹੱਦ ਤੋਂ ਵੱਧ ਚੜ੍ਹਾਉਣ ਬਹੁ-ਹਿੱਸਾ ਹੁੰਦੇ ਹਨ। ਦਰ limiting ਅਤੇ ਤਤਕਾਲੀ ਦਾਤਾ ਗਲਤੀਆਂ exponential backoff ਨਾਲ retry ਹੁੰਦੀਆਂ ਹਨ, ਦਾਤੇ ਵੱਲੋਂ ਮਿਲੇ retry-after ਦਾ ਮਾਣ ਰੱਖਦੀਆਂ; expired OAuth ਟੋਕਨ ਥਾਂ ਉੱਤੇ ਤਾਜ਼ਾ ਹੁੰਦੇ ਹਨ। ਸਮਕਾਲੀਕਰਨ ਬਾਹਰ-ਡੱਬਾ restarts ਤੋਂ ਬਚਦਾ ਹੈ: app ਛੱਡਣ ਨਾਲ ਰੁਕਿਆ ਚੜ੍ਹਾਉਣਾ ਮੁੜ ਸ਼ੁਰੂ ਹੁੰਦਾ ਹੈ, ਸ਼ੁਰੂ ਤੋਂ ਨਹੀਂ।