AMcoder - javascript, python, java, html, php, sql

Celery rpc vs amqp արդյունք backend

Ինչպե՞ս է rpc արդյունքի հետնամասը տարբերվում amqp հետնամասից: Ես տեսնում եմ փոփոխության օրագրում, որ այն փոխարինեց այն, բայց չնայած այն գրված է որպես արձանագրություն (://-ով), հիմքում ընկած արձանագրությունը դեռևս amqp է, ճի՞շտ է:

Օրինակ, result_backend = 'rpc://' vs result_backend = 'amqp://': Եթե ​​ես օգտագործում եմ rpc-ը որպես հետին պլան, արդյոք այն նաև օգտագործում է SSL, երբ broker_use_ssl դրոշը սահմանված է true:

31.08.2017

  • նեխուրի վերաբերյալ փաստաթղթերը պարզ չեն: Հիշում եմ, ես հանդիպեցի ինչ-որ տեղ, որտեղ խոսվում է amqp-ի որպես հետին պլան օգտագործելու մասին, կարող է ներկայացնել կատարողականի գերավճար: Այլևս չեմ հիշում հղումը։ Ես ավելացնում եմ պարգև՝ հուսալով, որ ինսայդերական գիտելիքներ ունեցող մեկը կարող է բացատրել rpc-ի և amqp-ի միջև տարբերությունը և ինչպես ընտրել դրանցից: 21.02.2018

Պատասխանները:


1

Դիտարկենք մի սցենար, որտեղ 4 հաճախորդ պետք է հերթագրի 100-ական առաջադրանք:

amqp backend-ի դեպքում այն ​​կստեղծի 400 եզակի հերթեր և կպահի արդյունքները այդ հերթերում:

rpc backend-ի դեպքում այն ​​կստեղծի ընդամենը 4 հերթ (1 յուրաքանչյուր հաճախորդի համար) և կպահի 100 արդյունք յուրաքանչյուր հերթում, ինչը հանգեցնում է կատարողականի զգալի բարելավմանը, քանի որ յուրաքանչյուր առաջադրանքի համար հերթեր ստեղծելու համար ծախսեր չկան:

Այդ իսկ պատճառով, amqp որպես հետին պլան հնացած է և ամբողջությամբ կհեռացվի հաջորդ թողարկումում:

rpc backend-ը օգտագործում է նույն norefer մեխանիզմը:: Եթե ​​սահմանեք broker_use_sslTrue, ապա այն կօգտագործի SSL:

22.02.2018
  • Դեմ ե՞ք մանրամասնել, թե ինչ է SSL-ը նեխուրի համատեքստում: Արդյո՞ք դա նույնն է, ինչ Secure Sockets Layer-ը: Ինչպե՞ս պետք է որոշենք՝ միացնե՞լ broker_use_ssl-ը, թե՞ ոչ: 22.02.2018
  • @CheokYanCheng Այո, նույնն է։ Միացնելը, թե ոչ, կախված է նրանից, թե ինչպես են ձեր հաճախորդը և սերվերը միանում, արդյոք փոխանցվող տվյալները գաղտնի են, թե ոչ, կամ եթե դուք պետք է հետևեք որոշ ստանդարտների, ինչպիսիք են HIPAA և այլն: 23.02.2018
  • Կարո՞ղ եք բացատրել, թե արդյոք դրանց արդյունքի համառ վարքագիծը տարբեր է: Ես հանդիպեցի նույն խնդրին, ինչպիսին է stackoverflow.com/questions/34541282/ , որտեղ ես չեմ կարող միացնել result_persistent-ը՝ օգտագործելով rpc: 05.07.2018
  • @JialinZou Սխա՞լ եք ստանում այն ​​միացնելիս: Եթե ​​result_persistent-ը միացված է, այն կպահպանվի docs.celeryproject: org/en/last/userguide/ 06.07.2018
  • @ChillarAnand Սխալ չկա, ես կարող եմ միացնել result_persistent-ը և amqp-ում, և rpc-ում: Տարբերությունն այն է, որ երբ ես օգտագործում եմ amqp, ես կարող եմ արդյունք ստանալ Python-ի մեկ այլ թարգմանչի միջոցով AsyncResult (task_id) միջոցով: Այնուամենայնիվ, օգտագործելով rpc, սա աշխատում է միայն նույն թարգմանչի ներսում: Վստահ չեմ, որ սա վրիպակ է կամ նախատեսված է: «Սելերի» փաստաթղթերում պատասխան չգտա: 06.07.2018
  • Արդյո՞ք ակորդները կաջակցվեն RPC backend-ի կողմից: Թվում էր, թե այն չունի առանձնահատկություններ, ես նաև դժվարանում էի վերադարձնել շղթայված առաջադրանքների կարգավիճակը RPC backend-ով: 29.09.2020
  • Նոր նյութեր

    Օգտագործելով Fetch Vs Axios.Js-ը՝ HTTP հարցումներ կատարելու համար
    JavaScript-ը կարող է ցանցային հարցումներ ուղարկել սերվեր և բեռնել նոր տեղեկատվություն, երբ դա անհրաժեշտ լինի: Օրինակ, մենք կարող ենք օգտագործել ցանցային հարցումը պատվեր ներկայացնելու,..

    Տիրապետել հանգստության արվեստին. մշակողի ուղեցույց՝ ճնշման տակ ծաղկելու համար
    Տիրապետել հանգստության արվեստին. մշակողի ուղեցույց՝ ճնշման տակ ծաղկելու համար Ինչպե՞ս հանգստացնել ձեր միտքը և աշխատեցնել ձեր պրոցեսորը: Ինչպես մնալ հանգիստ և զարգանալ ճնշման տակ...

    Մեքենայի ուսուցում բանկային և ֆինանսների ոլորտում
    Բարդ, խելացի անվտանգության համակարգերը և հաճախորդների սպասարկման պարզեցված ծառայությունները բիզնեսի հաջողության բանալին են: Ֆինանսական հաստատությունները, մասնավորապես, պետք է առաջ մնան կորի..

    Ես AI-ին հարցրի կյանքի իմաստը, այն ինչ ասում էր, ցնցող էր:
    Այն պահից ի վեր, երբ ես իմացա Արհեստական ​​ինտելեկտի մասին, ես հիացած էի այն բանով, թե ինչպես է այն կարողանում հասկանալ մարդկային նորմալ տեքստը, և այն կարող է առաջացնել իր սեփական արձագանքը դրա..

    Ինչպես սովորել կոդավորումը Python-ում վագրի պես:
    Սովորելու համար ծրագրավորման նոր լեզու ընտրելը բարդ է: Անկախ նրանից, թե դուք սկսնակ եք, թե առաջադեմ, դա օգնում է իմանալ, թե ինչ թեմաներ պետք է սովորել: Ծրագրավորման լեզվի հիմունքները, դրա..

    C++-ի օրական բիթ(ե) | Ամենաերկար պալինդրոմային ենթաշարը
    C++ #198-ի ամենօրյա բիթ(ե), Ընդհանուր հարցազրույցի խնդիր. Ամենաերկար պալինդրոմային ենթատող: Այսօր մենք կանդրադառնանք հարցազրույցի ընդհանուր խնդրին. Ամենաերկար palindromic substring...

    Kydavra ICAReducer՝ ձեր տվյալների ծավալայինությունը նվազեցնելու համար
    Ի՞նչ է ICAReducer-ը: ICAReducer-ն աշխատում է հետևյալ կերպ. այն նվազեցնում է նրանց միջև բարձր փոխկապակցված հատկանիշները մինչև մեկ սյունակ: Բավականին նման է PCAreducer-ին, չնայած այն..