Pusa web framework inoendesa JavaScript yekumberi-yekupedzisira logic kune server side

Iyo Pusa web framework yakadhindwa nekushandiswa kweiyo pfungwa inotamisa yekumberi-yekupedzisira logic, inoitwa mubrowser uchishandisa JavaScript, kudivi rekumashure-kumashure - kutonga bhurawuza uye zvinhu zveDOM, pamwe nehunyanzvi hwebhizinesi hunoitwa pa. kumashure-kumagumo. Iyo JavaScript code yakaitwa padivi rebrowser inotsiviwa neuniversal layer inodaidza vanobata vari kudivi rekumashure. Iko hakuna chikonzero chekuvandudza uchishandisa JavaScript yekumberi kumagumo. Iyo Pusa referensi yekushandisa yakanyorwa muPHP uye ine rezinesi pasi peGPLv3. Pamusoro pePP, tekinoroji inogona kuitwa mune chero mumwe mutauro, kusanganisira JavaScript/Node.js, Java, Python, Go uye Ruby.

Pusa inotsanangura shanduko yeprotocol yakavakirwa pane minimalistic seti yemirairo. Kana iyo peji ichiremerwa, bhurawuza rinotakura zviri pasi peDOM zvemukati uye Pusa-Front's JavaScript musimboti. Pusa-Front inotumira zviitiko zvebrowser (sekudzvanya, blur, kutarisa uye keypress) uye kukumbira paramita (chinhu chakakonzera chiitiko, hunhu hwayo, URL, nezvimwewo) kune Pusa-Back server inobata uchishandisa Ajax zvikumbiro. Kubva pane yakagamuchirwa data, Pusa-Back inosarudza mutongi, inobhadhara mubhadharo uye inogadzira seti yekupindura yemirairo. Mushure mekugamuchira mhinduro yekukumbira, Pusa-Front inoita mirairo, ichichinja zviri mukati meDOM uye nharaunda yebrowser.

Mamiriro epamberi anogadzirwa asi kwete kudzorwa neiyo backend, iyo inoita kuti budiriro yePusa ifanane nekodhi yevhidhiyo kadhi kana Canvas, uko mhedzisiro yekuuraya isingadzorwe nemugadziri. Kugadzira anodyidzana maapplication akavakirwa paCanvas uye onmousemove, zvinokwanisika kudhawunirodha uye kushandisa mamwe JavaScript zvinyorwa padivi revatengi. Pakati pezvipingamupinyi zveiyo nzira, kunewo kuendeswa kwechikamu chemutoro kubva kumberi kusvika kumashure uye kuwedzera kwehuwandu hwekutsinhanisa data nevhavha.

Pakati pezvakanakira ndezvi: kubvisa kudiwa kwekutora chikamu kweJavaScript yekumberi-yekupedzisira vanogadzira, yakagadzikana uye compact mutengi kodhi (11kb), kusasvikika kweiyo main kodhi kubva kumberi-kumagumo, hapana chikonzero cheREST serialization uye zvishandiso senge gRPC, kubvisa iyo matambudziko ekubatanidza kukumbira nzira pakati pemberi-kumagumo uye kumashure-kumagumo.

Source: opennet.ru

Voeg