Architecture Decision Record

Active theme: Light

← Eisimpleirean de chlàran co-dhùnaidh

Clàr co-dhùnaidh ailtireachd: API a chleachdadh JSON an aghaidh gRPC

Staid

Air a ghabhail

Co-theacsa

Tha sinn a’ dealbhadh API airson seirbheis ùr a thèid a chleachdadh le grunn theachdaichean. Tha sinn air a bhith a’ beachdachadh air dà roghainn airson an API a chur an gnìomh: JSON thar HTTP no gRPC.

Tha JSON thar HTTP na dhòigh-obrach air a bheil mòran eòlach airson APIan a thogail, agus tha taic ann bho mhòran chànanan prògramachaidh is fhrèamaichean. Tha an dòigh-obrach seo sìmplidh, aotrom, agus furasta a thuigsinn, a tha ga dhèanamh na roghainn mhath airson mòran phròiseactan. Ach, faodaidh e a bhith nas lugha èifeachdach na roghainnean eile, gu sònraichte a thaobh làimhseachadh meudan mòra dàta.

Tha gRPC, air an làimh eile, na theicneolas nas ùire a tha a’ tabhann dòigh nas èifeachdaiche air APIan a thogail. Bidh e a’ cleachdadh sreath-sgrìobhaidh dhàibhnearach gus dàta a ghluasad, a dh’fhaodas a bhith nas luaithe agus nas dlùithe na bhith a’ cleachdadh JSON. Bidh gRPC cuideachd a’ toirt taic do shruthadh dà-stiùireach, a tha ga dhèanamh na roghainn mhath airson aplacaidean fìor-ùine.

Co-dhùnadh

Às dèidh beachdachadh air buannachdan is eas-bhuannachdan an dà roghainn, chuir sinn romhainn gRPC a chleachdadh airson ar API. Ged a tha JSON thar HTTP na roghainn nas sìmplidh, tha sinn a’ creidsinn gun toir gRPC fuasgladh nas èifeachdaiche agus nas so-sgèilidh dhan t-seirbheis againn. Tha sinn cuideachd an dùil gun làimhsich ar API tòrr dàta, agus bidh sreath-sgrìobhadh dhàibhnearach gRPC nas èifeachdaiche airson a’ chùis chleachdaidh seo.

A bharrachd air sin, tha sinn a’ creidsinn gum bi taic gRPC airson sruthadh dà-stiùireach buannachdail airson aplacaidean fìor-ùine a dh’fhaodadh sinn a leasachadh san àm ri teachd.

Builean

Le bhith a’ taghadh gRPC, feumaidh sinn seata eadar-dhealaichte de dh’innealan is leabharlannan a chleachdadh gus ar API a thogail an coimeas ri bhith a’ cleachdadh JSON thar HTTP. Dh’fhaodadh seo barrachd ùine is oidhirp a dhìth gus na teicneolasan sin ionnsachadh is a chur an gnìomh. A bharrachd air sin, feumaidh teachdaichean a tha airson ar API a chleachdadh leabharlannan co-chòrdail ri gRPC a chleachdadh, is dòcha nach eil taic cho farsaing aca ri leabharlannan JSON thar HTTP.

Ach, tha sinn a’ creidsinn gu bheil buannachdan a bhith a’ cleachdadh gRPC nas motha na na h-eas-bhuannachdan comasach sin, agus tha sinn misneachail gun lean an co-dhùnadh seo gu API nas èifeachdaiche is nas so-sgèilidh.