Durnuklylyk önüm prinsipidir, soňky pikir däl. AiHummer
SemVer-e eýerýär, öňe-howpsuz maglumatlar bazasy migrasiýalaryny awtomatiki uygulaýar we
CDN-den öz-özüni-täzeläp bilýär — şeýdip täzelenişler howply däl-de adatydyr.
Wersiýalaşdyrmak (SemVer)
Çykarylyşlar Semantiki Wersiýalaşdyrma eýerýär. Wersiýa /healthz we
aihummer version tarapyndan habar berilýär, şeýdip täzelenişden öň we soň näme işleýändigini
hemişe takyk tassyklap bilersiňiz.
Migrasiýalar öňe-howpsuz we awtomatiki
Başlanyşda geýtweý garaşýan maglumatlar bazasy migrasiýalaryny awtomatiki uygulaýar. Iki
häsiýet muny howpsuz saklaýar:
Öňe-howpsuz. Migrasiýalar şeýle ýazylýar welin täze ikilik onuň migrasiýa edýän
shemasyna garşy işleýär, bu awto-uygulamany we togalanýan täzelenişleri howpsuz edýär.
Advisory gulp arkaly ýeke-uygulaýjy. Migrasiýalar PostgreSQL
advisory gulpunyň astynda işleýär, şeýdip birnäçe geýtweý bir wagtda başlanда diňe biri olary
uygulaýar we galanlary garaşýar — hiç haçan iki gezek migrasiýa däl.
[!NOTE]
Migrasiýalar hemişe eýe maglumatlar bazasy poolunda işleýär. Çäkli RLS rolу
(AIHUMMER_DB_APP_URL) trafige hyzmat etmek üçin, shema üýtgeşmeleri üçin däl.
CDN-den öz-özüni-täzeleniş
Geýtweý özüni çykarylyş CDN-den täzeläp bilýär. Bu özüni-alyp-baryş üç
gurşaw üýtgeýjisi bilen dolandyrylýar:
Üýtgeýji
Maksat
AIHUMMER_AUTO_UPDATE
off | check | apply — öçürilen, diňe-habar-ber ýa-da awto-uygula
Täzelenişler kanalyň CDN-däki latest.json-y arkaly tapylýar. Şeýle hem
täzelenişleri CLI bilen el bilen sürüp bilersiňiz:
aihummer update --check # report whether a newer version is availableaihummer update # download and apply the update
# gateway.env — notify-only on the stable channelAIHUMMER_AUTO_UPDATE=checkAIHUMMER_UPDATE_CHANNEL=stable
[!TIP]
Täze çykarylyşlar barada habarly bolmak üçin AIHUMMER_AUTO_UPDATE=check bilen başlaň we
gözegçiliksiz çykaryşlar üçin kanala ynanyňyzdan soň apply-a geçiň.
Nol-näsazlykly çykaryşlar
AiHummer näsazlyksyz täzelenmek üçin gurlandyr:
Proksiniň aňyrsynda 2+ geýtweý işlediň. Olary birin-birin togalaň; taýýarlyk probasy
(/readyz) gaýtadan başlaýan düwüni hyzmat edýänçä rotasiýadan saklaýar.
Meýilleşdiriji ýeke-lideri. Fon meýilleşdirme PostgreSQL advisory gulpы arkaly ýeke lideri
saýlaýar, şeýdip birnäçe geýtweý işletmek meýilleşdirilen işi gaýtalamaýar.
Eltiş idempotentdir. Kepillendirilen-eltiş outboxy goşmaça idempotentlik açarlary
jogabyň gaýtadan başlamada hiç haçan iki gezek iberilmeýändigini aňladýar, bu floty togalmagy howpsuz edýär.
Durnuklylyk önüm prinsipidir, soňky pikir däl. AiHummer
**SemVer**-e eýerýär, **öňe-howpsuz maglumatlar bazasy migrasiýalaryny awtomatiki** uygulaýar we
CDN-den **öz-özüni-täzeläp** bilýär — şeýdip täzelenişler howply däl-de adatydyr.
## Wersiýalaşdyrmak (SemVer)
Çykarylyşlar Semantiki Wersiýalaşdyrma eýerýär. Wersiýa `/healthz` we
`aihummer version` tarapyndan habar berilýär, şeýdip täzelenişden öň we soň näme işleýändigini
hemişe takyk tassyklap bilersiňiz.
## Migrasiýalar öňe-howpsuz we awtomatiki
Başlanyşda geýtweý garaşýan maglumatlar bazasy migrasiýalaryny awtomatiki uygulaýar. Iki
häsiýet muny howpsuz saklaýar:
- **Öňe-howpsuz.** Migrasiýalar şeýle ýazylýar welin täze ikilik onuň migrasiýa edýän
shemasyna garşy işleýär, bu awto-uygulamany we togalanýan täzelenişleri howpsuz edýär.
- **Advisory gulp arkaly ýeke-uygulaýjy.** Migrasiýalar **PostgreSQL
advisory gulpunyň** astynda işleýär, şeýdip birnäçe geýtweý bir wagtda başlanда diňe biri olary
uygulaýar we galanlary garaşýar — hiç haçan iki gezek migrasiýa däl.
> [!NOTE]
> Migrasiýalar hemişe eýe maglumatlar bazasy poolunda işleýär. Çäkli RLS rolу
> (`AIHUMMER_DB_APP_URL`) trafige hyzmat etmek üçin, shema üýtgeşmeleri üçin däl.
## CDN-den öz-özüni-täzeleniş
Geýtweý özüni çykarylyş CDN-den täzeläp bilýär. Bu özüni-alyp-baryş üç
gurşaw üýtgeýjisi bilen dolandyrylýar:
| Üýtgeýji | Maksat |
|---|---|
| `AIHUMMER_AUTO_UPDATE` | `off` \| `check` \| `apply` — öçürilen, diňe-habar-ber ýa-da awto-uygula |
| `AIHUMMER_UPDATE_CHANNEL` | Yzarlanýan çykarylyş kanaly (mysal üçin stable / alfa / beta / dev) |
| `AIHUMMER_DOWNLOAD_BASE_URL` | Täzelenişiň çekilýän esas URL-i |
Täzelenişler kanalyň CDN-däki `latest.json`-y arkaly tapylýar. Şeýle hem
täzelenişleri CLI bilen el bilen sürüp bilersiňiz:
```bash
aihummer update --check # report whether a newer version is available
aihummer update # download and apply the update
```
```ini
# gateway.env — notify-only on the stable channel
AIHUMMER_AUTO_UPDATE=check
AIHUMMER_UPDATE_CHANNEL=stable
```
> [!TIP]
> Täze çykarylyşlar barada habarly bolmak üçin `AIHUMMER_AUTO_UPDATE=check` bilen başlaň we
> gözegçiliksiz çykaryşlar üçin kanala ynanyňyzdan soň `apply`-a geçiň.
## Nol-näsazlykly çykaryşlar
AiHummer näsazlyksyz täzelenmek üçin gurlandyr:
- **Proksiniň aňyrsynda 2+ geýtweý işlediň.** Olary birin-birin togalaň; taýýarlyk probasy
(`/readyz`) gaýtadan başlaýan düwüni hyzmat edýänçä rotasiýadan saklaýar.
- **Meýilleşdiriji ýeke-lideri.** Fon meýilleşdirme PostgreSQL advisory gulpы arkaly ýeke lideri
saýlaýar, şeýdip birnäçe geýtweý işletmek meýilleşdirilen işi gaýtalamaýar.
- **Eltiş idempotentdir.** Kepillendirilen-eltiş outboxy goşmaça idempotentlik açarlary
jogabyň gaýtadan başlamada hiç haçan iki gezek iberilmeýändigini aňladýar, bu floty togalmagy howpsuz edýär.
## Indiki nirä
- Togalanýan gaýtadan başlamany germewleýän probalar:
[systemd & saglyk barlaglary](/tk/v1.0/operations/systemd-health).
- Uly täzelenişden öň ätiýaçlandyryň:
[Ätiýaçlyk nusgalar we betbagtçylykdan dikeldiş](/tk/v1.0/operations/backups-dr).
- Çykaryşa serediň:
[Gözegçilik](/tk/v1.0/operations/observability).