Fframwaith gwe Pusa sy'n trosglwyddo rhesymeg pen blaen JavaScript i ochr y gweinydd

Mae fframwaith gwe Pusa wedi'i gyhoeddi gyda gweithrediad cysyniad sy'n trosglwyddo'r rhesymeg pen blaen, a weithredir yn y porwr gan ddefnyddio JavaScript, i'r ochr gefn - rheoli'r porwr a'r elfennau DOM, yn ogystal â rhesymeg busnes yn cael eu perfformio ar y pen-ôl. Mae'r cod JavaScript a weithredir ar ochr y porwr yn cael ei ddisodli gan haen gyffredinol sy'n galw trinwyr sydd wedi'u lleoli ar ochr y pen ôl. Nid oes angen datblygu gan ddefnyddio JavaScript ar gyfer y pen blaen. Mae gweithrediad cyfeirnod Pusa wedi'i ysgrifennu yn PHP ac mae wedi'i drwyddedu o dan y GPLv3. Yn ogystal â PHP, gellir gweithredu'r dechnoleg mewn unrhyw iaith arall, gan gynnwys JavaScript/Node.js, Java, Python, Go a Ruby.

Mae Pusa yn diffinio protocol cyfnewid yn seiliedig ar set finimalaidd o orchmynion. Pan fydd y dudalen yn llwytho, mae'r porwr yn llwytho'r cynnwys DOM sylfaenol a chraidd JavaScript Pusa-Front. Mae Pusa-Front yn anfon digwyddiadau porwr (fel clicio, niwlio, ffocws a gwasgfa bysell) a gofyn am baramedrau (yr elfen a achosodd y digwyddiad, ei briodoleddau, URL, ac ati) i'r gweinyddwr gweinydd Pusa-Back gan ddefnyddio ceisiadau Ajax. Yn seiliedig ar y data a dderbyniwyd, mae Pusa-Back yn pennu'r rheolydd, yn gweithredu'r llwyth tâl ac yn cynhyrchu set ymateb o orchmynion. Ar ôl derbyn yr ymateb cais, mae Pusa-Front yn gweithredu gorchmynion, gan newid cynnwys y DOM ac amgylchedd y porwr.

Mae cyflwr y blaen yn cael ei gynhyrchu ond heb ei reoli gan y backend, sy'n gwneud datblygiad Pusa yn debyg i god ar gyfer cerdyn fideo neu Canvas, lle nad yw canlyniad gweithredu yn cael ei reoli gan y datblygwr. I greu cymwysiadau rhyngweithiol yn seiliedig ar Canvas ac onmousemove, mae modd lawrlwytho a defnyddio sgriptiau JavaScript ychwanegol ar ochr y cleient. Ymhlith anfanteision y dull, mae yna hefyd drosglwyddo rhan o'r llwyth o'r blaen i'r backend a chynnydd yn amlder cyfnewid data gyda'r gweinydd.

Ymhlith y manteision mae: dileu'r angen am gyfranogiad datblygwyr pen blaen JavaScript, cod cleient sefydlog a chryno (11kb), anhygyrchedd y prif god o'r pen blaen, dim angen cyfresoli REST ac offer fel gRPC, gan ddileu'r problemau cydlynu llwybro ceisiadau rhwng y pen blaen a'r pen ôl.

Ffynhonnell: opennet.ru

Ychwanegu sylw